- Removed compliance_status slot and replaced it with has_or_had_status. - Updated has_or_had_status to use ComplianceStatus for structured representation. - Adjusted examples to reflect new structure for compliance status. - Updated documentation to indicate migration and provide details on the ComplianceStatus class.
166 lines
6 KiB
YAML
166 lines
6 KiB
YAML
# Timestamp class
|
|
# A point in time with optional precision and calendar metadata
|
|
#
|
|
# Generation date: 2026-01-15
|
|
# Rule compliance: 0 (LinkML single source of truth), 38 (slot centralization), 53 (slot_fixes.yaml)
|
|
#
|
|
# This class supports 6 slot migrations per slot_fixes.yaml:
|
|
# - valid_to_geo
|
|
# - valid_to
|
|
# - valid_from_geo
|
|
# - valid_from
|
|
# - updated_at
|
|
# - unesco_inscription_year
|
|
#
|
|
# Ontological basis: OWL Time Instant (time:Instant)
|
|
|
|
id: https://nde.nl/ontology/hc/class/Timestamp
|
|
name: timestamp_class
|
|
title: Timestamp Class
|
|
|
|
prefixes:
|
|
linkml: https://w3id.org/linkml/
|
|
hc: https://nde.nl/ontology/hc/
|
|
time: http://www.w3.org/2006/time#
|
|
xsd: http://www.w3.org/2001/XMLSchema#
|
|
crm: http://www.cidoc-crm.org/cidoc-crm/
|
|
schema: http://schema.org/
|
|
|
|
default_prefix: hc
|
|
|
|
imports:
|
|
- linkml:types
|
|
- ../metadata
|
|
- ../slots/has_or_had_timestamp # was: timestamp_value - migrated per Rule 53
|
|
- ../slots/has_or_had_precision # was: timestamp_precision - migrated per Rule 53
|
|
# MIGRATED 2026-01-22: calendar_system → complies_or_complied_with + CalendarSystem
|
|
- ../slots/complies_or_complied_with
|
|
- ./CalendarSystem
|
|
- ../slots/specificity_annotation
|
|
- ../slots/has_or_had_score # was: template_specificity - migrated per Rule 53 (2026-01-17)
|
|
- ./SpecificityAnnotation
|
|
- ./TemplateSpecificityScore # was: TemplateSpecificityScores - migrated per Rule 53 (2026-01-17)
|
|
|
|
- ./TemplateSpecificityType
|
|
|
|
- ./TemplateSpecificityTypes
|
|
|
|
classes:
|
|
Timestamp:
|
|
class_uri: time:Instant
|
|
description: |
|
|
A point in time with optional precision and calendar metadata.
|
|
|
|
**Purpose**:
|
|
Timestamp provides a reusable class for representing temporal instants
|
|
with explicit precision indicators. This supports EDTF-style partial
|
|
dates (year-only, year-month, full date, datetime) and calendar system
|
|
annotation for non-Gregorian dates.
|
|
|
|
**Ontological Alignment**:
|
|
- **Primary**: `time:Instant` - OWL Time instant
|
|
- **Close**: `crm:E61_Time_Primitive` - CIDOC-CRM time primitive
|
|
- **Related**: `xsd:dateTime` - XML Schema dateTime
|
|
|
|
**Use Cases**:
|
|
- Beginning/ending of time spans (TimeSpan.begin_of_the_begin, etc.)
|
|
- Validity dates (valid_from, valid_to)
|
|
- Update timestamps (updated_at, created_at)
|
|
- Historical dates with varying precision
|
|
|
|
**Precision Levels**:
|
|
- year: "1995" (EDTF: "1995")
|
|
- month: "1995-06" (EDTF: "1995-06")
|
|
- day: "1995-06-15" (EDTF: "1995-06-15")
|
|
- datetime: "1995-06-15T10:30:00" (full precision)
|
|
|
|
**Replaces** (per slot_fixes.yaml):
|
|
- `valid_to_geo` → TimeSpan.end_of_the_end: Timestamp
|
|
- `valid_to` → TimeSpan.end_of_the_end: Timestamp
|
|
- `valid_from_geo` → TimeSpan.begin_of_the_begin: Timestamp
|
|
- `valid_from` → TimeSpan.begin_of_the_begin: Timestamp
|
|
- `updated_at` → was_last_updated_at: TimeSpan
|
|
- `unesco_inscription_year` → TimeSpan.begin_of_the_begin: Timestamp
|
|
|
|
exact_mappings:
|
|
- time:Instant
|
|
|
|
close_mappings:
|
|
- crm:E61_Time_Primitive
|
|
|
|
related_mappings:
|
|
- xsd:dateTime
|
|
- schema:DateTime
|
|
|
|
slots:
|
|
- has_or_had_timestamp # was: timestamp_value - migrated per Rule 53
|
|
- has_or_had_precision # was: timestamp_precision - migrated per Rule 53
|
|
- complies_or_complied_with # was: calendar_system - migrated 2026-01-22
|
|
- specificity_annotation
|
|
- has_or_had_score # was: template_specificity - migrated per Rule 53 (2026-01-17)
|
|
|
|
slot_usage:
|
|
has_or_had_timestamp: # was: timestamp_value - migrated per Rule 53
|
|
description: |
|
|
The timestamp value as ISO 8601 string.
|
|
Precision determined by string format:
|
|
- "1995" = year precision
|
|
- "1995-06" = month precision
|
|
- "1995-06-15" = day precision
|
|
- "1995-06-15T10:30:00Z" = full datetime
|
|
range: string
|
|
required: true
|
|
pattern: "^-?\\d{4}(-\\d{2})?(-\\d{2})?(T\\d{2}:\\d{2}(:\\d{2})?(\\.\\d+)?(Z|[+-]\\d{2}:\\d{2})?)?$"
|
|
has_or_had_precision: # was: timestamp_precision - migrated per Rule 53
|
|
description: |
|
|
Explicit precision level. Auto-derived from timestamp_value if not provided.
|
|
Values: year, month, day, hour, minute, second, millisecond
|
|
range: string
|
|
required: false
|
|
examples:
|
|
- value: year
|
|
- value: day
|
|
- value: second
|
|
complies_or_complied_with:
|
|
description: |
|
|
Calendar system for the timestamp. Default is Gregorian.
|
|
MIGRATED 2026-01-22: Replaces calendar_system string with CalendarSystem class.
|
|
For historical or non-Western dates, specify the calendar.
|
|
range: CalendarSystem
|
|
required: false
|
|
inlined: true
|
|
examples:
|
|
- value:
|
|
system_code: gregorian
|
|
system_name: "Gregorian Calendar"
|
|
description: Standard Gregorian calendar
|
|
- value:
|
|
system_code: julian
|
|
system_name: "Julian Calendar"
|
|
description: Julian calendar for historical dates
|
|
|
|
annotations:
|
|
custodian_types: '["*"]'
|
|
custodian_types_rationale: Generic timestamp class applicable to all types.
|
|
custodian_types_primary: null
|
|
specificity_score: 0.15
|
|
specificity_rationale: Very broadly applicable generic class for temporal points.
|
|
|
|
examples:
|
|
- value: |
|
|
has_or_had_timestamp: "1995"
|
|
has_or_had_precision: year
|
|
description: "Year-only timestamp (e.g., founding year)"
|
|
- value: |
|
|
has_or_had_timestamp: "2024-06-15"
|
|
has_or_had_precision: day
|
|
complies_or_complied_with:
|
|
system_code: gregorian
|
|
system_name: "Gregorian Calendar"
|
|
description: "Full date timestamp with calendar system"
|
|
- value: |
|
|
has_or_had_timestamp: "2024-06-15T14:30:00Z"
|
|
has_or_had_precision: second
|
|
complies_or_complied_with:
|
|
system_code: gregorian
|
|
description: "Full datetime timestamp"
|