glam/schemas/20251121/linkml/modules/classes/Identifier.yaml
kempersc 776462de90 Migrate multiple slots to enhance semantic clarity and align with best practices
- Migrated catering_type to CateringType with subclasses for better classification.
- Updated certainty_level to has_or_had_level for improved metadata consistency.
- Addressed cessation_observed_in by confirming existing temporal data structure.
- Created NetAsset class and updated financial statements for richer financial modeling.
- Completed migrations for default_access_policy, default_audio_language, and default_language to structured classes.
- Migrated default_position to structured Alignment class for better representation.
- Updated defined_by_standard to broaden range for identifier standards.
- Migrated definition to structured Resolution class for video resolution modeling.
- Completed migrations for degree_name, deliverable, and departement_code to structured classes.
- Migrated deployment_date to structured DeploymentEvent with temporal extent.
- Migrated derived_from_entity and derived_from_observation to new reference structures.
- Completed description and description_text migrations to enhance content modeling.
- Migrated detection_count, detection_level, and detection_threshold to structured slots with classes.
- Migrated device-related slots to structured classes for better identification and classification.
- Added new slots and classes for historic building and web address modeling.
2026-01-25 12:47:38 +01:00

291 lines
11 KiB
YAML

id: https://nde.nl/ontology/hc/class/Identifier
name: identifier_classes
title: Identifier Classes (Generic and Custodian-Specific)
# Updated: 2026-01-23 - Added has_or_had_type for IdentifierType per F26 migration
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
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
# MIGRATED 2026-01-24: defined_by_standard → has_or_had_standard + Standard (Rule 53)
- ../slots/has_or_had_standard
- ./Standard
- ../slots/is_or_was_allocated_by
- ../slots/identifier_format_used
# MIGRATED 2026-01-22: canonical_value → has_or_had_canonical_form + CanonicalForm per slot_fixes.yaml feedback
- ../slots/has_or_had_canonical_form
- ./CanonicalForm
# ADDED 2026-01-23: has_or_had_type for IdentifierType per F26 migration
- ../slots/has_or_had_type
- ./IdentifierType
- ./IdentifierTypes
- ../slots/has_or_had_secondary_label
- ../slots/has_allocation_date
- ../slots/specificity_annotation
- ../slots/has_or_had_score
- ./AllocationAgency
- ./Custodian
- ./CustodianName
- ./Label
- ./SpecificityAnnotation
- ./Standard
- ./TemplateSpecificityScore
- ./TemplateSpecificityType
- ./TemplateSpecificityTypes
default_prefix: hc
classes:
# Generic Identifier class - base for all identifier types
Identifier:
class_uri: schema:PropertyValue
description: |
A generic identifier consisting of a scheme and value pair.
**Purpose**:
Base identifier class for any entity (not just heritage custodians).
Used when a simple scheme + value identifier is needed.
**For heritage custodian identifiers**: Use `CustodianIdentifier` which
extends this class with provenance tracking (allocation agency, standard, etc.)
**Schema.org Alignment**:
Maps to schema:PropertyValue which represents a property-value pair.
- propertyID → identifier_scheme
- value → identifier_value
exact_mappings:
- schema:PropertyValue
- dcterms:identifier
close_mappings:
- adms:Identifier
- skos:notation
slots:
- identifier_scheme
- identifier_value
- has_or_had_type
slot_usage:
has_or_had_type:
description: >-
The type of identifier from IdentifierType taxonomy.
Uses IdentifierType subclasses per Rule 0b (Type/Types pattern).
Added 2026-01-23 per F26 migration.
Provides structured alternative to string-based identifier_scheme.
Prefer has_or_had_type for new data; identifier_scheme retained for compatibility.
range: IdentifierType
required: false
examples:
- value:
has_or_had_code: CATALOG_RAISONNE
has_or_had_label: Catalogue Raisonné Number
description: Art catalog reference
- value:
has_or_had_code: ISIL
has_or_had_label: ISIL Code
description: Library identifier
identifier_scheme:
range: string
required: false
description: |
The identifier scheme or namespace (e.g., ISIL, Wikidata, URI, INTERNAL_CODE).
Note: Prefer has_or_had_type for new data (structured IdentifierType).
examples:
- value: ISIL
description: ISIL identifier scheme
- value: Wikidata
description: Wikidata entity ID
- value: URI
description: Uniform Resource Identifier
- value: EU_FUNDING_TENDERS
description: EU Funding & Tenders portal ID
identifier_value:
range: Any
any_of:
- range: string
- range: integer
required: true
description: |
The identifier value within the scheme. Usually a string, but can be
a large integer (e.g., GHCID_NUMERIC values).
examples:
- value: NL-AsdAM
description: ISIL code for Amsterdam Museum
- value: Q190804
description: Wikidata ID for Rijksmuseum
attributes:
identifier_url:
range: uri
description: |
URL form of the identifier (e.g., full Wikidata URL, website URL).
examples:
- value: https://www.wikidata.org/wiki/Q190804
description: Full Wikidata URL for Rijksmuseum
assigned_date:
range: string
description: Date the identifier was assigned (from enrichment data)
source:
range: string
description: Source of the identifier (e.g., registry name)
examples:
- value:
identifier_scheme: ISIL
identifier_value: NL-AsdAM
description: Amsterdam Museum ISIL code
- value:
identifier_scheme: Wikidata
identifier_value: Q190804
description: Rijksmuseum Wikidata ID
- value:
identifier_scheme: URI
identifier_value: https://nde.nl/ontology/hc/call/ec/cl2-2025-heritage-01
description: Funding call URI identifier
annotations:
specificity_score: 0.25
specificity_rationale: |
Low specificity - identifiers are broadly useful across all queries
involving entity lookup and cross-referencing.
# Heritage custodian-specific identifier with provenance tracking
CustodianIdentifier:
is_a: Identifier
class_uri: crm:E42_Identifier
description: |
An external identifier assigned to a heritage custodian entity by an authority.
Extends the generic Identifier class with provenance tracking:
- Which authority allocated the identifier
- Under what standard it was assigned
- When it was allocated
- Canonical/normalized form for matching
Connected to the Custodian hub via inverse property crm:P48i_is_preferred_identifier_of
(the Custodian has this Identifier as a preferred identifier).
CIDOC-CRM E42_Identifier: Formal symbols or reference codes for unique identification.
CIDOC-CRM P48_has_preferred_identifier: Links E1_CRM_Entity (Custodian) to E42_Identifier.
**Use for**:
- External authority identifiers (ISIL, Wikidata, VIAF, KvK, ROR)
- Registration numbers and codes
- Persistent identifiers from registries
**Connection to Hub**:
- The Custodian hub uses crm:P48_has_preferred_identifier to point to CustodianIdentifier
- This CustodianIdentifier uses crm:P48i_is_preferred_identifier_of to point back to the Custodian hub
- Enables multiple identifiers per custodian (from different authorities)
**Extended Provenance (v2)**:
The identifier now tracks its full lineage:
- has_or_had_standard: Which Standard defines this identifier type (ISIL → ISO 15511)
- allocated_by: Which AllocationAgency assigned this specific identifier
- identifier_format_used: Which format variant is used in identifier_value
- has_or_had_canonical_form: Normalized form (CanonicalForm) for deduplication and matching
- allocation_date: When the identifier was assigned
**Dual-Purpose Identifiers**:
Some identifiers (ISNI, VIAF) also identify name authority records:
- has_or_had_secondary_label: Links to the CustodianName record this identifier also identifies (as a Label)
**Enables**:
- External identifier management (scheme + value)
- Cross-reference to authority registries
- Persistent identifier resolution
- Inter-dataset linking
- Full provenance tracking (who allocated, when, under what standard)
- Name authority linkage (for ISNI, VIAF)
exact_mappings:
- crm:E42_Identifier
close_mappings:
- schema:identifier
- adms:Identifier
- skos:notation
related_mappings:
- owl:sameAs
slots:
- is_or_was_allocated_by
- has_allocation_date
- has_or_had_secondary_label
# MIGRATED 2026-01-22: canonical_value → has_or_had_canonical_form + CanonicalForm
- has_or_had_canonical_form
# MIGRATED 2026-01-24: defined_by_standard → has_or_had_standard + Standard (Rule 53)
- has_or_had_standard
- identifier_format_used
- identifies_custodian
- specificity_annotation
- has_or_had_score
slot_usage:
identifies_custodian:
range: Custodian
required: false
# MIGRATED 2026-01-24: defined_by_standard → has_or_had_standard + Standard (Rule 53)
has_or_had_standard:
range: Standard
required: false
multivalued: false
inlined: false
description: |
The standard (identifier scheme) that defines this identifier.
Links the identifier to its governing standard, providing access to:
- Format specifications
- Registration authority
- Lookup URL template
- Validation rules
**SKOS Alignment:**
skos:inScheme - "Relates a resource to a concept scheme in which it is included"
Here the identifier is treated as a SKOS notation within the scheme (standard).
**Examples:**
- ISIL "NL-AmRMA" → ISIL standard (ISO 15511)
- ISNI "0000 0001 2146 5765" → ISNI standard (ISO 27729)
- Wikidata "Q190804" → Wikidata standard
MIGRATED 2026-01-24: Replaces defined_by_standard per slot_fixes.yaml (Rule 53).
examples:
- value:
id: isil
name: "International Standard Identifier for Libraries"
has_or_had_abbreviation: "ISIL"
description: ISIL identifier standard
is_or_was_allocated_by:
required: false
identifier_format_used:
required: false
has_or_had_canonical_form:
range: CanonicalForm
required: false
inlined: true
description: >-
Canonical/normalized form for deduplication and matching.
MIGRATED 2026-01-22: Replaces canonical_value with structured CanonicalForm.
examples:
- value:
has_or_had_label:
has_or_had_text: "0000000121465765"
normalization_rule: "ISNI_REMOVE_SPACES"
description: ISNI canonical form
has_or_had_secondary_label:
description: |
For dual-purpose identifiers (ISNI, VIAF), links to the name authority
record this identifier also identifies.
range: Label
required: false
has_allocation_date:
required: false
annotations:
specificity_score: 0.30
specificity_rationale: |
Slightly higher specificity than generic Identifier due to
heritage custodian-specific provenance tracking.