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: '["*"]'