glam/schemas/20251121/linkml/modules/classes/TimeInterval.yaml
kempersc 53c6dbc2d9 feat(schema): Migrate temporal slots and introduce new pattern classes
Major slot migrations following slot_fixes.yaml revisions:
- TimeSpan: begin_of_the_begin, begin_of_the_end, end_of_the_begin, end_of_the_end
- Quantity: has_or_had_measurement_unit with MeasureUnit class
- Description: has_or_had_description with Description class
- URL, WikiData, Timestamp, Location, Provenance pattern classes

New slots for RiC-O compliance:
- Temporal: has_or_had_time_interval, calendar_system
- Transfer: is_or_was_transferred, has_or_had_policy
- Location: starts/ends_or_started/ended_at_location
- Provenance: has_or_had_provenance_path, is_or_was_webarchived_at

Archive deprecated slots per Rule 53 workflow.
2026-01-14 20:01:55 +01:00

112 lines
3.2 KiB
YAML

# TimeInterval - A duration or interval of time
# Created per slot_fixes.yaml migration for: update_frequency, typical_approval_time, total_revenue
# Creation date: 2026-01-14
id: https://nde.nl/ontology/hc/classes/TimeInterval
name: TimeInterval
title: TimeInterval
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
time: http://www.w3.org/2006/time#
schema: http://schema.org/
xsd: http://www.w3.org/2001/XMLSchema#
imports:
- linkml:types
default_range: string
classes:
TimeInterval:
description: >-
A duration or interval of time, representing a period rather than a point.
**DISTINCTION FROM TimeSpan**:
- `TimeSpan` represents a bounded period with begin/end points (CIDOC-CRM E52)
- `TimeInterval` represents a duration/interval (e.g., "2 weeks", "quarterly")
**USE CASES**:
- Update frequency: "updated weekly"
- Approval time: "typically 2-3 business days"
- Reporting period: "annual revenue for fiscal year"
**ONTOLOGY MAPPING**:
- class_uri: time:Duration (W3C Time Ontology)
- Supports ISO 8601 duration format (P1Y, P2M, P3D, PT4H)
class_uri: time:Duration
close_mappings:
- schema:Duration
related_mappings:
- time:Interval
- time:TemporalDuration
attributes:
duration_value:
range: string
description: >-
ISO 8601 duration string (e.g., P1Y, P2M, P7D, PT24H).
P = period, Y = years, M = months, D = days, T = time separator, H = hours
duration_description:
range: string
description: >-
Human-readable description of the duration.
Examples: "weekly", "monthly", "annual", "2-3 business days"
years:
range: integer
description: Number of years in the interval.
minimum_value: 0
months:
range: integer
description: Number of months in the interval.
minimum_value: 0
days:
range: integer
description: Number of days in the interval.
minimum_value: 0
hours:
range: integer
description: Number of hours in the interval.
minimum_value: 0
minutes:
range: integer
description: Number of minutes in the interval.
minimum_value: 0
annotations:
custodian_types: '["*"]'
custodian_types_rationale: >-
Time intervals applicable to all custodian types for various purposes.
custodian_types_primary: "*"
specificity_score: 0.25
specificity_rationale: >-
Low specificity - universal temporal concept.
examples:
- value: |
TimeInterval:
duration_value: "P7D"
duration_description: "weekly"
description: A one-week interval for update frequency.
- value: |
TimeInterval:
duration_value: "P1Y"
duration_description: "annual"
description: A one-year interval for revenue reporting.
- value: |
TimeInterval:
days: 3
duration_description: "2-3 business days"
description: Typical approval time interval.