glam/schemas/20251121/linkml/modules/classes/CustodianTimelineEvent.yaml
kempersc 4319f38c05 Add archived slots for audience size, audience type, and capacity metrics
- Created new YAML files for audience size and audience type slots, defining their properties and annotations.
- Added archived capacity slots including cubic meters, linear meters, item count, and descriptions, with appropriate URIs and ranges.
- Introduced a template specificity slot for context-aware RAG filtering.
- Consolidated capacity-related slots into a unified structure, including has_or_had_capacity, capacity_type, and capacity_value, with detailed descriptions and examples.
2026-01-17 18:53:23 +01:00

229 lines
10 KiB
YAML

id: https://nde.nl/ontology/hc/class/CustodianTimelineEvent
name: CustodianTimelineEvent
title: Custodian Timeline Event Class - Organizational Change Events
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
schema: http://schema.org/
dcterms: http://purl.org/dc/terms/
prov: http://www.w3.org/ns/prov#
xsd: http://www.w3.org/2001/XMLSchema#
crm: http://www.cidoc-crm.org/cidoc-crm/
tooi: https://identifier.overheid.nl/tooi/def/ont/
imports:
- linkml:types
- ./SpecificityAnnotation
- ./TemplateSpecificityScore # was: TemplateSpecificityScores - migrated per Rule 53 (2026-01-17)
- ./TemplateSpecificityType
- ./TemplateSpecificityTypes
- ../enums/OrganizationalChangeEventTypeEnum
- ../enums/DataTierEnum
- ../enums/DatePrecisionEnum
- ../enums/TimelineExtractionMethodEnum
# REMOVED - migrated to is_or_was_approximate (Rule 53)
# - ../slots/approximate
- ../slots/is_or_was_approximate
- ./ApproximationStatus
- ../slots/has_archive_path
- ../slots/data_tier
- ../slots/date_precision
- ../slots/description
- ../slots/event_date
- ../slots/event_type
- ../slots/extraction_method
- ../slots/extraction_note
- ../slots/extraction_timestamp
- ../slots/observation_ref
- ../slots/source_url
- ../slots/specificity_annotation
- ../slots/has_or_had_score # was: template_specificity - migrated per Rule 53 (2026-01-17)
default_prefix: hc
classes:
CustodianTimelineEvent:
class_uri: prov:Entity
description: "An organizational change event for a heritage custodian.\n\n**PURPOSE**\n\nCaptures organizational change\
\ events (founding, mergers, name changes, etc.)\nas domain entities, independent of how they were discovered.\n\n**SOURCE-AGNOSTIC\
\ DESIGN**\n\nThis class models WHAT happened, not HOW we know. For source-specific\nprovenance, use observation classes:\n\
\n- `WebObservation` - For web-scraped data with XPath or API provenance\n- `CustodianObservation` - For institutional\
\ source documents\n\nThe optional `observation_ref` slot links events to their source observations\nwhen detailed provenance\
\ is needed.\n\n**DATA QUALITY**\n\nUse `data_tier` to indicate trustworthiness:\n- TIER_4_INFERRED: Initial extraction\
\ (LLM-generated, unverified)\n- TIER_3_CROWD_SOURCED: Verified against Wikipedia/Wikidata\n- TIER_2_VERIFIED: Verified\
\ against institutional website\n- TIER_1_AUTHORITATIVE: Verified against official registry\n\nUse `extraction_notes`\
\ to capture source-specific details:\n- API queries and responses\n- XPath locations in archived HTML\n- Wikidata property\
\ references\n- Manual research notes\n\n**EVENT TYPE MAPPING**\n\nEvents are classified using OrganizationalChangeEventTypeEnum:\n\
- FOUNDING: Institution creation (opgericht, gesticht)\n- MERGER: Multiple institutions combining (fusie, samenvoeging)\n\
- DISSOLUTION: Institution closure (opgeheven, gesloten)\n- RENAMING: Name change only (hernoemd, naamswijziging)\n\
- TRANSFER: Physical relocation (verhuisd, verplaatst)\n- EXPANSION: Absorbing other units (uitgebreid, geabsorbeerd)\n\
- SPLIT: Division into multiple units (opgesplitst)\n- SPIN_OFF: Parts becoming independent (afgesplitst)\n- REDUCTION:\
\ Scope decrease (ingekrompen)\n- REORGANIZATION: Complex restructuring (herstructurering)\n\n**EXCLUDED EVENT TYPES**\n\
\nSome patterns are NOT mapped to events:\n- predecessor: This is a relationship, not an event\n- friends_org: Separate\
\ organization (Vrienden van...)\n- reopening: Not in OrganizationalChangeEventTypeEnum\n\n**EXAMPLE USAGE**\n\n```yaml\n\
timeline_events:\n - event_type: FOUNDING\n event_date: \"2005-04-30\"\n date_precision: day\n is_or_was_approximate:\n\
\ approximation_level: EXACT\n description: >-\n Het RHC Drents Archief werd opgericht op 30 april 2005.\n Het is de voortzetting\
\ van het Rijksarchief in Drenthe (sinds 2000).\n source_url:\n - \"https://nl.wikipedia.org/wiki/Drents_Archief\"\
\n - \"https://bizzy.ai/nl/nl/52454037/regionaal-historisch-centrum-rhc-drents-archief\"\n extraction_method:\
\ api_response_regex\n extraction_timestamp: \"2025-12-16T10:00:00Z\"\n extraction_notes: >-\n Query: \"\
Regionaal Historisch Centrum (RHC) Drents Archief\" Assen opgericht\n Answer archived at: web/0002/linkup/linkup_founding_20251215T160438Z.json\n\
\ archive_path: web/0002/linkup/linkup_founding_20251215T160438Z.json\n data_tier: TIER_4_INFERRED\n```\n"
exact_mappings:
- prov:Entity
close_mappings:
- crm:E5_Event
- tooi:Wijzigingsgebeurtenis
- schema:Event
slots:
# REMOVED - migrated to is_or_was_approximate (Rule 53)
# - approximate
- is_or_was_approximate
- archive_path
- data_tier
- date_precision
- description
- event_date
- event_type
- extraction_method
- extraction_note
- extraction_timestamp
- observation_ref
- source_url
- specificity_annotation
- has_or_had_score # was: template_specificity - migrated per Rule 53 (2026-01-17)
slot_usage:
event_type:
required: true
event_date:
required: false
date_precision:
required: true
# REMOVED - migrated to is_or_was_approximate (Rule 53)
# is_approximate:
# required: true
is_or_was_approximate:
range: ApproximationStatus
inlined: true
required: true
description: >-
Whether the event date is approximate or uncertain.
MIGRATED from approximate (Rule 53) - changed from boolean to
ApproximationStatus class for structured uncertainty modeling.
examples:
- value:
approximation_level: EXACT
description: Exact date known
- value:
approximation_level: APPROXIMATE
has_or_had_label: "circa 1880"
has_or_had_description: "Founding date known only to year"
description: Approximate date with explanation
description:
required: true
source_url:
required: false
extraction_method:
required: true
range: TimelineExtractionMethodEnum
extraction_timestamp:
required: true
extraction_note:
required: false
has_archive_path:
required: false
data_tier:
required: true
observation_ref:
required: false
rules:
- preconditions:
slot_conditions:
event_date:
value_presence: PRESENT
postconditions:
slot_conditions:
date_precision:
value_presence: PRESENT
description: If event_date is provided, date_precision must be specified
comments:
- 'Source-agnostic design - see Rule 37: Provenance Separation'
- Use observation_ref to link to detailed source provenance
- Use extraction_notes for source-specific details (API queries, XPaths)
- Event types constrained to OrganizationalChangeEventTypeEnum
- Use CIDOC-CRM TimeSpan for fuzzy dates if needed
see_also:
- schemas/20251121/linkml/modules/enums/OrganizationalChangeEventTypeEnum.yaml
- schemas/20251121/linkml/modules/classes/WebObservation.yaml
- schemas/20251121/linkml/modules/classes/CustodianObservation.yaml
- schemas/20251121/linkml/modules/classes/TimeSpan.yaml
- .opencode/PROVENANCE_SEPARATION_RULE.md
examples:
- value:
event_type: FOUNDING
event_date: '2005-04-30'
date_precision: day
is_or_was_approximate:
approximation_level: EXACT
description: Het RHC Drents Archief werd opgericht op 30 april 2005.
source_url:
- https://nl.wikipedia.org/wiki/Drents_Archief
extraction_method: api_response_regex
extraction_timestamp: '2025-12-16T10:00:00Z'
extraction_notes: 'Query: "Drents Archief" Assen opgericht OR gesticht API: Linkup. Archived at: web/0002/linkup/linkup_founding_20251215T160438Z.json'
archive_path: web/0002/linkup/linkup_founding_20251215T160438Z.json
data_tier: TIER_4_INFERRED
description: Founding event extracted from API response
- value:
event_type: MERGER
event_date: '2005'
date_precision: year
is_or_was_approximate:
approximation_level: EXACT
description: In 2005 ging het Gemeentearchief Assen op in het Drents Archief.
source_url:
- https://nl.wikipedia.org/wiki/Drents_Archief
extraction_method: api_response_regex
extraction_timestamp: '2025-12-16T10:05:00Z'
data_tier: TIER_4_INFERRED
description: Merger event with year-only precision
- value:
event_type: FOUNDING
event_date: '1810'
date_precision: year
is_or_was_approximate:
approximation_level: EXACT
description: The Rijksmuseum was founded in 1810 as the Royal Museum.
source_url:
- https://www.wikidata.org/wiki/Q190804
extraction_method: wikidata_sparql
extraction_timestamp: '2025-12-20T14:30:00Z'
extraction_notes: Wikidata P571 (inception date) query
data_tier: TIER_3_CROWD_SOURCED
description: Founding event from Wikidata
- value:
event_type: TRANSFER
event_date: '1885'
date_precision: year
is_or_was_approximate:
approximation_level: EXACT
description: The Rijksmuseum moved to its current building designed by Cuypers.
source_url:
- https://www.rijksmuseum.nl/en/about-us/what-we-do/history
extraction_method: web_scrape_xpath
extraction_timestamp: '2025-12-20T15:00:00Z'
extraction_notes: 'XPath: /html/body/main/section[2]/div/p[3]'
archive_path: web/0001/rijksmuseum.nl/about-us/rendered.html
data_tier: TIER_2_VERIFIED
description: Relocation event from institutional website
- value:
event_type: FOUNDING
event_date: '1880'
date_precision: year
is_or_was_approximate:
approximation_level: APPROXIMATE
has_or_had_label: "circa 1880"
has_or_had_description: "Founding date derived from secondary sources, exact year uncertain"
description: Museum founded around 1880, exact date unknown.
extraction_method: manual_research
extraction_timestamp: '2025-12-20T16:00:00Z'
data_tier: TIER_4_INFERRED
description: Founding event with approximate date