glam/schemas/20251121/linkml/modules/classes/Identifier.yaml
kempersc 0d5d48568d refactor(schema): centralize slot definitions per Rule 38
- Remove slot_uri, description, mappings from slot_usage sections
- Move these properties to centralized slot files in modules/slots/
- Keep only class-specific overrides in slot_usage (required, inlined, examples)
- Update 1,499 centralized slot files with enriched definitions
- Clean 188 class files

Violations fixed:
- slot_uri in slot_usage: 1,676 → 0
- description in slot_usage: 2,287 → 0 (moved to centralized)

Schema still validates: 816 classes, 2028 slots, 127 enums
2026-01-11 23:27:17 +01:00

99 lines
4 KiB
YAML

id: https://nde.nl/ontology/hc/class/CustodianIdentifier
name: custodian_identifier_class
title: Custodian Identifier Class
prefixes:
linkml: https://w3id.org/linkml/
crm: http://www.cidoc-crm.org/cidoc-crm/
schema: http://schema.org/
skos: http://www.w3.org/2004/02/skos/core#
dcterms: http://purl.org/dc/terms/
adms: http://www.w3.org/ns/adms#
prov: http://www.w3.org/ns/prov#
imports:
- linkml:types
- ../metadata
- ../slots/identifier_scheme
- ../slots/identifier_value
- ../slots/identifies_custodian
- ../slots/defined_by_standard
- ../slots/is_or_was_allocated_by
- ../slots/identifier_format_used
- ../slots/canonical_value
- ../slots/also_identifies_name
- ../slots/has_allocation_date
- ../slots/specificity_annotation
- ../slots/template_specificity
- ./AllocationAgency
- ./Custodian
- ./CustodianName
- ./SpecificityAnnotation
- ./Standard
- ./TemplateSpecificityScores
classes:
CustodianIdentifier:
class_uri: crm:E42_Identifier
description: "An external identifier assigned to a heritage custodian entity by an authority.\nConnected to the Custodian\
\ hub via inverse property crm:P48i_is_preferred_identifier_of\n(the Custodian has this Identifier as a preferred identifier).\n\
\nCIDOC-CRM E42_Identifier: Formal symbols or reference codes for unique identification.\nCIDOC-CRM P48_has_preferred_identifier:\
\ Links E1_CRM_Entity (Custodian) to E42_Identifier.\n\n**Use for**: \n- External authority identifiers (ISIL, Wikidata,\
\ VIAF, KvK, ROR)\n- Registration numbers and codes\n- Persistent identifiers from registries\n\n**Connection to Hub**:\n\
- The Custodian hub uses crm:P48_has_preferred_identifier to point to CustodianIdentifier\n- This CustodianIdentifier\
\ uses crm:P48i_is_preferred_identifier_of to point back to the Custodian hub\n- Enables multiple identifiers per custodian\
\ (from different authorities)\n\n**Extended Provenance (v2)**:\n\nThe identifier now tracks its full lineage:\n- defined_by_standard:\
\ Which Standard defines this identifier type (ISIL → ISO 15511)\n- allocated_by: Which AllocationAgency assigned this\
\ specific identifier\n- identifier_format_used: Which format variant is used in identifier_value\n- canonical_value:\
\ Normalized form for deduplication and matching\n- allocation_date: When the identifier was assigned\n\n**Dual-Purpose\
\ Identifiers**:\n\nSome identifiers (ISNI, VIAF) also identify name authority records:\n- also_identifies_name: Links\
\ to the CustodianName record this identifier also identifies\n\n**Enables**:\n- External identifier management (scheme\
\ + value)\n- Cross-reference to authority registries\n- Persistent identifier resolution\n- Inter-dataset linking\n\
- Full provenance tracking (who allocated, when, under what standard)\n- Name authority linkage (for ISNI, VIAF)\n"
exact_mappings:
- crm:E42_Identifier
- schema:PropertyValue
- dcterms:identifier
close_mappings:
- schema:identifier
- adms:Identifier
- skos:notation
related_mappings:
- owl:sameAs
slots:
- is_or_was_allocated_by
- has_allocation_date
- also_identifies_name
- canonical_value
- defined_by_standard
- identifier_format_used
- identifier_scheme
- identifier_value
- identifies_custodian
- specificity_annotation
- template_specificity
slot_usage:
identifier_scheme:
range: string
required: true
identifier_value:
range: string
required: true
identifies_custodian:
range: Custodian
required: false
defined_by_standard:
required: false
is_or_was_allocated_by:
required: false
identifier_format_used:
required: false
canonical_value:
required: false
also_identifies_name:
required: false
has_allocation_date:
required: false
specificity_annotation:
range: SpecificityAnnotation
inlined: true
template_specificity:
range: TemplateSpecificityScores
inlined: true