glam/schemas/20251121/linkml/modules/classes/CustodianObservation.yaml
kempersc fc405445c6 Refactor and update schema definitions
- Removed obsolete slots: `has_or_had_custodian_observation`, `provider`, and `specificity_annotation`.
- Updated `has_or_had_score` slot to use `SpecificityScore` class and modified its description and examples.
- Added new slots: `end_seconds`, `end_time`, `has_archive_path`, `has_or_had_custodian_name`, `protocol_name`, and `protocol_version`.
- Introduced a script `check_annotation_types.py` to validate the presence and structure of `custodian_types` in YAML files.
- Added a script `update_specificity.py` to automate updates related to `SpecificityAnnotation` to `SpecificityScore`.
2026-02-01 19:55:38 +01:00

106 lines
3.9 KiB
YAML

id: https://nde.nl/ontology/hc/class/CustodianObservation
name: CustodianObservation
title: Custodian Observation Class
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
pico: https://personsincontext.org/model#
prov: http://www.w3.org/ns/prov#
schema: http://schema.org/
crm: http://www.cidoc-crm.org/cidoc-crm/
rico: https://www.ica.org/standards/RiC/ontology#
skos: http://www.w3.org/2004/02/skos/core#
dcterms: http://purl.org/dc/terms/
imports:
- linkml:types
- ../slots/has_or_had_label
- ../slots/has_or_had_score
- ../slots/has_or_had_type
- ../slots/has_or_had_value
- ../slots/observation_context
- ../slots/observation_date
- ../slots/observation_source
- ../slots/observed_name
- ../slots/refers_or_referred_to
- ../slots/source
# - ./Appellation
classes:
CustodianObservation:
class_uri: hc:CustodianObservation
description: "Source-based evidence of a heritage custodian's existence.\n\nCRITICAL:\
\ CustodianObservation does NOT directly link to Custodian!\n- Observations\
\ are RAW EVIDENCE (input to ReconstructionActivity)\n- Only ReconstructionActivity\
\ can determine if custodian is successfully identified\n- Generated outputs\
\ (LegalStatus/Name/Place) link to Custodian, not observations\n\nPROV-O Flow:\n\
\ CustodianObservation → prov:used → ReconstructionActivity\n ReconstructionActivity\
\ → prov:wasGeneratedBy → CustodianLegalStatus/Name/Place\n CustodianLegalStatus/Name/Place\
\ → refers_to_custodian → Custodian\n\nObservations can capture BOTH emic (insider)\
\ and etic (outsider) perspectives:\n- Emic: \"Rijksmuseum\" (how institution\
\ presents itself)\n- Etic: \"The National Museum\" (how outsiders refer to\
\ it)\n"
exact_mappings:
- pico:PersonObservation
- prov:Entity
close_mappings:
- schema:Intangible
- crm:E73_Information_Object
- rico:Record
related_mappings:
- skos:Concept
- dcterms:BibliographicResource
slots:
- has_or_had_label
- has_or_had_value
- has_or_had_type
- refers_or_referred_to
- observation_context
- observation_date
- observation_source
- observed_name
- source
- has_or_had_score
slot_usage:
observation_source:
range: string
observed_name:
range: uriorcurie
# range: CustodianAppellation
required: true
has_or_had_label:
range: string
multivalued: true
inlined: true
examples:
- value:
has_or_had_label: Rijksmuseum Amsterdam
has_or_had_type: ObservedName
- value:
has_or_had_label: Het Rijks
has_or_had_type: AlternativeName
observation_date:
range: date
source:
range: uriorcurie
required: true
observation_context:
range: string
refers_or_referred_to:
range: uriorcurie
# range: CustodianLegalStatus
required: false
examples:
- value: https://nde.nl/ontology/hc/legal/stichting-rijksmuseum
has_or_had_value:
range: uriorcurie
# range: ConfidenceValue
has_or_had_type:
equals_expression: '["hc:GalleryType", "hc:LibraryType", "hc:ArchiveOrganizationType",
"hc:MuseumType", "hc:OfficialInstitutionType", "hc:ResearchOrganizationType",
"hc:CommercialOrganizationType", "hc:UnspecifiedType", "hc:BioCustodianType",
"hc:EducationProviderType", "hc:HeritageSocietyType", "hc:FeatureCustodianType",
"hc:IntangibleHeritageGroupType", "hc:MixedCustodianType", "hc:PersonalCollectionType",
"hc:HolySacredSiteType", "hc:DigitalPlatformType", "hc:NonProfitType", "hc:TasteScentHeritageType"]'
annotations:
specificity_score: 0.1
specificity_rationale: Generic utility class/slot created during migration
custodian_types: '[''*'']'