glam/schemas/20251121/linkml/01_custodian_name_modular.yaml

156 lines
5.9 KiB
YAML

# Heritage Custodian Observation and Reconstruction Pattern - Main Schema
# This is the entry point schema that imports all modules
id: https://nde.nl/ontology/hc/custodian
name: heritage-custodian-observation-reconstruction
title: Heritage Custodian Observation and Reconstruction Pattern
description: >-
Heritage Custodian Ontology using a hub architecture pattern with multi-aspect modeling:
- Custodian (Hub): Minimal abstract entity with only persistent identifier (hc_id: https://nde.nl/ontology/hc/{id})
- CustodianObservation: Evidence of custodians in sources (input to ReconstructionActivity)
- ReconstructionActivity: Process that generates custodian aspects from observations
- CustodianLegalStatus: Formal legal entity (one aspect - PRECISE, registered)
- CustodianName: Standardized emic name (one aspect - ambiguous, contextual)
- CustodianPlace: Nominal place designation (one aspect - NOT coordinates!)
The hub pattern allows multiple observations and reconstructions to coexist without privileging
any single source as authoritative. All data connects through persistent identifiers.
Three aspects (legal status, name, place) can independently identify the same custodian hub.
Inspired by PiCo (Persons in Context) ontology pattern for distinguishing observations from entities.
version: 0.1.0
license: https://creativecommons.org/licenses/by-sa/4.0/
prefixes:
linkml: https://w3id.org/linkml/
imports:
- linkml:types
- modules/metadata
- modules/slots/activity_type
- modules/slots/affiliation
- modules/slots/agent_name
- modules/slots/agent_type
- modules/slots/alternative_observed_names
- modules/slots/appellation_language
- modules/slots/appellation_type
- modules/slots/appellation_value
- modules/slots/begin_of_the_begin
- modules/slots/begin_of_the_end
- modules/slots/confidence_method
- modules/slots/confidence_score
- modules/slots/confidence_value
- modules/slots/contact
- modules/slots/created
- modules/slots/derived_from_entity
- modules/slots/dissolution_date
- modules/slots/end_of_the_begin
- modules/slots/end_of_the_end
- modules/slots/ended_at_time
- modules/slots/endorsement_source
- modules/slots/governance_structure
- modules/slots/id
- modules/slots/identifier_scheme
- modules/slots/identifier_value
- modules/slots/identifiers
- modules/slots/appellations
- modules/slots/identifies_custodian
- modules/slots/justification
- modules/slots/language
- modules/slots/language_code
- modules/slots/legal_form
- modules/slots/legal_name
- modules/slots/legal_status
- modules/slots/legal_entity_type
- modules/slots/registration_numbers
- modules/slots/method
- modules/slots/modified
- modules/slots/name_authority
- modules/slots/name_validity_period
- modules/slots/observation_context
- modules/slots/observation_date
- modules/slots/observed_name
- modules/slots/parent_custodian
- modules/slots/place_designation
- modules/slots/place_name
- modules/slots/place_language
- modules/slots/place_specificity
- modules/slots/place_note
- modules/slots/registration_authority
- modules/slots/registration_date
- modules/slots/registration_numbers
- modules/slots/responsible_agent
- modules/slots/source
- modules/slots/source_creator
- modules/slots/source_date
- modules/slots/source_type
- modules/slots/source_uri
- modules/slots/standardized_name
- modules/slots/started_at_time
- modules/slots/superseded_by
- modules/slots/supersedes
- modules/slots/temporal_extent
- modules/slots/used
- modules/slots/preferred_label
- modules/slots/place_designation
- modules/slots/valid_from
- modules/slots/valid_to
- modules/slots/was_derived_from
- modules/slots/was_generated_by
- modules/slots/was_revision_of
# Hub architecture slots
- modules/slots/hc_id
- modules/slots/refers_to_custodian
- modules/slots/observation_source
- modules/slots/reconstruction_method
- modules/slots/legal_entity_type
- modules/slots/emic_name
- modules/slots/name_language
# Enums (7 files - added PlaceSpecificityEnum)
- modules/enums/AgentTypeEnum
- modules/enums/AppellationTypeEnum
- modules/enums/EntityTypeEnum
- modules/enums/LegalStatusEnum
- modules/enums/PlaceSpecificityEnum
- modules/enums/ReconstructionActivityTypeEnum
- modules/enums/SourceDocumentTypeEnum
# Classes (18 files - renamed CustodianReconstruction → CustodianLegalStatus, added CustodianPlace)
- modules/classes/ReconstructionAgent
- modules/classes/Appellation
- modules/classes/ConfidenceMeasure
- modules/classes/Custodian
- modules/classes/CustodianName
- modules/classes/CustodianObservation
- modules/classes/CustodianLegalStatus
- modules/classes/CustodianPlace
- modules/classes/Identifier
- modules/classes/LanguageCode
- modules/classes/ReconstructionActivity
- modules/classes/SourceDocument
- modules/classes/TimeSpan
- modules/classes/LegalEntityType
- modules/classes/LegalForm
- modules/classes/LegalName
- modules/classes/RegistrationInfo
comments:
- "HYPER-MODULAR STRUCTURE: Direct imports of all component files"
- "Each class, slot, and enum has its own file"
- "All modules imported individually for maximum granularity"
- "Namespace structure: https://nde.nl/ontology/hc/{class|enum|slot}/[Name]"
- "Total components: 17 classes + 6 enums + 61 slots = 84 definition files"
- "Legal entity classes (5): LegalEntityType, LegalForm, LegalName, RegistrationInfo (4 classes within), total 8 classes"
- "New slots (2): appellations, identifies_custodian (for bidirectional Custodian-Appellation/Identifier links)"
- "Supporting files: metadata.yaml + main schema = 2 files"
- "Grand total: 86 files (including RegistrationInfo which contains 4 sub-classes)"
see_also:
- "https://github.com/FICLIT/PiCo"
- "https://ontome.net/ontology/c39"
- "https://www.wikidata.org/wiki/Q115641683"