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

65 lines
2.2 KiB
YAML

id: https://nde.nl/ontology/hc/class/CanonicalForm
name: canonical_form_class
title: Canonical Form Class
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
skos: http://www.w3.org/2004/02/skos/core#
schema: http://schema.org/
dcterms: http://purl.org/dc/terms/
imports:
- linkml:types
- ../slots/has_label
default_prefix: hc
classes:
CanonicalForm:
class_uri: skos:Concept
description: 'Represents the canonical/normalized form of an identifier or value.
**PURPOSE**:
While original values may vary in format (spaces, prefixes, case), CanonicalForm
provides a standardized representation for: - Consistent storage - Deduplication
and matching - Database joins and lookups - Cross-system interoperability
**NORMALIZATION RULES BY STANDARD**:
| Standard | Original | Canonical | |----------|----------|-----------| | ISNI
| "0000 0001 2146 5765" | "0000000121465765" | | Wikidata | "http://wikidata.org/entity/Q190804"
| "Q190804" | | VIAF | "viaf.org/viaf/148691498" | "148691498" | | DOI | "https://doi.org/10.1234/Ex"
| "10.1234/ex" | | ISIL | "NL-AmRMA" | "NL-AmRMA" (already canonical) |
**ONTOLOGY ALIGNMENT**:
| Ontology | Mapping | Rationale | |----------|---------|-----------| | SKOS
| skos:Concept | Conceptual representation | | Schema.org | schema:PropertyValue
| Name-value pair |
MIGRATED 2026-01-22: Created per slot_fixes.yaml feedback to replace simple
canonical_value string with structured class.'
exact_mappings:
- skos:Concept
close_mappings:
- schema:PropertyValue
slots:
- has_label
slot_usage:
has_label:
# range: string
required: true
inlined: false # Fixed invalid inline for primitive type
examples:
- value:
has_label:
has_text: '0000000121465765'
- value:
has_label:
has_text: Q190804
- value:
has_label:
has_text: 10.1234/example
annotations:
specificity_score: 0.3
specificity_rationale: Canonical forms are relevant for identifier lookup across
all heritage sectors.
custodian_types: '[''*'']'