glam/schemas/20251121/linkml/modules/classes/Container.yaml
2025-12-03 17:38:46 +01:00

213 lines
7 KiB
YAML

# Container Class for Heritage Custodian Data
# Provides tree_root for instance validation
#
# Updated to include:
# - StandardsOrganization (ISO, W3C, etc.)
# - Standard (ISIL, ISNI, etc.)
# - AllocationAgency (KB, OCLC, etc.)
# - IdentifierFormat (format variants)
id: https://nde.nl/ontology/hc/class/Container
name: Container
title: Heritage Custodian Data Container
imports:
- linkml:types
- ./Jurisdiction
- ./TradeRegister
- ./RegistrationInfo
- ./Custodian
- ./CustodianObservation
- ./CustodianName
- ./CustodianLegalStatus
- ./CustodianPlace
- ./CustodianCollection
- ./OrganizationalStructure
- ./ReconstructionActivity
- ./StandardsOrganization
- ./Standard
- ./AllocationAgency
- ./Identifier
- ./Country
- ./Subregion
- ./SocialMediaProfile
- ./InternetOfThings
- ./DigitalPlatform
classes:
Container:
tree_root: true
description: |
Root container class for Heritage Custodian data instances.
Provides tree_root for LinkML instance validation.
This container supports all primary entity types for batch validation:
- Core custodian entities (Custodian, observations, names, legal statuses)
- Place and collection aspects (CustodianPlace, CustodianCollection)
- Organizational structures (OrganizationalStructure)
- Reconstruction activities (ReconstructionActivity)
- Registration entities (Jurisdiction, TradeRegister, RegistrationAuthority, RegistrationNumber)
- Standards ecosystem (StandardsOrganization, Standard, AllocationAgency, IdentifierFormat)
attributes:
custodians:
range: Custodian
multivalued: true
inlined_as_list: true
description: "Collection of custodian hub entities"
custodian_observations:
range: CustodianObservation
multivalued: true
inlined_as_list: true
description: "Collection of custodian observations"
custodian_names:
range: CustodianName
multivalued: true
inlined_as_list: true
description: "Collection of custodian standardized names"
custodian_legal_statuses:
range: CustodianLegalStatus
multivalued: true
inlined_as_list: true
description: "Collection of custodian legal entities"
custodian_places:
range: CustodianPlace
multivalued: true
inlined_as_list: true
description: "Collection of custodian place designations"
custodian_collections:
range: CustodianCollection
multivalued: true
inlined_as_list: true
description: "Collection of heritage collections"
organizational_structures:
range: OrganizationalStructure
multivalued: true
inlined_as_list: true
description: "Collection of organizational units"
reconstruction_activities:
range: ReconstructionActivity
multivalued: true
inlined_as_list: true
description: "Collection of reconstruction activities"
jurisdictions:
range: Jurisdiction
multivalued: true
inlined_as_list: true
description: "Collection of legal/administrative jurisdictions"
trade_registers:
range: TradeRegister
multivalued: true
inlined_as_list: true
description: "Collection of trade/business registers"
registration_authorities:
range: RegistrationAuthority
multivalued: true
inlined_as_list: true
description: "Collection of registration authorities"
registration_numbers:
range: RegistrationNumber
multivalued: true
inlined_as_list: true
description: "Collection of registration numbers"
# Standards ecosystem (added in v2)
standards_organizations:
range: StandardsOrganization
multivalued: true
inlined_as_list: true
description: |
Collection of standards organizations (ISO, W3C, OCLC, etc.).
Organizations that define and maintain identifier standards.
standards:
range: Standard
multivalued: true
inlined_as_list: true
description: |
Collection of identifier standards (ISIL, ISNI, VIAF, etc.).
Standards define identifier formats, registration authorities, and lookup URLs.
allocation_agencies:
range: AllocationAgency
multivalued: true
inlined_as_list: true
description: |
Collection of allocation agencies (KB, OCLC, Nationaal Archief, etc.).
Agencies that allocate identifiers locally within geographic/domain scope.
identifier_formats:
range: IdentifierFormat
multivalued: true
inlined_as_list: true
description: |
Collection of identifier format variants.
Format variants for standards (ISNI with/without spaces, etc.).
countries:
range: Country
multivalued: true
inlined_as_list: true
description: |
Collection of countries (ISO 3166-1).
Used for geographic scope of standards and allocation agencies.
subregions:
range: Subregion
multivalued: true
inlined_as_list: true
description: |
Collection of subregions (ISO 3166-2).
Used for subnational geographic scope.
custodian_identifiers:
range: CustodianIdentifier
multivalued: true
inlined_as_list: true
description: |
Collection of custodian identifiers (ISIL, ISNI, Wikidata, VIAF, etc.).
External identifiers with full provenance tracking.
# Digital presence classes (added in v3)
social_media_profiles:
range: SocialMediaProfile
multivalued: true
inlined_as_list: true
description: |
Collection of social media profiles (Instagram, Facebook, X, etc.).
Third-party digital presence on external platforms.
iot_devices:
range: InternetOfThings
multivalued: true
inlined_as_list: true
description: |
Collection of IoT devices (beacons, sensors, kiosks).
Physical-digital bridge devices in heritage venues.
digital_platforms:
range: DigitalPlatform
multivalued: true
inlined_as_list: true
description: |
Collection of digital platforms (websites, portals, repositories).
Primary owned digital presence.
comments:
- "Container class serves as tree_root for LinkML validation"
- "Enables validation of YAML/JSON instance files"
- "Uses 'attributes' instead of 'slots' to avoid slot import dependencies"
- "Not used in RDF serialization (flattened)"
- "v2: Added standards ecosystem classes (StandardsOrganization, Standard, AllocationAgency)"
- "v3: Added digital presence classes (SocialMediaProfile, InternetOfThings, DigitalPlatform)"