glam/schemas/20251121/linkml/modules/classes/CustodianCollection.yaml

266 lines
11 KiB
YAML

id: https://nde.nl/ontology/hc/class/CustodianCollection
name: custodian_collection_class
title: CustodianCollection Class
imports:
- linkml:types
- ./Custodian
- ./CustodianObservation
- ./ReconstructionActivity
- ./TimeSpan
- ./OrganizationalStructure
- ./CollectionManagementSystem
- ./ReconstructedEntity
- ../slots/preservation_level
- ../slots/is_or_was_instantiated_by
- ./DigitalInstantiation
# REMOVED 2026-01-18: ../slots/collection_name - migrated to has_or_had_label + Label (Rule 53)
- ../slots/has_or_had_label
- ./Label
# REMOVED 2026-01-18: ../slots/collection_description - migrated to has_or_had_description + Description (Rule 53)
- ../slots/has_or_had_description
# REMOVED 2026-01-22: ../slots/collection_type - migrated to has_or_had_content + CollectionContent (Rule 53)
- ./CollectionContent
- ./CollectionContentType
- ./CollectionContentTypes
# REMOVED 2026-01-18: ../slots/collection_scope - migrated to has_or_had_scope + CollectionScope (Rule 53)
- ../slots/has_or_had_scope
- ./CollectionScope
- ../slots/has_or_had_content # was: temporal_coverage - migrated per Rule 53/56 (2026-01-16)
- ./Content
- ../slots/extent
- ../slots/managing_unit
- ../slots/temporal_extent # was: valid_from + valid_to - migrated per Rule 53
# REMOVED 2026-01-14: valid_from + valid_to - migrated to temporal_extent (Rule 53)
- ../slots/refers_to_custodian
- ../slots/is_or_was_derived_from # was: was_derived_from - migrated per Rule 53
- ../slots/has_or_had_arrangement_system
- ../slots/is_or_was_generated_by # was: was_generated_by - migrated per Rule 53
- ../slots/has_or_had_custodian_type
- ../slots/custody_history
- ../slots/id
- ../slots/has_or_had_managed_by_cm
- ../slots/has_or_had_provenance # was: provenance_note - migrated per Rule 53/56 (2026-01-18)
- ./Provenance
- ./Description
- ../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
- ../slots/has_or_had_access_right
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
crm: http://www.cidoc-crm.org/cidoc-crm/
dcterms: http://purl.org/dc/terms/
rico: https://www.ica.org/standards/RiC/ontology#
prov: http://www.w3.org/ns/prov#
time: http://www.w3.org/2006/time#
org: http://www.w3.org/ns/org#
premis: http://www.loc.gov/premis/rdf/v3/
bf: http://id.loc.gov/ontologies/bibframe/
classes:
CustodianCollection:
is_a: ReconstructedEntity
class_uri: crm:E78_Curated_Holding
description: 'Represents a heritage collection as a multi-aspect entity with independent temporal lifecycle.
Collections are curatedHoldings (CIDOC-CRM E78) with provenance tracking, custody history,
and organizational management relationships.
Phase 4 (2025-11-22): Added managing_unit bidirectional relationship with OrganizationalStructure.
Phase 8 (2025-11-22): Added validation constraints via slot_usage.
Phase 9 (2025-11-26): Added PREMIS mappings for digital preservation (digital_surrogates,
digitization_status, preservation_level).
'
close_mappings:
- premis:IntellectualEntity
- rico:RecordSet
- bf:Collection
related_mappings:
- premis:relationship
- dcterms:hasPart
slots:
- has_or_had_access_right
- has_or_had_arrangement_system
# REMOVED 2026-01-18: collection_description - migrated to has_or_had_description + Description (Rule 53)
- has_or_had_description
# REMOVED 2026-01-18: collection_name - migrated to has_or_had_label + Label (Rule 53)
- has_or_had_label
# REMOVED 2026-01-18: collection_scope - migrated to has_or_had_scope + CollectionScope (Rule 53)
- has_or_had_scope
# REMOVED 2026-01-22: collection_type - migrated to has_or_had_content + CollectionContent (Rule 53)
- has_or_had_custodian_type
- custody_history
- is_or_was_instantiated_by
- extent
- id
- has_or_had_managed_by_cm
- managing_unit
- preservation_level
- has_or_had_provenance # was: provenance_note - migrated per Rule 53/56 (2026-01-18)
- refers_to_custodian
- specificity_annotation
- has_or_had_score # was: template_specificity - migrated per Rule 53 (2026-01-17)
- has_or_had_content # was: temporal_coverage - migrated per Rule 53/56 (2026-01-16)
- temporal_extent # was: valid_from + valid_to - migrated per Rule 53
- is_or_was_derived_from # was: was_derived_from - migrated per Rule 53
- is_or_was_generated_by # was: was_generated_by - migrated per Rule 53
slot_usage:
has_or_had_label: # was: collection_name - migrated per Rule 53/56 (2026-01-18)
description: |
MIGRATED from collection_name per slot_fixes.yaml (Rule 53/56, 2026-01-18).
The name of this custodian collection.
Uses Label class for structured labeling.
range: Label
inlined: true
required: true
pattern: ^.{1,500}$
managing_unit:
range: OrganizationalStructure
required: false
temporal_extent: # was: valid_from + valid_to - migrated per Rule 53
description: |
Collection validity period using CIDOC-CRM TimeSpan.
MIGRATED from valid_from + valid_to per slot_fixes.yaml (Rule 53).
range: TimeSpan
inlined: true
required: false
id:
identifier: true
required: true
refers_to_custodian:
range: Custodian
required: true
has_or_had_description: # was: collection_description - migrated per Rule 53/56 (2026-01-18)
description: |
MIGRATED from collection_description per slot_fixes.yaml (Rule 53/56, 2026-01-18).
Narrative description of the custodian collection's scope and significance.
Uses Description class with description_type for type discrimination.
Use description_type: "collection_description" to indicate collection narrative format.
range: Description
inlined: true
required: false
multivalued: true
inlined_as_list: true
examples:
- value:
description_text: "The Nationaal Archief holdings comprise over 137 km of archival records documenting Dutch government and society from the medieval period to the present."
description_type: collection_description
description: National archive custodian collection description
# REMOVED 2026-01-22: collection_type slot_usage - migrated to has_or_had_content + CollectionContent (Rule 53)
has_or_had_scope: # was: collection_scope - migrated per Rule 53/56 (2026-01-18)
description: |
MIGRATED from collection_scope per slot_fixes.yaml (Rule 53/56, 2026-01-18).
Subject scope or thematic focus of the collection.
Uses CollectionScope class for structured scope representation.
Use scope_type: "collection_scope" to indicate collection scope format.
range: CollectionScope
inlined: true
required: false
examples:
- value:
scope_description: "17th-century Dutch painting"
scope_type: collection_scope
description: Art collection scope example
- value:
scope_description: "Municipal government records, 1578-present"
scope_type: archival_scope
description: Archival collection scope example
has_or_had_content:
# was: temporal_coverage (2026-01-16) + collection_type (2026-01-22) - migrated per Rule 53/56
range: CollectionContent
multivalued: true
inlined: true
inlined_as_list: true
required: false
description: |
Content held by this collection with typed categorization.
MIGRATED from:
- temporal_coverage per slot_fixes.yaml (Rule 53/56, 2026-01-16)
- collection_type per slot_fixes.yaml (Rule 53, 2026-01-22)
CollectionContent unifies content description with type classification:
- content_description: Free-text description of the content
- content_date_range: Temporal coverage (e.g., "1602-1799")
- content_extent: Size/extent of content
- has_or_had_type → CollectionContentType: Type classification (Archival, Library, Art, etc.)
examples:
- value:
content_description: "Colonial period administrative records"
content_date_range: "1602-1800"
has_or_had_type:
- type_label: Archival
description: Colonial archives content with type
- value:
content_description: "Religious art and liturgical objects"
content_extent: "450 objects"
has_or_had_type:
- type_label: Art
- type_label: Liturgical
description: Religious heritage content with multiple types
extent:
range: string
required: false
has_or_had_access_right:
range: string
required: false
is_or_was_instantiated_by:
range: DigitalInstantiation
multivalued: true
inlined: true
description: |
Digital surrogates or digitization status.
MIGRATED from digital_surrogate and digitization_status (2026-01-25).
preservation_level:
range: string
required: false
examples:
- value: FULL
description: Long-term preservation with format migration
- value: BIT_LEVEL
description: Bit-level preservation in institutional repository
has_or_had_managed_by_cm:
range: CollectionManagementSystem
multivalued: true
required: false
examples:
- value: https://nde.nl/ontology/hc/cms/rijksmuseum-adlib
description: Collection managed by Rijksmuseum Adlib CMS
has_or_had_arrangement_system:
range: string
required: false
has_or_had_provenance: # was: provenance_note - migrated per Rule 53/56 (2026-01-18)
description: |
Custody transfer notes for this collection.
MIGRATED from provenance_note per slot_fixes.yaml (Rule 53/56, 2026-01-18).
Uses Provenance class with has_or_had_description for text content.
Use description_type: "provenance_note" to indicate custody transfer format.
required: false
range: Provenance
inlined: true
examples:
- value:
has_or_had_description:
- description_text: "Transferred from private donor 2015; previously held by estate since 1923."
description_type: provenance_note
description: Custody transfer note example
is_or_was_generated_by: # was: was_generated_by - migrated per Rule 53
range: ReconstructionActivity
required: false
is_or_was_derived_from: # was: was_derived_from - migrated per Rule 53
range: CustodianObservation
multivalued: true
required: true
has_or_had_custodian_type:
equals_expression: '["*"]'