Refactor code structure for improved readability and maintainability

This commit is contained in:
kempersc 2026-01-26 23:48:27 +01:00
parent 9342919c79
commit 73b2d21bb3
432 changed files with 6819 additions and 29440 deletions

View file

@ -1,12 +1,12 @@
{
"generated": "2026-01-26T14:43:53.241Z",
"generated": "2026-01-26T16:43:16.354Z",
"schemaRoot": "/schemas/20251121/linkml",
"totalFiles": 3027,
"totalFiles": 3014,
"categoryCounts": {
"main": 4,
"class": 1070,
"class": 1082,
"enum": 153,
"slot": 1796,
"slot": 1771,
"module": 4
},
"categories": [
@ -400,6 +400,11 @@
"path": "modules/classes/Author.yaml",
"category": "class"
},
{
"name": "AuthorityFile",
"path": "modules/classes/AuthorityFile.yaml",
"category": "class"
},
{
"name": "AutoGeneration",
"path": "modules/classes/AutoGeneration.yaml",
@ -580,6 +585,11 @@
"path": "modules/classes/BusinessModel.yaml",
"category": "class"
},
{
"name": "CacheValidation",
"path": "modules/classes/CacheValidation.yaml",
"category": "class"
},
{
"name": "CalendarSystem",
"path": "modules/classes/CalendarSystem.yaml",
@ -590,6 +600,11 @@
"path": "modules/classes/CallForApplication.yaml",
"category": "class"
},
{
"name": "Cancellation",
"path": "modules/classes/Cancellation.yaml",
"category": "class"
},
{
"name": "CanonicalForm",
"path": "modules/classes/CanonicalForm.yaml",
@ -1940,6 +1955,21 @@
"path": "modules/classes/EntityReconstruction.yaml",
"category": "class"
},
{
"name": "EntityType",
"path": "modules/classes/EntityType.yaml",
"category": "class"
},
{
"name": "EnvironmentalControl",
"path": "modules/classes/EnvironmentalControl.yaml",
"category": "class"
},
{
"name": "EnvironmentalRequirement",
"path": "modules/classes/EnvironmentalRequirement.yaml",
"category": "class"
},
{
"name": "EnvironmentalZone",
"path": "modules/classes/EnvironmentalZone.yaml",
@ -1955,6 +1985,36 @@
"path": "modules/classes/EnvironmentalZoneTypes.yaml",
"category": "class"
},
{
"name": "Equipment",
"path": "modules/classes/Equipment.yaml",
"category": "class"
},
{
"name": "EquipmentType",
"path": "modules/classes/EquipmentType.yaml",
"category": "class"
},
{
"name": "EquipmentTypes",
"path": "modules/classes/EquipmentTypes.yaml",
"category": "class"
},
{
"name": "EstablishmentEvent",
"path": "modules/classes/EstablishmentEvent.yaml",
"category": "class"
},
{
"name": "EstimationMethod",
"path": "modules/classes/EstimationMethod.yaml",
"category": "class"
},
{
"name": "ETag",
"path": "modules/classes/ETag.yaml",
"category": "class"
},
{
"name": "Event",
"path": "modules/classes/Event.yaml",
@ -6957,171 +7017,16 @@
"path": "modules/slots/ends_or_ended_at_location.yaml",
"category": "slot"
},
{
"name": "entity_types_covered",
"path": "modules/slots/entity_types_covered.yaml",
"category": "slot"
},
{
"name": "entry_count",
"path": "modules/slots/entry_count.yaml",
"category": "slot"
},
{
"name": "environmental_control",
"path": "modules/slots/environmental_control.yaml",
"category": "slot"
},
{
"name": "environmental_requirement",
"path": "modules/slots/environmental_requirement.yaml",
"category": "slot"
},
{
"name": "environmental_zone_type_code",
"path": "modules/slots/environmental_zone_type_code.yaml",
"category": "slot"
},
{
"name": "environmental_zone_type_description",
"path": "modules/slots/environmental_zone_type_description.yaml",
"category": "slot"
},
{
"name": "environmental_zone_type_id",
"path": "modules/slots/environmental_zone_type_id.yaml",
"category": "slot"
},
{
"name": "environmental_zone_type_label",
"path": "modules/slots/environmental_zone_type_label.yaml",
"category": "slot"
},
{
"name": "equipment_type",
"path": "modules/slots/equipment_type.yaml",
"category": "slot"
},
{
"name": "established_date",
"path": "modules/slots/established_date.yaml",
"category": "slot"
},
{
"name": "estimated_extent",
"path": "modules/slots/estimated_extent.yaml",
"category": "slot"
},
{
"name": "estimated_volume",
"path": "modules/slots/estimated_volume.yaml",
"category": "slot"
},
{
"name": "estimates_or_estimated",
"path": "modules/slots/estimates_or_estimated.yaml",
"category": "slot"
},
{
"name": "etag",
"path": "modules/slots/etag.yaml",
"category": "slot"
},
{
"name": "event",
"path": "modules/slots/event.yaml",
"category": "slot"
},
{
"name": "event_cancelled_reason",
"path": "modules/slots/event_cancelled_reason.yaml",
"category": "slot"
},
{
"name": "event_date",
"path": "modules/slots/event_date.yaml",
"category": "slot"
},
{
"name": "event_date_end",
"path": "modules/slots/event_date_end.yaml",
"category": "slot"
},
{
"name": "event_date_start",
"path": "modules/slots/event_date_start.yaml",
"category": "slot"
},
{
"name": "event_date_text",
"path": "modules/slots/event_date_text.yaml",
"category": "slot"
},
{
"name": "event_description",
"path": "modules/slots/event_description.yaml",
"category": "slot"
},
{
"name": "event_documentation",
"path": "modules/slots/event_documentation.yaml",
"category": "slot"
},
{
"name": "event_en",
"path": "modules/slots/event_en.yaml",
"category": "slot"
},
{
"name": "event_id",
"path": "modules/slots/event_id.yaml",
"category": "slot"
},
{
"name": "event_label",
"path": "modules/slots/event_label.yaml",
"category": "slot"
},
{
"name": "event_location",
"path": "modules/slots/event_location.yaml",
"category": "slot"
},
{
"name": "event_name",
"path": "modules/slots/event_name.yaml",
"category": "slot"
},
{
"name": "event_note",
"path": "modules/slots/event_note.yaml",
"category": "slot"
},
{
"name": "event_status",
"path": "modules/slots/event_status.yaml",
"category": "slot"
},
{
"name": "event_timespan",
"path": "modules/slots/event_timespan.yaml",
"category": "slot"
},
{
"name": "event_type",
"path": "modules/slots/event_type.yaml",
"category": "slot"
},
{
"name": "event_url",
"path": "modules/slots/event_url.yaml",
"category": "slot"
},
{
"name": "event_venue",
"path": "modules/slots/event_venue.yaml",
"category": "slot"
},
{
"name": "evidence_documentation",
"path": "modules/slots/evidence_documentation.yaml",
@ -9087,6 +8992,16 @@
"path": "modules/slots/has_or_had_environmental_zone.yaml",
"category": "slot"
},
{
"name": "has_or_had_equipment",
"path": "modules/slots/has_or_had_equipment.yaml",
"category": "slot"
},
{
"name": "has_or_had_equipment_type",
"path": "modules/slots/has_or_had_equipment_type.yaml",
"category": "slot"
},
{
"name": "has_or_had_essay",
"path": "modules/slots/has_or_had_essay.yaml",
@ -9697,6 +9612,11 @@
"path": "modules/slots/has_or_had_scene_segment.yaml",
"category": "slot"
},
{
"name": "has_or_had_schedule",
"path": "modules/slots/has_or_had_schedule.yaml",
"category": "slot"
},
{
"name": "has_or_had_scope",
"path": "modules/slots/has_or_had_scope.yaml",
@ -10812,6 +10732,11 @@
"path": "modules/slots/is_or_was_based_on.yaml",
"category": "slot"
},
{
"name": "is_or_was_cancelled_by",
"path": "modules/slots/is_or_was_cancelled_by.yaml",
"category": "slot"
},
{
"name": "is_or_was_categorized_as",
"path": "modules/slots/is_or_was_categorized_as.yaml",
@ -10897,6 +10822,11 @@
"path": "modules/slots/is_or_was_equivalent_to.yaml",
"category": "slot"
},
{
"name": "is_or_was_established_by",
"path": "modules/slots/is_or_was_established_by.yaml",
"category": "slot"
},
{
"name": "is_or_was_expired_at",
"path": "modules/slots/is_or_was_expired_at.yaml",
@ -13527,6 +13457,11 @@
"path": "modules/slots/provides_access_to.yaml",
"category": "slot"
},
{
"name": "provides_or_provided",
"path": "modules/slots/provides_or_provided.yaml",
"category": "slot"
},
{
"name": "provides_or_provided_provenance_to",
"path": "modules/slots/provides_or_provided_provenance_to.yaml",

View file

@ -0,0 +1,43 @@
id: https://nde.nl/ontology/hc/class/AuthorityFile
name: AuthorityFile
title: Authority File Class
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
schema: http://schema.org/
void: http://rdfs.org/ns/void#
default_prefix: hc
imports:
- linkml:types
- ../metadata
- ../slots/has_or_had_label
- ../slots/has_or_had_description
- ../slots/contains_or_contained
- ./Entity
classes:
AuthorityFile:
class_uri: void:Dataset
description: >-
A managed vocabulary or dataset containing authority records (Entities).
**Ontology Alignment**:
- **Primary**: `void:Dataset` (Dataset of entities)
- **Close**: `skos:ConceptScheme`
slots:
- has_or_had_label
- has_or_had_description
- contains_or_contained
slot_usage:
contains_or_contained:
range: Entity
description: The types of entities contained in this authority file.
annotations:
custodian_types: '["*"]'
specificity_score: 0.4
specificity_rationale: Metadata management.

View file

@ -369,7 +369,7 @@ classes:
- value:
- endpoint_id: https://nde.nl/ontology/hc/endpoint/rijksstudio-api
endpoint_name: Rijksstudio Image API
endpoint_url: https://www.rijksmuseum.nl/api/nl/collection
has_or_had_url: https://www.rijksmuseum.nl/api/nl/collection
protocol: REST_JSON
status: ACTIVE
description: Rijksstudio auxiliary platform endpoints

View file

@ -0,0 +1,44 @@
id: https://nde.nl/ontology/hc/class/CacheValidation
name: CacheValidation
title: Cache Validation Class
description: >-
Describes methods used for validating cache freshness (e.g., ETag, Last-Modified).
**RULE 53 COMPLIANT**: Created for etag migration per slot_fixes.yaml revision.
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
prov: http://www.w3.org/ns/prov#
imports:
- linkml:types
- ../slots/has_or_had_identifier
- ../slots/has_or_had_method
- ../slots/has_or_had_type
- ../slots/has_or_had_description
- ../slots/specificity_annotation
- ../slots/has_or_had_score
- ./ETag
default_prefix: hc
classes:
CacheValidation:
description: >-
A method used to validate if a cached resource is still fresh.
Can use ETags, Last-Modified dates, or other mechanisms.
slots:
- has_or_had_identifier
- has_or_had_type
- has_or_had_description
- specificity_annotation
- has_or_had_score
slot_usage:
has_or_had_identifier:
range: ETag
required: false
description: The ETag associated with this validation method.
has_or_had_type:
range: string
description: Type of validation (e.g. "ETag", "Last-Modified").

View file

@ -0,0 +1,40 @@
id: https://nde.nl/ontology/hc/class/Cancellation
name: Cancellation
title: Cancellation Class
description: >-
Details regarding the cancellation of an event or activity.
**RULE 53 COMPLIANT**: Created for event_cancelled_reason migration.
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
prov: http://www.w3.org/ns/prov#
imports:
- linkml:types
- ../slots/has_or_had_identifier
- ../slots/has_or_had_rationale
- ../slots/has_or_had_description
- ../slots/specificity_annotation
- ../slots/has_or_had_score
- ./Rationale
default_prefix: hc
classes:
Cancellation:
class_uri: prov:Activity
description: >-
Represents the cancellation event/action.
slots:
- has_or_had_identifier
- has_or_had_rationale
- has_or_had_description
- specificity_annotation
- has_or_had_score
slot_usage:
has_or_had_rationale:
range: Rationale
inlined: true
description: The reason for cancellation.

View file

@ -10,7 +10,12 @@ imports:
- ./ExternalWork
- ../slots/has_or_had_accreditation_body
- ../slots/conservation_specialization
- ../slots/equipment_type
# MIGRATED 2026-01-26: equipment_type → has_or_had_equipment + Equipment + EquipmentType (Rule 53)
- ../slots/has_or_had_equipment
- ./Equipment
- ./EquipmentType
- ./EquipmentType
- ./EquipmentTypes
- ../slots/has_climate_control
- ../slots/has_deacidification_facility
- ../slots/has_fume_hood
@ -85,7 +90,8 @@ classes:
- accepts_or_accepted
- has_or_had_accreditation_body
- conservation_specialization
- equipment_type
# MIGRATED 2026-01-26: equipment_type → has_or_had_equipment
- has_or_had_equipment
- has_climate_control
- has_deacidification_facility
- has_fume_hood
@ -150,15 +156,26 @@ classes:
description: Paper conservation
- value: Furniture
description: Furniture conservation
equipment_type:
range: string
has_or_had_equipment_type:
range: EquipmentType
multivalued: true
inlined: true
inlined_as_list: true
description: >-
Types of specialized conservation equipment available in this lab.
MIGRATED from equipment_type (string list) per Rule 53.
examples:
- value: Stereomicroscope
- value:
has_or_had_label: Stereomicroscope
has_or_had_type: MicroscopyEquipment
description: Magnification equipment
- value: X-ray fluorescence spectrometer
- value:
has_or_had_label: X-ray fluorescence spectrometer
has_or_had_type: AnalyticalEquipment
description: Material analysis
- value: Suction table
- value:
has_or_had_label: Suction table
has_or_had_type: PaperConservationEquipment
description: Paper conservation equipment
has_imaging_equipment:
range: boolean
@ -244,11 +261,11 @@ classes:
- Works on paper
- Furniture
- Metalwork
equipment_type:
- Stereomicroscopes
- X-ray fluorescence spectrometer
- Infrared reflectography system
- High-resolution digital imaging
has_or_had_equipment_type:
- has_or_had_label: Stereomicroscopes
- has_or_had_label: X-ray fluorescence spectrometer
- has_or_had_label: Infrared reflectography system
- has_or_had_label: High-resolution digital imaging
has_imaging_equipment: true
has_climate_control: true
has_fume_hoods: true
@ -269,11 +286,11 @@ classes:
- Parchment
- Seals
- Maps and plans
equipment_type:
- Leaf casting machine
- Suction tables
- Book presses
- Ultrasonic humidifiers
has_or_had_equipment_type:
- has_or_had_label: Leaf casting machine
- has_or_had_label: Suction tables
- has_or_had_label: Book presses
- has_or_had_label: Ultrasonic humidifiers
has_climate_control: true
has_fume_hoods: true
has_deacidification_facility: true

View file

@ -33,8 +33,11 @@ imports:
- ../slots/has_authority_file_name
- ../slots/has_authority_file_abbreviation
- ../slots/has_authority_file_url
- ../slots/record_format
- ../slots/entity_types_covered
# MIGRATED 2026-01-26: entity_types_covered → provides_or_provided + AuthorityFile (Rule 53)
- ../slots/provides_or_provided
- ./AuthorityFile
- ./Entity
- ./EntityType
- ../slots/contributes_to
- ../slots/contribution_start_date
- ../slots/is_active
@ -64,11 +67,13 @@ imports:
- ../slots/record_format
- ../slots/specificity_annotation
- ../slots/has_or_had_score # was: template_specificity - migrated per Rule 53 (2026-01-17)
# MIGRATED 2026-01-26: entity_types_covered → provides_or_provided
- ../slots/provides_or_provided
- ../slots/contributes_to
- ../slots/contribution_start_date
- ../slots/contributor_code
- ../slots/description
- ../slots/entity_types_covered
# - ../slots/entity_types_covered
- ../slots/governance_representative
- ../slots/governance_role
- ../slots/has_authority_file_abbreviation
@ -255,7 +260,8 @@ classes:
- has_authority_file_abbreviation
- has_authority_file_url
- record_format
- entity_types_covered
# MIGRATED 2026-01-26: entity_types_covered → provides_or_provided
- provides_or_provided
- contributes_to
- contribution_start_date
- is_active
@ -268,6 +274,21 @@ classes:
- specificity_annotation
- has_or_had_score # was: template_specificity - migrated per Rule 53 (2026-01-17)
slot_usage:
provides_or_provided:
range: AuthorityFile
multivalued: true
inlined: true
description: |
Authority files provided by this agency.
MIGRATED from entity_types_covered per slot_fixes.yaml (Rule 53, 2026-01-26).
The AuthorityFile indicates which Entity types it contains.
examples:
- value:
has_or_had_label: "Library of Congress Name Authority File"
contains_or_contained:
- has_or_had_type: PERSON
- has_or_had_type: CORPORATE_BODY
description: LCNAF covering persons and corporate bodies
contributes_to:
range: Standard
is_or_was_also_allocation_agency:

View file

@ -22,7 +22,8 @@ imports:
- ../slots/creating_function
- ../slots/has_or_had_level # was: data_sensitivity - migrated per Rule 53/56/57 (2026-01-23)
- ./DataSensitivityLevel
- ../slots/estimated_volume
- ../slots/has_or_had_quantity
- ./Quantity
- ../slots/expected_transfer_date
- ../slots/gdpr_relevant
- ../slots/growth_rate
@ -118,7 +119,7 @@ classes:
- has_or_had_business_criticality # was: business_criticality - migrated per Rule 53/56/57 (2026-01-17)
- creating_function
- has_or_had_level # was: data_sensitivity - migrated per Rule 53/56/57 (2026-01-23)
- estimated_volume
- has_or_had_quantity
- expected_transfer_date
- gdpr_relevant
- growth_rate
@ -170,12 +171,27 @@ classes:
examples:
- value: '2015-01-01'
description: System implemented January 2015
estimated_volume:
range: string
required: false
has_or_had_quantity:
range: Quantity
multivalued: true
inlined: true
description: >-
Estimated or measured volume of the administrative records.
MIGRATED from estimated_volume per slot_fixes.yaml (Rule 53).
Uses Quantity class for structured volume representation.
examples:
- value: ~150,000 documents, 800 GB
description: Shared drive volume estimate
- value:
quantity_value: 150000
has_or_had_measurement_unit:
has_or_had_symbol: "documents"
is_estimate: true
description: Document count estimate
- value:
quantity_value: 800
has_or_had_measurement_unit:
has_or_had_symbol: "GB"
is_estimate: true
description: Storage volume estimate
growth_rate:
range: string
required: false
@ -317,7 +333,15 @@ classes:
- Policy documents
creating_function: Executive management
is_or_was_active_since: '2018-01-01'
estimated_volume: ~25,000 documents, 150 GB
has_or_had_quantity:
- quantity_value: 25000
has_or_had_measurement_unit:
has_or_had_symbol: "documents"
is_estimate: true
- quantity_value: 150
has_or_had_measurement_unit:
has_or_had_symbol: "GB"
is_estimate: true
growth_rate: ~5,000 documents/year
primary_system: https://nde.nl/ontology/hc/platform/rm-sharepoint
retention_schedule: Museum Retention Schedule 2020, cat. 1.1
@ -351,7 +375,16 @@ classes:
- Training records
creating_function: Human resource management
is_or_was_active_since: '2010-01-01'
estimated_volume: ~2,000 employee files, 500 GB
has_or_had_quantity:
- quantity_value: 2000
has_or_had_measurement_unit:
has_or_had_symbol: "files"
has_or_had_description: "employee files"
is_estimate: true
- quantity_value: 500
has_or_had_measurement_unit:
has_or_had_symbol: "GB"
is_estimate: true
growth_rate: ~100 files/year (new hires)
primary_system: https://nde.nl/ontology/hc/platform/rm-workday
retention_schedule: Museum Retention Schedule 2020, cat. 3.2
@ -384,7 +417,17 @@ classes:
- Analysis reports
creating_function: Conservation treatment
is_or_was_active_since: '2005-01-01'
estimated_volume: ~45,000 treatment files, 2 TB (high-res images)
has_or_had_quantity:
- quantity_value: 45000
has_or_had_measurement_unit:
has_or_had_symbol: "files"
has_or_had_description: "treatment files"
is_estimate: true
- quantity_value: 2
has_or_had_measurement_unit:
has_or_had_symbol: "TB"
has_or_had_description: "high-res images"
is_estimate: true
growth_rate: ~2,000 treatments/year
primary_system: https://nde.nl/ontology/hc/platform/rm-conservation-db
has_or_had_secondary_system:

View file

@ -34,7 +34,8 @@ imports:
- ../slots/has_or_had_assigned_processor
- ../slots/creating_agency
- ../slots/has_or_had_custodian_type
- ../slots/estimated_extent
- ../slots/has_or_had_quantity
- ./Quantity
- ../slots/id
- ../slots/lifecycle_phase_type
- ../slots/managing_unit
@ -91,7 +92,7 @@ classes:
- has_or_had_assigned_processor
- creating_agency
- has_or_had_custodian_type
- estimated_extent
- has_or_had_quantity
- hold_or_held_record_set_type
- id
- lifecycle_phase_type
@ -214,14 +215,28 @@ classes:
description: Researcher demand for these records
- value: LOW
description: No immediate need, stable condition
estimated_extent:
range: string
required: false
has_or_had_quantity:
range: Quantity
multivalued: true
inlined: true
description: >-
Estimated or measured extent of the archive (e.g., linear meters, file count).
MIGRATED from estimated_extent per slot_fixes.yaml (Rule 53).
Uses Quantity class with is_estimate=true for estimates.
examples:
- value: 25 linear meters
description: Physical extent
- value: 500 GB, ~50,000 files
description: Digital extent
- value:
quantity_value: 25
has_or_had_measurement_unit:
has_or_had_label: "linear meters"
is_estimate: true
description: Physical extent estimate
- value:
quantity_value: 500
has_or_had_measurement_unit:
has_or_had_symbol: "GB"
has_or_had_description: "~50,000 files"
is_estimate: true
description: Digital extent estimate
is_or_was_stored_at: # was: storage_location - migrated per Rule 53 (2026-01-15)
range: StorageLocation
multivalued: true
@ -356,7 +371,12 @@ classes:
creating_agency: Director's Office
processing_status: UNPROCESSED
processing_priority: MEDIUM
estimated_extent: 12 linear meters (48 boxes)
has_or_had_quantity:
- quantity_value: 12
has_or_had_measurement_unit:
has_or_had_label: "linear meters"
has_or_had_description: "48 boxes"
is_estimate: true
access_restrictions: Restricted - Contains sensitive correspondence
refers_to_custodian: https://nde.nl/ontology/hc/nl-nh-ams-m-rm-q190804
description: Unprocessed director's correspondence awaiting archival processing
@ -372,7 +392,11 @@ classes:
creating_agency: Ministry of Finance
processing_status: IN_ARRANGEMENT
processing_priority: HIGH
estimated_extent: 85 linear meters
has_or_had_quantity:
- quantity_value: 85
has_or_had_measurement_unit:
has_or_had_label: "linear meters"
is_estimate: true
assigned_processor: Dr. Jan de Vries
processing_started_date: '2024-01-10'
has_or_had_notes:

View file

@ -82,12 +82,11 @@ classes:
required: true
endpoint_name:
slot_uri: schema:name
description: 'Human-readable name for this endpoint.
description: >-
Human-readable name for this endpoint.
Examples:
- "Nationaal Archief OAI-PMH Endpoint"
- "Nationaal Archief OAI-PMH Endpoint"
- "Heritage Search API"
- "Image Server (IIP)"
range: string

View file

@ -41,7 +41,8 @@ imports:
# Already importing has_or_had_label, Label, has_or_had_type, LabelType above
- ../slots/is_or_was_dissolved_by
- ./DissolutionEvent
- ../slots/established_date
- ../slots/is_or_was_established_by
- ./EstablishmentEvent
- ../slots/has_or_had_manages_collection
- ../slots/mandate
- ../slots/parent_department
@ -286,7 +287,9 @@ classes:
has_or_had_description:
has_or_had_text: "Preserves and provides access to government records from the Dutch colonial period (1602-1949). Holdings include VOC archives, colonial administration files, and diplomatic correspondence."
mandate: 'Established by Royal Decree of 1891 to manage and preserve records of the Dutch East Indies administration.'
established_date: '1891-06-15'
is_or_was_established_by:
temporal_extent:
begin_of_the_begin: "1891-06-15"
has_or_had_manages_collection:
- https://nde.nl/ontology/hc/collection/na-voc-archives
- https://nde.nl/ontology/hc/collection/na-wic-archives

View file

@ -395,7 +395,7 @@ classes:
- value:
- endpoint_id: https://nde.nl/ontology/hc/endpoint/na-oai-pmh
endpoint_name: Nationaal Archief OAI-PMH
endpoint_url: https://www.nationaalarchief.nl/onderzoeken/oai-pmh
has_or_had_url: https://www.nationaalarchief.nl/onderzoeken/oai-pmh
protocol: OAI_PMH
status: ACTIVE
description: Nationaal Archief data service endpoints

View file

@ -0,0 +1,38 @@
id: https://nde.nl/ontology/hc/class/ETag
name: ETag
title: ETag Class
description: >-
Entity Tag used for web cache validation.
**RULE 53 COMPLIANT**: Created for etag migration per slot_fixes.yaml revision.
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
imports:
- linkml:types
- ../slots/has_or_had_identifier
- ../slots/has_or_had_label
- ../slots/has_or_had_description
- ../slots/specificity_annotation
- ../slots/has_or_had_score
default_prefix: hc
classes:
ETag:
description: >-
Represents an HTTP ETag (Entity Tag) value used for web cache validation.
The ETag value is stored in `has_or_had_label` or `has_or_had_identifier`.
slots:
- has_or_had_identifier
- has_or_had_label
- has_or_had_description
- specificity_annotation
- has_or_had_score
slot_usage:
has_or_had_label:
range: string
required: true
description: The ETag value string (e.g., "33a64df551425fcc55e4d42a148795d9f25f89d4")

View file

@ -31,17 +31,20 @@ classes:
- Abstract entity representation
attributes:
entity_name:
has_or_had_label:
range: string
description: Name of the entity
slot_uri: schema:name
entity_uri:
has_or_had_uri:
range: uriorcurie
description: URI of the entity
slot_uri: schema:url
entity_type:
has_or_had_type:
range: string
description: Type of entity
slot_uri: rdf:type
exact_mappings:
- prov:Entity
@ -55,7 +58,7 @@ classes:
examples:
- value:
entity_name: "Dataset A"
entity_uri: https://nde.nl/dataset/a
entity_type: DATASET
has_or_had_label: "Dataset A"
has_or_had_uri: https://nde.nl/dataset/a
has_or_had_type: DATASET
description: Generic entity reference

View file

@ -0,0 +1,35 @@
id: https://nde.nl/ontology/hc/class/EntityType
name: EntityType
title: Entity Type Class
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
schema: http://schema.org/
skos: http://www.w3.org/2004/02/skos/core#
default_prefix: hc
imports:
- linkml:types
- ../metadata
- ../slots/has_or_had_label
- ../slots/has_or_had_identifier
classes:
EntityType:
class_uri: skos:Concept
description: >-
Classification of an Entity (e.g. Person, Place, Organization).
**Ontology Alignment**:
- **Primary**: `skos:Concept`
- **Close**: `rdfs:Class`
slots:
- has_or_had_label
- has_or_had_identifier
annotations:
custodian_types: '["*"]'
specificity_score: 0.1
specificity_rationale: Fundamental classification.

View file

@ -0,0 +1,35 @@
id: https://nde.nl/ontology/hc/class/EnvironmentalControl
name: EnvironmentalControl
title: Environmental Control Class
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
schema: http://schema.org/
sosa: http://www.w3.org/ns/sosa/
default_prefix: hc
imports:
- linkml:types
- ../metadata
- ../slots/has_or_had_label
- ../slots/has_or_had_description
classes:
EnvironmentalControl:
class_uri: sosa:Actuation
description: >-
A control or mechanism for managing environmental conditions (e.g. HVAC, Dehumidifier).
**Ontology Alignment**:
- **Primary**: `sosa:Actuation` (Control action/device)
- **Close**: `schema:Product` (Equipment)
slots:
- has_or_had_label
- has_or_had_description
annotations:
custodian_types: '["*"]'
specificity_score: 0.3
specificity_rationale: Conservation metadata.

View file

@ -0,0 +1,35 @@
id: https://nde.nl/ontology/hc/class/EnvironmentalRequirement
name: EnvironmentalRequirement
title: Environmental Requirement Class
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
schema: http://schema.org/
dcterms: http://purl.org/dc/terms/
default_prefix: hc
imports:
- linkml:types
- ../metadata
- ../slots/has_or_had_label
- ../slots/has_or_had_description
classes:
EnvironmentalRequirement:
class_uri: schema:PropertyValue
description: >-
A requirement for environmental conditions (e.g. Temperature range, RH range).
**Ontology Alignment**:
- **Primary**: `schema:PropertyValue`
- **Close**: `dcterms:requires`
slots:
- has_or_had_label
- has_or_had_description
annotations:
custodian_types: '["*"]'
specificity_score: 0.3
specificity_rationale: Conservation standards.

View file

@ -23,7 +23,8 @@ imports:
- ./TemperatureDeviation
- ../slots/humidity_tolerance
- ../slots/contains_or_contained_contains_unit
- ../slots/environmental_requirement
- ../slots/has_or_had_requirement
- ./EnvironmentalRequirement
- ../slots/max_annual_light_exposure
- ../slots/max_light_lux
- ../slots/monitoring_platform

View file

@ -207,9 +207,16 @@ classes:
slot_usage:
has_or_had_identifier:
range: uriorcurie
identifier: true
required: true
has_or_had_short_code:
required: true
description: Short code for the zone type (e.g. "AA", "B").
has_or_had_label:
required: true
description: Name of the zone type.
has_or_had_description:
required: true
description: Description of environmental conditions for this zone.
pattern: "^https://nde\\.nl/ontology/hc/environmental-zone-type/[a-z0-9-]+$"
examples:
- value: https://nde.nl/ontology/hc/environmental-zone-type/archive-standard

View file

@ -0,0 +1,43 @@
id: https://nde.nl/ontology/hc/class/Equipment
name: Equipment
title: Equipment Class
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
schema: http://schema.org/
sosa: http://www.w3.org/ns/sosa/
default_prefix: hc
imports:
- linkml:types
- ../metadata
- ../slots/has_or_had_label
- ../slots/has_or_had_description
- ../slots/has_or_had_type
- ./EquipmentType
classes:
Equipment:
class_uri: sosa:Platform
description: >-
Physical equipment or device.
**Ontology Alignment**:
- **Primary**: `sosa:Platform` (Device host)
- **Close**: `schema:Product`
slots:
- has_or_had_label
- has_or_had_description
- has_or_had_type
slot_usage:
has_or_had_type:
range: EquipmentType
description: Type of equipment (e.g. Microscope, Scanner).
annotations:
custodian_types: '["*"]'
specificity_score: 0.3
specificity_rationale: Generic equipment.

View file

@ -0,0 +1,35 @@
id: https://nde.nl/ontology/hc/class/EquipmentType
name: EquipmentType
title: Equipment Type Class
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
schema: http://schema.org/
skos: http://www.w3.org/2004/02/skos/core#
default_prefix: hc
imports:
- linkml:types
- ../metadata
- ../slots/has_or_had_label
- ../slots/has_or_had_identifier
classes:
EquipmentType:
class_uri: skos:Concept
description: >-
Type classification for equipment (e.g. Imaging Equipment, Lab Equipment).
**Ontology Alignment**:
- **Primary**: `skos:Concept`
- **Close**: `schema:definedTerm`
slots:
- has_or_had_label
- has_or_had_identifier
annotations:
custodian_types: '["*"]'
specificity_score: 0.4
specificity_rationale: Equipment classification.

View file

@ -0,0 +1,36 @@
id: https://nde.nl/ontology/hc/class/EquipmentTypes
name: EquipmentTypes
title: Equipment Types
description: |
Concrete subclasses of EquipmentType for heritage domain.
Categories:
- Conservation (microscopes, suction tables)
- Digitization (scanners, cameras)
- Storage (shelving, cabinets)
- Analytical (spectrometers, XRF)
imports:
- linkml:types
- ./EquipmentType
classes:
ConservationEquipmentType:
is_a: EquipmentType
description: Equipment used for conservation treatments.
DigitizationEquipmentType:
is_a: EquipmentType
description: Equipment used for digitization and imaging.
ImagingEquipmentType:
is_a: EquipmentType
description: specialized imaging equipment (multispectral, RTI).
StorageEquipmentType:
is_a: EquipmentType
description: Furniture and equipment for collection storage.
AnalyticalEquipmentType:
is_a: EquipmentType
description: Scientific equipment for material analysis.

View file

@ -0,0 +1,42 @@
id: https://nde.nl/ontology/hc/class/EstablishmentEvent
name: EstablishmentEvent
title: Establishment Event Class
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
schema: http://schema.org/
org: http://www.w3.org/ns/org#
prov: http://www.w3.org/ns/prov#
default_prefix: hc
imports:
- linkml:types
- ../metadata
- ../slots/temporal_extent
- ./TimeSpan
- ../slots/has_or_had_description
classes:
EstablishmentEvent:
class_uri: org:ChangeEvent
description: >-
The event of establishing an organization, department, or entity.
**Ontology Alignment**:
- **Primary**: `org:ChangeEvent` (Organizational change)
- **Close**: `schema:foundingDate` (as event)
slots:
- temporal_extent
- has_or_had_description
slot_usage:
temporal_extent:
description: Date/time of establishment.
required: true
annotations:
custodian_types: '["*"]'
specificity_score: 0.3
specificity_rationale: Organizational history.

View file

@ -0,0 +1,49 @@
id: https://nde.nl/ontology/hc/class/EstimationMethod
name: EstimationMethod
title: Estimation Method Class
description: >-
Defines the specific method used to estimate a quantity.
**RULE 53 COMPLIANT**: Created for estimated_extent/estimated_volume
migration per slot_fixes.yaml revision.
**PROV-O ALIGNMENT**:
Maps to `prov:Plan` - "A plan is an entity that represents a set of actions or
steps intended by one or more agents to achieve some goals."
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
prov: http://www.w3.org/ns/prov#
schema: http://schema.org/
imports:
- linkml:types
- ../slots/has_or_had_identifier
- ../slots/has_or_had_label
- ../slots/has_or_had_description
- ../slots/specificity_annotation
- ../slots/has_or_had_score
default_prefix: hc
classes:
EstimationMethod:
class_uri: prov:Plan
description: >-
Describes the specific technique used to estimate a value (e.g., visual inspection,
sampling, extrapolation).
Used in conjunction with `is_or_was_based_on` to provide provenance for estimated quantities.
exact_mappings:
- prov:Plan
slots:
- has_or_had_identifier
- has_or_had_label
- has_or_had_description
- specificity_annotation
- has_or_had_score
slot_usage:
has_or_had_label:
range: string
description: Name of the estimation method (e.g., "Visual Inspection", "Sampling").

View file

@ -14,17 +14,17 @@ default_prefix: hc
imports:
- linkml:types
- ./TimeSpan
- ../enums/EventTypeEnum
- ../slots/event_description
- ../slots/event_id
- ../slots/has_or_had_documentation
- ../slots/has_or_had_url
- ./Documentation
- ./URL
- ../slots/event_label
# MIGRATED 2026-01-26: event_description/event_id/event_label/hypernym_event_type → generic slots (Rule 53)
- ../slots/has_or_had_description
- ../slots/has_or_had_identifier
- ../slots/has_or_had_label
- ../slots/has_or_had_hypernym
- ./Description
- ./Identifier
- ./Label
- ./EventType
# MIGRATED 2026-01-26: has_timespan → temporal_extent (Rule 53)
- ../slots/temporal_extent
- ../slots/hypernym_event_type
- ../slots/has_or_had_involved_actor
- ../slots/specificity_annotation
- ../slots/has_or_had_score # was: template_specificity - migrated per Rule 53 (2026-01-17)
@ -89,23 +89,41 @@ classes:
- crm:E86_Leaving
slots:
- has_or_had_documentation
- event_description
- event_id
- event_label
# MIGRATED 2026-01-26: event_* slots → generic slots
- has_or_had_description
- has_or_had_identifier
- has_or_had_label
- has_or_had_hypernym
# MIGRATED 2026-01-26: has_timespan → temporal_extent
- temporal_extent
- hypernym_event_type
- has_or_had_involved_actor
- specificity_annotation
- has_or_had_score # was: template_specificity - migrated per Rule 53 (2026-01-17)
- takes_or_took_place_at # was: took_place_at - migrated per Rule 53
- is_or_was_generated_by # MIGRATED 2026-01-19: replaces confidence_score
slot_usage:
event_id:
has_or_had_identifier:
required: true
identifier: true
hypernym_event_type:
description: >-
Unique identifier for this event.
MIGRATED from event_id (2026-01-26).
has_or_had_hypernym:
required: true
range: EventTypeEnum
description: >-
High-level classification of the event (e.g. TRANSFORMATION, DESTRUCTION).
MIGRATED from hypernym_event_type (2026-01-26).
has_or_had_label:
required: true
description: >-
Label/name of the event.
MIGRATED from event_label (2026-01-26).
has_or_had_description:
required: false
description: >-
Description of the event.
MIGRATED from event_description (2026-01-26).
temporal_extent:
required: false
range: TimeSpan
@ -131,14 +149,14 @@ classes:
- Domain-specific events (OrganizationalChangeEvent, CollectionEvent) can inherit from Event
- TimeSpan link (temporal_extent) is critical - enables fuzzy temporal reasoning
- Actor links (involved_actors) connect events to both persons and organizations
- hypernym_event_type provides cross-domain event queries
- has_or_had_hypernym provides cross-domain event queries
- 'Future: Add participated_in_events slot to Custodian and Person for inverse navigation'
- 'MIGRATED 2026-01-19: confidence_score → is_or_was_generated_by + ConfidenceScore'
examples:
- value:
event_id: https://nde.nl/ontology/hc/event/nha-merger-2001
event_label: Noord-Hollands Archief Merger
hypernym_event_type: TRANSFORMATION
has_or_had_identifier: https://nde.nl/ontology/hc/event/nha-merger-2001
has_or_had_label: Noord-Hollands Archief Merger
has_or_had_hypernym: TRANSFORMATION
temporal_extent:
begin_of_the_begin: '2001-01-01'
end_of_the_end: '2001-01-01'

View file

@ -24,26 +24,26 @@ imports:
# REMOVED 2026-01-15: ../slots/wikidata_id - migrated to has_or_had_identifier + WikiDataIdentifier (Rule 53)
- ../slots/has_or_had_identifier
- ./WikiDataIdentifier
- ../slots/exhibition_type
- ../slots/has_or_had_type # was: exhibition_type - migrated per Rule 53 (2026-01-26)
# REMOVED 2026-01-19: co_organized_by - migrated to has_or_had_organizer + Organizer (Rule 53)
- ../slots/has_or_had_organizer
- ./Organizer
- ./OrganizerRole
- ../slots/curated_by
- ../slots/has_or_had_custodian_type
- ../slots/exhibition_catalog_url
- ../slots/has_or_had_exhibition_catalog
- ../slots/exhibition_description
- ../slots/exhibition_documentation
- ../slots/exhibition_id
- ../slots/exhibition_location
- ../slots/exhibition_name
- ../slots/exhibition_status
- ../slots/exhibition_subtitle
- ../slots/has_or_had_description # was: exhibition_description - migrated per Rule 53 (2026-01-26)
- ../slots/has_or_had_documentation # was: exhibition_documentation - migrated per Rule 53 (2026-01-26)
- ./Documentation
- ../slots/is_or_was_located_at # was: exhibition_location - migrated per Rule 53 (2026-01-26)
- ../slots/has_or_had_label # was: exhibition_name, exhibition_subtitle - migrated per Rule 53 (2026-01-26)
- ./Label
- ../slots/has_or_had_status # was: exhibition_status - migrated per Rule 53 (2026-01-26)
# MIGRATED 2026-01-26: exhibition_timespan → temporal_extent
# - ../slots/exhibition_timespan
- ../slots/exhibition_url
- ../slots/exhibition_venue
- ../slots/has_or_had_url # was: exhibition_url - migrated per Rule 53 (2026-01-26)
- ./URL
- ../slots/is_or_was_located_in # was: exhibition_venue - migrated per Rule 53 (2026-01-26)
- ../slots/has_or_had_featured_object
- ../slots/featured_work
- ../slots/organized_by
@ -102,19 +102,18 @@ classes:
- has_or_had_custodian_type
# MIGRATED 2026-01-26: start_date/end_date/exhibition_timespan → temporal_extent
- temporal_extent
- exhibition_catalog_url
# REMOVED 2026-01-26: exhibition_catalog_url - migrated to has_or_had_exhibition_catalog (URL inside catalog)
- has_or_had_exhibition_catalog
- exhibition_description
- exhibition_documentation
- exhibition_id
- exhibition_location
- exhibition_name
- exhibition_status
- exhibition_subtitle
- has_or_had_description # was: exhibition_description - migrated per Rule 53 (2026-01-26)
- has_or_had_documentation # was: exhibition_documentation - migrated per Rule 53 (2026-01-26)
# exhibition_id migrated to has_or_had_identifier (already in list below)
- is_or_was_located_at # was: exhibition_location - migrated per Rule 53 (2026-01-26)
- has_or_had_label # was: exhibition_name, exhibition_subtitle - migrated per Rule 53 (2026-01-26)
- has_or_had_status # was: exhibition_status - migrated per Rule 53 (2026-01-26)
# - exhibition_timespan (migrated to temporal_extent)
- exhibition_type
- exhibition_url
- exhibition_venue
- has_or_had_type # was: exhibition_type - migrated per Rule 53 (2026-01-26)
- has_or_had_url # was: exhibition_url - migrated per Rule 53 (2026-01-26)
- is_or_was_located_in # was: exhibition_venue - migrated per Rule 53 (2026-01-26)
- has_or_had_featured_object
- featured_work
- organized_by
@ -128,38 +127,37 @@ classes:
# REMOVED 2026-01-15: wikidata_id - migrated to has_or_had_identifier (Rule 53)
- has_or_had_identifier
slot_usage:
exhibition_id:
has_or_had_identifier: # was: exhibition_id - migrated per Rule 53 (2026-01-26)
identifier: true
required: true
range: uriorcurie
examples:
- value: https://nde.nl/ontology/hc/exhibition/rijksmuseum-vermeer-2023
- value: https://nde.nl/ontology/hc/exhibition/moma-picasso-retrospective-2024
exhibition_name:
has_or_had_label: # was: exhibition_name, exhibition_subtitle - migrated per Rule 53 (2026-01-26)
required: true
range: string
multivalued: true
description: >-
Name and subtitle of the exhibition.
First value is the primary name.
examples:
- value: Vermeer
description: Primary exhibition name
- value: 'Impressionism: Origins and Legacy'
- value: Treasures from the National Archives
exhibition_subtitle:
required: false
range: string
examples:
- value: The Master of Light and Shadow
description: Exhibition subtitle
- value: 150 Years of Revolutionary Art
exhibition_description:
has_or_had_description: # was: exhibition_description - migrated per Rule 53 (2026-01-26)
required: false
range: string
examples:
- value: 'The largest Vermeer exhibition ever mounted, bringing together
28 of the Dutch master''s 37 known paintings. A once-in-a-lifetime
opportunity to see works from collections worldwide.
'
exhibition_type:
has_or_had_type: # was: exhibition_type - migrated per Rule 53 (2026-01-26)
required: false
range: ExhibitionTypeEnum
examples:
@ -231,7 +229,7 @@ classes:
end_of_the_begin: '2023-02-10T23:59:59Z'
begin_of_the_end: '2023-06-04T00:00:00Z'
end_of_the_end: '2023-06-04T23:59:59Z'
exhibition_location:
is_or_was_located_at: # was: exhibition_location - migrated per Rule 53 (2026-01-26)
required: false
range: CustodianPlace
multivalued: true
@ -241,14 +239,14 @@ classes:
place_name: Rijksmuseum
city: Amsterdam
country: NL
exhibition_venue:
is_or_was_located_in: # was: exhibition_venue - migrated per Rule 53 (2026-01-26)
required: false
range: string
examples:
- value: Philips Wing
- value: Gallery of Honour
- value: East Wing Galleries
exhibition_status:
has_or_had_status: # was: exhibition_status - migrated per Rule 53 (2026-01-26)
required: false
range: EventStatusEnum
examples:
@ -272,16 +270,12 @@ classes:
end_of_the_end: "2023-06-04T23:59:59Z"
has_or_had_description: Vermeer exhibition attendance
description: Exhibition visitor count with temporal extent
exhibition_url:
has_or_had_url: # was: exhibition_url - migrated per Rule 53 (2026-01-26)
required: false
range: uri
examples:
- value: https://www.rijksmuseum.nl/nl/vermeer
exhibition_catalog_url:
required: false
range: uri
examples:
- value: https://www.rijksmuseum.nl/nl/webshop/catalogus-vermeer
# REMOVED 2026-01-26: exhibition_catalog_url - migrated to has_or_had_exhibition_catalog (URL inside catalog)
featured_work:
required: false
range: string
@ -339,22 +333,7 @@ classes:
venue_name: "National Gallery, London"
venue_dates: "Jul 1 - Oct 15, 2023"
description: Second traveling venue
# MIGRATED 2026-01-15: wikidata_id → has_or_had_identifier + WikiDataIdentifier (Rule 53)
has_or_had_identifier:
description: |
Wikidata entity identifier (Q-number) for this exhibition.
MIGRATED 2026-01-15: Replaces wikidata_id slot per Rule 53.
required: false
range: WikiDataIdentifier
multivalued: true
inlined: true
inlined_as_list: true
examples:
- value:
qid: "Q111456814"
label: "Vermeer exhibition 2023"
description: Vermeer exhibition 2023 Wikidata identifier
exhibition_documentation:
has_or_had_documentation: # was: exhibition_documentation - migrated per Rule 53 (2026-01-26)
required: false
range: uri
multivalued: true
@ -378,17 +357,18 @@ classes:
- https://cidoc-crm.org/html/cidoc_crm_v7.1.3.html#E5
examples:
- value:
exhibition_id: https://nde.nl/ontology/hc/exhibition/rijksmuseum-vermeer-2023
exhibition_name: Vermeer
exhibition_subtitle: The greatest Vermeer exhibition ever
exhibition_description: 'The largest Vermeer exhibition ever mounted, bringing together
has_or_had_identifier: https://nde.nl/ontology/hc/exhibition/rijksmuseum-vermeer-2023
has_or_had_label:
- Vermeer
- The greatest Vermeer exhibition ever
has_or_had_description: 'The largest Vermeer exhibition ever mounted, bringing together
28 of the Dutch master''s 37 known paintings. A once-in-a-lifetime
opportunity to see works from collections worldwide.
'
exhibition_type: BLOCKBUSTER
has_or_had_type: BLOCKBUSTER
# MIGRATED 2026-01-19: organized_by/co_organized_by → has_or_had_organizer + Organizer (Rule 53)
has_or_had_organizer:
- organizer_entity: https://nde.nl/ontology/hc/custodian/nl/rijksmuseum
@ -404,12 +384,12 @@ classes:
temporal_extent:
begin_of_the_begin: '2023-02-10'
end_of_the_end: '2023-06-04'
exhibition_location:
is_or_was_located_at:
- place_name: Rijksmuseum
city: Amsterdam
country: NL
exhibition_venue: Philips Wing
exhibition_status: COMPLETED
is_or_was_located_in: Philips Wing
has_or_had_status: COMPLETED
has_or_had_quantity:
quantity_value: 650000
quantity_type: VISITOR_COUNT
@ -420,7 +400,7 @@ classes:
begin_of_the_begin: "2023-02-10T00:00:00Z"
end_of_the_end: "2023-06-04T23:59:59Z"
has_or_had_description: Vermeer exhibition attendance
exhibition_url: https://www.rijksmuseum.nl/nl/vermeer
has_or_had_url: https://www.rijksmuseum.nl/nl/vermeer
has_or_had_featured_object:
- https://nde.nl/ontology/hc/object/mauritshuis-girl-pearl-earring
- https://nde.nl/ontology/hc/object/rijksmuseum-milkmaid
@ -433,15 +413,13 @@ classes:
- Woman Reading a Letter (Rijksmuseum)
has_or_had_exhibition_catalog:
- https://nde.nl/ontology/hc/catalog/rijksmuseum-vermeer-2023
has_or_had_identifier:
- qid: "Q111456814"
label: "Vermeer exhibition 2023"
description: Vermeer blockbuster exhibition at Rijksmuseum (2023) - demonstrates typed object and catalog links
- value:
exhibition_id: https://nde.nl/ontology/hc/exhibition/nationaal-archief-ww2-voices-2024
exhibition_name: Voices from the War
exhibition_subtitle: Personal Stories from World War II Archives
exhibition_type: ARCHIVAL
has_or_had_identifier: https://nde.nl/ontology/hc/exhibition/nationaal-archief-ww2-voices-2024
has_or_had_label:
- Voices from the War
- Personal Stories from World War II Archives
has_or_had_type: ARCHIVAL
has_or_had_organizer:
- organizer_entity: https://nde.nl/ontology/hc/custodian/nl/nationaal-archief
has_or_had_role:
@ -449,28 +427,28 @@ classes:
temporal_extent:
begin_of_the_begin: '2024-05-04'
end_of_the_end: '2024-11-11'
exhibition_location:
is_or_was_located_at:
- place_name: Nationaal Archief
city: Den Haag
country: NL
exhibition_status: COMPLETED
has_or_had_status: COMPLETED
description: Archival exhibition of WWII personal documents
- value:
exhibition_id: https://nde.nl/ontology/hc/exhibition/rijksmuseum-gallery-of-honour
exhibition_name: Gallery of Honour
exhibition_description: 'The Rijksmuseum''s permanent display of Dutch Golden Age masterpieces,
has_or_had_identifier: https://nde.nl/ontology/hc/exhibition/rijksmuseum-gallery-of-honour
has_or_had_label: Gallery of Honour
has_or_had_description: 'The Rijksmuseum''s permanent display of Dutch Golden Age masterpieces,
featuring works by Rembrandt, Vermeer, Frans Hals, and Jan Steen.
Culminates in Rembrandt''s Night Watch.
'
exhibition_type: PERMANENT
has_or_had_type: PERMANENT
has_or_had_organizer:
- organizer_entity: https://nde.nl/ontology/hc/custodian/nl/rijksmuseum
has_or_had_role:
role_type: PRIMARY
exhibition_venue: Gallery of Honour (Eregalerij)
is_or_was_located_in: Gallery of Honour (Eregalerij)
featured_work:
- The Night Watch (Rembrandt)
- The Merry Drinker (Frans Hals)

View file

@ -19,15 +19,17 @@ imports:
- ../slots/exhibition_type
- ../slots/museum_type_classification
- ../slots/gallery_type_classification
- ../slots/exhibition_floor_area_sqm
- ../slots/exhibition_capacity
- ../slots/has_or_had_area # was: exhibition_floor_area_sqm - migrated per Rule 53 (2026-01-26)
- ./Area
- ../slots/has_or_had_capacity # was: exhibition_capacity - migrated per Rule 53 (2026-01-26)
- ./Capacity
- ../slots/has_climate_control
- ../slots/has_security_system
- ../slots/is_accessible
- ../slots/opening_hour
- ../slots/has_or_had_admission_fee
- ../slots/current_exhibition
- ../slots/exhibition_schedule
- ../slots/has_or_had_schedule # was: exhibition_schedule - migrated per Rule 53 (2026-01-26)
- ../slots/is_permanent
- ../slots/partner_institution
- ../slots/specificity_annotation
@ -71,8 +73,8 @@ classes:
3. **Partner Venue**: Space in another institution\n4. **Pop-up Gallery**: Temporary exhibition venue\n5. **Outdoor\
\ Exhibition**: Open-air display area\n6. **Project Space**: Experimental/contemporary art space\n\n**USE CASES**:\n\
\n1. **Museum Satellite Gallery**:\n ```yaml\n ExhibitionSpace:\n has_or_had_identifier: \"https://nde.nl/ontology/hc/aux/rijksmuseum-schiphol-gallery\"\
\n has_or_had_label:\n label_text: \"Rijksmuseum Schiphol\"\n museum_type_classification: ART_MUSEUM\n exhibition_type:\
\ SATELLITE_GALLERY\n exhibition_floor_area_sqm: 200\n ```\n\n2. **Contemporary Art Project Space**:\n ```yaml\n\
\n has_or_had_label:\n label_text: \"Rijksmuseum Schiphol\"\n museum_type_classification: ART_MUSEUM\n exhibition_type:\
\ SATELLITE_GALLERY\n has_or_had_area:\n quantity_value: 200\n ```\n\n2. **Contemporary Art Project Space**:\n ```yaml\n\
\ ExhibitionSpace:\n has_or_had_label:\n label_text: \"Stedelijk Museum Project Space\"\n gallery_type_classification:\
\ PROJECT_SPACE\n exhibition_type: PROJECT_SPACE\n focuses_on_contemporary: true\n ```\n"
exact_mappings:
@ -87,9 +89,9 @@ classes:
slots:
- has_or_had_admission_fee
- current_exhibition
- exhibition_capacity
- exhibition_floor_area_sqm
- exhibition_schedule
- has_or_had_capacity
- has_or_had_area
- has_or_had_schedule # was: exhibition_schedule - migrated per Rule 53 (2026-01-26)
# MIGRATED 2026-01-15: exhibition_space_* slots replaced with shared slots per Rule 53
- has_or_had_identifier # was: exhibition_space_id
- has_or_had_label # was: exhibition_space_name
@ -162,15 +164,26 @@ classes:
description: Art gallery classification
- value: KUNSTHALLE
description: Kunsthalle classification
exhibition_floor_area_sqm:
range: float
has_or_had_area: # was: exhibition_floor_area_sqm - migrated per Rule 53 (2026-01-26)
range: Area
inlined: true
examples:
- value: 200.0
- value:
quantity_value: 200.0
has_or_had_unit:
has_or_had_type: SQUARE_METER
has_or_had_symbol: "m²"
description: 200 m² gallery
exhibition_capacity:
range: integer
has_or_had_capacity: # was: exhibition_capacity - migrated per Rule 53 (2026-01-26)
range: Capacity
inlined: true
examples:
- value: 50
- value:
has_or_had_quantity:
quantity_value: 50
has_or_had_unit:
unit_value: "person"
has_or_had_type: SeatingCapacity
description: 50 visitors maximum
has_climate_control:
range: boolean
@ -204,7 +217,7 @@ classes:
examples:
- value: Highlights from the Golden Age
description: Current exhibition
exhibition_schedule:
has_or_had_schedule: # was: exhibition_schedule - migrated per Rule 53 (2026-01-26)
range: string
examples:
- value: Exhibitions rotate quarterly
@ -247,15 +260,24 @@ classes:
description_text: Free gallery at Schiphol Airport featuring rotating highlights from the Rijksmuseum collection.
exhibition_type: SATELLITE_GALLERY
museum_type_classification: ART_MUSEUM
exhibition_floor_area_sqm: 200.0
exhibition_capacity: 75
has_or_had_area:
quantity_value: 200.0
has_or_had_unit:
has_or_had_type: SQUARE_METER
has_or_had_symbol: "m²"
has_or_had_capacity:
has_or_had_quantity:
quantity_value: 75
has_or_had_unit:
unit_value: "person"
has_or_had_type: SeatingCapacity
has_climate_control: true
has_security_system: true
is_accessible: true
opening_hour: Daily 07:00-20:00
has_or_had_admission_fee: Free
current_exhibition: 'Dutch Masters: Highlights from the Golden Age'
exhibition_schedule: Exhibitions rotate every 6 months
has_or_had_schedule: Exhibitions rotate every 6 months
is_permanent: true
partner_institution: Schiphol Group
description: Museum airport satellite gallery
@ -267,7 +289,11 @@ classes:
description_text: Project space for emerging contemporary artists and experimental exhibitions.
exhibition_type: PROJECT_SPACE
gallery_type_classification: PROJECT_SPACE
exhibition_floor_area_sqm: 150.0
has_or_had_area:
quantity_value: 150.0
has_or_had_unit:
has_or_had_type: SQUARE_METER
has_or_had_symbol: "m²"
has_climate_control: true
opening_hour: We-Su 11:00-17:00
has_or_had_admission_fee: Free

View file

@ -200,8 +200,9 @@ imports:
- ../slots/finding_aid_temporal_coverage
- ../slots/finding_aid_access_restriction
- ../slots/has_link
- ../slots/event
- ../slots/event_en
# REMOVED 2026-01-26: event, event_en - migrated to has_or_had_description + Description (Rule 53)
# - ../slots/event
# - ../slots/event_en
# REMOVED 2026-01-18: ../slots/claim_source_url - unused import, slot migrated to has_or_had_url + URL (Rule 53)
- ../enums/ExternalResourceTypeEnum
- ../enums/SubGuideTypeEnum
@ -597,23 +598,22 @@ classes:
Used for key_dates within TemporalCoverage.
'
attributes:
date_value:
slots:
- date
- has_or_had_description
- specificity_annotation
- has_or_had_score # was: template_specificity - migrated per Rule 53 (2026-01-17)
slot_usage:
date:
description: ISO 8601 date (YYYY-MM-DD or YYYY)
range: string
required: true
aliases:
- date
event:
description: Description of what happened (Dutch or original)
range: string
has_or_had_description:
description: Description of what happened (multilingual support)
range: Description
multivalued: true
inlined: true
required: true
event_en:
description: English translation of event description
range: string
slots:
- specificity_annotation
- has_or_had_score # was: template_specificity - migrated per Rule 53 (2026-01-17)
GeographicCoverage:
class_uri: dcterms:Location
description: 'Geographic area covered by the finding aid''s materials.

View file

@ -12,23 +12,34 @@ imports:
# REMOVED 2026-01-15: ../slots/wikidata_id - migrated to has_or_had_identifier + WikiDataIdentifier (Rule 53)
- ../slots/has_or_had_identifier
- ./WikiDataIdentifier
- ../slots/event_id
# MIGRATED 2026-01-26: event_* slots → generic slots (Rule 53)
- ../slots/has_or_had_description
- ../slots/is_or_was_located_at
- ../slots/has_or_had_label
- ../slots/has_or_had_status
- ../slots/has_or_had_url
- ../slots/is_or_was_located_in
# - ../slots/event_id
- ../slots/has_or_had_audience_size
- ../slots/has_or_had_custodian_type
- ../slots/has_or_had_edition
- ./Edition
- ../slots/event_cancelled_reason
- ../slots/event_date_end
- ../slots/event_date_start
- ../slots/event_description
- ../slots/is_or_was_cancelled_by
- ./Cancellation
# MIGRATED 2026-01-26: event_cancelled_reason → is_or_was_cancelled_by + Cancellation (Rule 53)
# - ../slots/event_cancelled_reason
# - ../slots/event_date_end
# - ../slots/event_date_start
# - ../slots/event_description
- ../slots/event_documentation
- ../slots/event_location
- ../slots/event_name
- ../slots/event_status
- ../slots/event_timespan
- ../slots/event_url
- ../slots/event_venue
# - ../slots/event_location
# - ../slots/event_name
# - ../slots/event_status
# - ../slots/event_timespan
# - ../slots/event_url
# - ../slots/event_venue
- ../slots/instance_of
- ../slots/temporal_extent # MIGRATED from event_timespan (2026-01-26)
- ../slots/organized_by
- ../slots/participant_count
- ../slots/has_or_had_related_event
@ -73,21 +84,30 @@ classes:
- schema:SocialEvent
- crm:E4_Period
slots:
- audience_size
- has_or_had_audience_size
- has_or_had_custodian_type
- has_or_had_edition
- event_cancelled_reason
- event_date_end
- event_date_start
- event_description
- is_or_was_cancelled_by
# MIGRATED 2026-01-26: event_* slots → generic slots
- temporal_extent
- has_or_had_description
- has_or_had_identifier
- is_or_was_located_at
- has_or_had_label
- has_or_had_status
- has_or_had_url
- is_or_was_located_in
# - event_date_end
# - event_date_start
# - event_description
- event_documentation
- event_id
- event_location
- event_name
- event_status
- event_timespan
- event_url
- event_venue
# - event_id
# - event_location
# - event_name
# - event_status
# - event_timespan
# - event_url
# - event_venue
- instance_of
- organized_by
- participant_count
@ -95,24 +115,33 @@ classes:
- specificity_annotation
- has_or_had_score # was: template_specificity - migrated per Rule 53 (2026-01-17)
# REMOVED 2026-01-15: wikidata_id - migrated to has_or_had_identifier (Rule 53)
- has_or_had_identifier
# - has_or_had_identifier - DUPLICATE removed
slot_usage:
event_id:
has_or_had_identifier:
identifier: true
required: true
range: uriorcurie
description: >-
Unique identifier for this intangible heritage event.
MIGRATED from event_id (2026-01-26).
examples:
- value: https://nde.nl/ontology/hc/heritage-event/pride-amsterdam-2024
event_name:
has_or_had_label:
required: true
range: string
description: >-
Name of the event.
MIGRATED from event_name (2026-01-26).
examples:
- value: Pride Amsterdam 2024
- value: Carnaval Maastricht 2025
- value: 1 aprilviering Brielle 2024
event_description:
has_or_had_description:
required: false
range: string
description: >-
Description of the event occurrence.
MIGRATED from event_description (2026-01-26).
examples:
- value: "Pride Amsterdam 2024 celebrated \"Proud of Every Body\" with 80 \nboats in the Canal Parade, attracting\
\ over 500,000 spectators.\n"
@ -134,34 +163,41 @@ classes:
has_or_had_identifier: "29"
has_or_had_label: "29th Edition"
description: Pride Amsterdam 2024
event_date_start:
required: true
range: date
examples:
- value: '2024-08-03'
event_date_end:
required: false
range: date
examples:
- value: '2024-08-10'
description: Pride Amsterdam typically lasts a week
event_timespan:
temporal_extent:
required: false
range: TimeSpan
event_location:
inlined: true
description: >-
Temporal extent of the event.
Replaces event_date_start, event_date_end, event_timespan (migrated 2026-01-26).
examples:
- value:
begin_of_the_begin: '2024-08-03'
end_of_the_end: '2024-08-10'
description: Pride Amsterdam typically lasts a week
is_or_was_located_at:
required: false
range: CustodianPlace
multivalued: true
inlined_as_list: true
inlined: true
description: >-
Location where the event took place.
MIGRATED from event_location (2026-01-26).
examples:
- value:
place_name: Amsterdam Canal Ring
place_specificity: DISTRICT
event_venue:
is_or_was_located_in:
required: false
range: string
range: Venue
inlined: true
multivalued: true
description: >-
Specific venue where the event took place.
MIGRATED from event_venue (2026-01-26).
examples:
- value: Museumplein Amsterdam
- value:
has_or_had_label: Museumplein Amsterdam
organized_by:
required: false
range: Custodian
@ -181,20 +217,32 @@ classes:
examples:
- value: 500000
description: Pride Amsterdam spectators
event_status:
has_or_had_status:
required: false
range: EventStatusEnum
description: >-
Status of the event.
MIGRATED from event_status (2026-01-26).
examples:
- value: COMPLETED
event_cancelled_reason:
is_or_was_cancelled_by:
required: false
range: string
range: Cancellation
inlined: true
description: >-
Cancellation details if the event was cancelled.
MIGRATED from event_cancelled_reason (2026-01-26).
examples:
- value: COVID-19 pandemic restrictions
- value:
has_or_had_rationale:
has_or_had_label: "COVID-19 pandemic restrictions"
description: Pride Amsterdam 2020 cancellation
event_url:
has_or_had_url:
required: false
range: uri
description: >-
URL for the event.
MIGRATED from event_url (2026-01-26).
examples:
- value: https://pride.amsterdam/2024
event_documentation:
@ -238,9 +286,9 @@ classes:
- https://cidoc-crm.org/html/cidoc_crm_v7.1.3.html#E7
examples:
- value:
event_id: https://nde.nl/ontology/hc/heritage-event/pride-amsterdam-2024
event_name: Pride Amsterdam 2024
event_description: 'The 29th edition of Pride Amsterdam with theme "Proud of Every Body".
has_or_had_identifier: https://nde.nl/ontology/hc/heritage-event/pride-amsterdam-2024
has_or_had_label: Pride Amsterdam 2024
has_or_had_description: 'The 29th edition of Pride Amsterdam with theme "Proud of Every Body".
Featured 80 boats in the Canal Parade with over 500,000 spectators.
@ -248,22 +296,23 @@ classes:
instance_of: https://nde.nl/ontology/hc/heritage-form/pride-amsterdam
has_or_had_edition:
- has_or_had_identifier: "29"
event_date_start: '2024-08-03'
event_date_end: '2024-08-10'
event_location:
temporal_extent:
begin_of_the_begin: '2024-08-03'
end_of_the_end: '2024-08-10'
is_or_was_located_at:
- place_name: Amsterdam Canal Ring
place_specificity: DISTRICT
organized_by:
- hc_id: https://nde.nl/ontology/hc/custodian/nl/amsterdam-gay-pride
participant_count: 5000
audience_size: 500000
event_status: COMPLETED
event_url: https://pride.amsterdam/2024
has_or_had_status: COMPLETED
has_or_had_url: https://pride.amsterdam/2024
description: Pride Amsterdam 2024 occurrence
- value:
event_id: https://nde.nl/ontology/hc/heritage-event/pride-amsterdam-2020
event_name: Pride Amsterdam 2020
event_description: 'Cancelled due to COVID-19 pandemic restrictions. Virtual Pride Week
has_or_had_identifier: https://nde.nl/ontology/hc/heritage-event/pride-amsterdam-2020
has_or_had_label: Pride Amsterdam 2020
has_or_had_description: 'Cancelled due to COVID-19 pandemic restrictions. Virtual Pride Week
organized as alternative online celebration.
@ -271,8 +320,11 @@ classes:
instance_of: https://nde.nl/ontology/hc/heritage-form/pride-amsterdam
has_or_had_edition:
- has_or_had_identifier: "25"
event_date_start: '2020-08-01'
event_date_end: '2020-08-08'
event_status: CANCELLED
event_cancelled_reason: COVID-19 pandemic restrictions
temporal_extent:
begin_of_the_begin: '2020-08-01'
end_of_the_end: '2020-08-08'
has_or_had_status: CANCELLED
is_or_was_cancelled_by:
has_or_had_rationale:
has_or_had_label: "COVID-19 pandemic restrictions"
description: Pride Amsterdam 2020 - cancelled event documenting COVID impact

View file

@ -16,7 +16,8 @@ prefixes:
imports:
- linkml:types
# MIGRATED 2026-01-26: entity_type → has_or_had_type (Rule 53)
- ../slots/has_or_had_type
default_range: string
@ -36,6 +37,8 @@ classes:
- prov:Activity
related_mappings:
- prov:SoftwareAgent
slots:
- has_or_had_type
attributes:
is_match:
range: boolean
@ -43,9 +46,10 @@ classes:
confidence:
range: float
description: Confidence score (0.0-1.0)
entity_type:
range: string
description: CH-Annotator entity type (e.g., GRP.HER.MUS)
# entity_type migrated to has_or_had_type
# entity_type:
# range: string
# description: CH-Annotator entity type (e.g., GRP.HER.MUS)
reasoning:
range: string
description: LLM reasoning for the verification decision
@ -67,3 +71,7 @@ classes:
relationship_type:
range: string
description: Type of relationship (e.g., parent_organization, direct_match)
slot_usage:
has_or_had_type:
range: string
description: CH-Annotator entity type (e.g., GRP.HER.MUS). Replaces entity_type.

View file

@ -18,9 +18,13 @@ imports:
- ./CustodianPlace
- ./GeoSpatialPlace
- ../slots/id
- ../slots/event_type
# MIGRATED 2026-01-26: event_* slots → generic slots (Rule 53)
- ../slots/has_or_had_type
- ../slots/has_or_had_description
- ../slots/is_or_was_located_at
- ../slots/event_date
- ../slots/event_description
# - ../slots/event_type
# - ../slots/event_description
- ../slots/has_or_had_affected_unit
- ../slots/has_or_had_resulting_unit
- ../slots/has_or_had_associated_custodian # was: parent_custodian - migrated per Rule 53 (2025-01-15)
@ -34,7 +38,8 @@ imports:
- ./TimeSpan
# REMOVED 2026-01-14: valid_from + valid_to - migrated to temporal_extent (Rule 53)
- ../slots/has_or_had_affected_territory
- ../slots/event_location
# MIGRATED 2026-01-26: event_location → is_or_was_located_at
# - ../slots/event_location
- ../slots/from_location
- ../slots/specificity_annotation
- ../slots/has_or_had_score # was: template_specificity - migrated per Rule 53 (2026-01-17)
@ -90,7 +95,7 @@ classes:
|------|-------|---------|
| event_location | CustodianPlace | Where event occurred (board meeting, ceremony) |
| is_or_was_located_at | CustodianPlace | Where event occurred (board meeting, ceremony) |
| from_location | CustodianPlace | Previous location (RELOCATION) |
@ -139,9 +144,10 @@ classes:
- change_rationale
- has_or_had_documentation
- event_date
- event_description
- event_location
- event_type
# MIGRATED 2026-01-26: event_* slots → generic slots
- has_or_had_description
- is_or_was_located_at
- has_or_had_type
- from_location
- id
- has_or_had_associated_custodian # was: parent_custodian - migrated per Rule 53 (2025-01-15)
@ -158,9 +164,12 @@ classes:
range: uriorcurie
examples:
- value: https://nde.nl/ontology/hc/event/rijksmuseum-conservation-reorganization-2013
event_type:
has_or_had_type:
required: true
range: OrganizationalChangeEventTypeEnum
description: >-
Type of organizational change.
MIGRATED from event_type (2026-01-26).
examples:
- value: MERGER
- value: REORGANIZATION
@ -170,9 +179,12 @@ classes:
examples:
- value: '2013-04-01'
description: Rijksmuseum reorganization after renovation
event_description:
has_or_had_description:
required: true
range: string
description: >-
Description of the change event.
MIGRATED from event_description (2026-01-26).
examples:
- value: Merger of Restoration Department (12 FTE, founded 1885) and Research Department (16 FTE) to form Conservation
and Research Department (28 FTE). Implemented as part of museum renovation and reopening strategy. Combined
@ -221,9 +233,12 @@ classes:
examples:
- value: 28 FTE total (12 from Restoration + 16 from Research). All existing staff retained. 5 new positions created
for scientific imaging and digital conservation. 3 staff retirements (planned succession).
event_location:
is_or_was_located_at:
range: CustodianPlace
required: false
description: >-
Location where the event occurred.
MIGRATED from event_location (2026-01-26).
examples:
- value:
place_name: Rijksmuseum Boardroom
@ -293,7 +308,7 @@ classes:
- event_date should match valid_to (dissolved units) or valid_from (created units)
- Use PROV-O generated property for successor units
- Use CIDOC-CRM P11_had_participant for affected units
- 'Place integration: event_location (where event occurred), from/to_location (RELOCATION)'
- 'Place integration: is_or_was_located_at (where event occurred), from/to_location (RELOCATION)'
- 'Territorial integration: has_or_had_affected_territory links to GeoSpatialPlace for jurisdiction changes'
- 'Follows TOOI pattern: Wijzigingsgebeurtenis affects BestuurlijkeRuimte'
see_also:
@ -306,9 +321,9 @@ classes:
examples:
- value:
id: https://nde.nl/ontology/hc/event/rijks-conservation-merger-2013
event_type: MERGER
has_or_had_type: MERGER
event_date: '2013-04-01'
event_description: "Merger of Restoration Department and Research Department to form \nConservation and Research Department\
has_or_had_description: "Merger of Restoration Department and Research Department to form \nConservation and Research Department\
\ during museum renovation.\n"
has_or_had_affected_unit:
- id: https://nde.nl/ontology/hc/org-unit/rijks-restoration-old
@ -318,7 +333,7 @@ classes:
has_or_had_resulting_unit:
- id: https://nde.nl/ontology/hc/org-unit/rijks-conservation-research
unit_name: Conservation and Research Department
parent_custodian:
has_or_had_associated_custodian:
hc_id: https://nde.nl/ontology/hc/nl-nh-ams-m-rm-q190804
change_rationale: Strategic reorganization during 10-year renovation to integrate conservation science with practice
and modernize facilities.
@ -326,19 +341,20 @@ classes:
has_or_had_documentation:
- has_or_had_url:
url_value: "https://www.rijksmuseum.nl/en/about-us/annual-report-2013"
valid_from: '2013-04-01'
temporal_extent:
begin_of_the_begin: '2013-04-01'
description: Rijksmuseum departmental merger during renovation
- value:
id: https://nde.nl/ontology/hc/event/na-digital-preservation-founding-2008
event_type: FOUNDING
has_or_had_type: FOUNDING
event_date: '2008-01-01'
event_description: "Creation of Digital Preservation Department to address born-digital \narchival challenges and\
has_or_had_description: "Creation of Digital Preservation Department to address born-digital \narchival challenges and\
\ e-government records.\n"
affected_units: []
has_or_had_resulting_unit:
- id: https://nde.nl/ontology/hc/org-unit/na-digital-preservation
unit_name: Digital Preservation Department
parent_custodian:
has_or_had_associated_custodian:
hc_id: https://nde.nl/ontology/hc/nl-zh-haa-a-na
change_rationale: Government mandate to preserve electronic records from ministries and agencies. Growing volume
of born-digital materials requiring specialized expertise.
@ -346,13 +362,14 @@ classes:
has_or_had_documentation:
- has_or_had_url:
url_value: "https://www.nationaalarchief.nl/onderzoeken/archief/2.24.17.07"
valid_from: '2008-01-01'
temporal_extent:
begin_of_the_begin: '2008-01-01'
description: National Archives digital department creation
- value:
id: https://nde.nl/ontology/hc/event/amsterdam-museum-relocation-2025
event_type: RELOCATION
has_or_had_type: RELOCATION
event_date: '2025-06-01'
event_description: "Amsterdam Museum relocates from historic Burgerweeshuis building to \nnew purpose-built facility.\
has_or_had_description: "Amsterdam Museum relocates from historic Burgerweeshuis building to \nnew purpose-built facility.\
\ Move required due to structural concerns \nand accessibility improvements.\n"
has_or_had_affected_unit:
- id: https://nde.nl/ontology/hc/org-unit/amsterdam-museum-main
@ -360,7 +377,7 @@ classes:
has_or_had_resulting_unit:
- id: https://nde.nl/ontology/hc/org-unit/amsterdam-museum-main
unit_name: Amsterdam Museum
parent_custodian:
has_or_had_associated_custodian:
hc_id: https://nde.nl/ontology/hc/nl-nh-ams-m-am
change_rationale: Historic Burgerweeshuis building requires major renovation. New facility offers better accessibility,
climate control, and exhibition space.
@ -394,5 +411,6 @@ classes:
has_or_had_documentation:
- has_or_had_url:
url_value: "https://www.amsterdam.nl/nieuws/museum-verhuizing-2025"
valid_from: '2025-06-01'
temporal_extent:
begin_of_the_begin: '2025-06-01'
description: Museum relocation with full location tracking

View file

@ -16,9 +16,16 @@ imports:
- ./TimeSpan
- ./CustodianPlace
- ../enums/ProvenanceEventTypeEnum
- ../slots/event_id
# MIGRATED 2026-01-26: event_* slots → generic slots (Rule 53)
- ../slots/has_or_had_identifier
- ../slots/has_or_had_type
- ../slots/has_or_had_description
- ../slots/has_or_had_note
- ../slots/is_or_was_located_at
- ./Identifier
# - ../slots/event_id
- ../slots/object_ref
- ../slots/event_type
# - ../slots/event_type
- ../slots/event_date
- ../slots/price
- ../slots/price_currency
@ -38,8 +45,8 @@ imports:
- ./Reference
- ./URL
- ../slots/event_date_text
- ../slots/event_note
- ../slots/event_timespan
# - ../slots/event_note
# - ../slots/event_timespan
- ../slots/footnote
- ../slots/changes_or_changed_ownership_from # was: from_owner - migrated per Rule 56 (2026-01-16)
- ../slots/changes_or_changed_ownership_to # was: to_owner - migrated per Rule 56 (2026-01-16)
@ -50,8 +57,9 @@ imports:
- ../slots/requires_research
- ../slots/specificity_annotation
- ../slots/has_or_had_score # was: template_specificity - migrated per Rule 53 (2026-01-17)
# REMOVED 2026-01-15: transfer_location, transfer_location_text - migrated to event_location (Rule 53)
- ../slots/event_location
# MIGRATED 2026-01-15: transfer_location, transfer_location_text → event_location (Rule 53)
# MIGRATED 2026-01-26: event_location → is_or_was_located_at (Rule 53)
# - ../slots/event_location
- ./SpecificityAnnotation
- ./TemplateSpecificityScore # was: TemplateSpecificityScores - migrated per Rule 53 (2026-01-17)
@ -98,10 +106,15 @@ classes:
- has_or_had_url
- event_date
- event_date_text
- event_id
- event_note
- event_timespan
- event_type
# MIGRATED 2026-01-26: event_* slots → generic slots
- has_or_had_identifier
- has_or_had_note
- temporal_extent # was: event_timespan
- has_or_had_type
# - event_id
# - event_note
# - event_timespan
# - event_type
- footnote
- changes_or_changed_ownership_from # was: from_owner - migrated per Rule 56 (2026-01-16)
# MIGRATED 2026-01-15: from_owner_text → has_or_had_description # was: has_or_had_description - migrated per Rule 55 (2026-01-16) (Rule 53, symmetry with to_owner_text)
@ -118,12 +131,17 @@ classes:
- changes_or_changed_ownership_to # was: to_owner - migrated per Rule 56 (2026-01-16)
- has_or_had_description # was: has_or_had_description - migrated per Rule 55 (2026-01-16) # was: to_owner_text - migrated per Rule 53 (2026-01-15)
# MIGRATED 2026-01-15: transfer_location, transfer_location_text → event_location (Rule 53)
- event_location
# MIGRATED 2026-01-26: event_location → is_or_was_located_at
- is_or_was_located_at
# - event_location
slot_usage:
event_id:
has_or_had_identifier:
identifier: true
required: true
range: uriorcurie
description: >-
Unique identifier for this provenance event.
MIGRATED from event_id (2026-01-26).
examples:
- value: https://nde.nl/ontology/hc/provenance/mauritshuis-670-001
- value: https://nde.nl/ontology/hc/provenance/rijksmuseum-sk-c-5-005
@ -133,9 +151,12 @@ classes:
inlined: false
examples:
- value: https://nde.nl/ontology/hc/object/mauritshuis-girl-pearl-earring
event_type:
has_or_had_type:
required: true
range: ProvenanceEventTypeEnum
description: >-
Type of provenance event (ACQUISITION, TRANSFER, etc.).
MIGRATED from event_type (2026-01-26).
examples:
- value: BEQUEST
- value: AUCTION
@ -156,10 +177,13 @@ classes:
- value: before 1881
- value: 1933-1945
description: Nazi era date range
event_timespan:
temporal_extent:
required: false
range: TimeSpan
inlined: true
description: >-
Temporal extent of the provenance event.
MIGRATED from event_timespan (2026-01-26).
examples:
- value:
begin_of_the_begin: '1664-01-01'
@ -218,10 +242,11 @@ classes:
description_type: to_owner
description: Historical owner as text
# MIGRATED 2026-01-15: transfer_location, transfer_location_text → event_location (Rule 53)
event_location:
# MIGRATED 2026-01-26: event_location → is_or_was_located_at
is_or_was_located_at:
description: |
Location where the provenance event (ownership/custody transfer) occurred.
Replaces bespoke transfer_location and transfer_location_text slots.
Replaces bespoke transfer_location, transfer_location_text, event_location slots.
required: false
range: CustodianPlace
multivalued: true
@ -399,10 +424,13 @@ classes:
examples:
- value: true
description: Provenance gap 1933-1945
event_note:
has_or_had_note:
required: false
range: string
multivalued: true
description: >-
Notes about the provenance event.
MIGRATED from event_note (2026-01-26).
examples:
- value: des Tombe purchased at auction for 30 guilders, a bargain price
- value: The painting's attribution to Vermeer was not recognized until later
@ -423,19 +451,19 @@ classes:
- https://www.getty.edu/research/tools/provenance/
examples:
- value:
event_id: https://nde.nl/ontology/hc/provenance/mauritshuis-670-001
has_or_had_identifier: https://nde.nl/ontology/hc/provenance/mauritshuis-670-001
object_ref: https://nde.nl/ontology/hc/object/mauritshuis-girl-pearl-earring
event_type: CREATION
has_or_had_type: CREATION
event_date_text: c. 1665
event_timespan:
temporal_extent:
begin_of_the_begin: '1664-01-01'
end_of_the_end: '1667-12-31'
# MIGRATED 2026-01-15: to_owner_text, from_owner_text → has_or_had_description # was: has_or_had_description - migrated per Rule 55 (2026-01-16) (Rule 53)
has_or_had_description:
- description_text: Johannes Vermeer, Delft
description_type: to_owner
# MIGRATED 2026-01-15: transfer_location_text → event_location (Rule 53)
event_location:
# MIGRATED 2026-01-26: event_location → is_or_was_located_at (Rule 53)
is_or_was_located_at:
- place_name: Delft
country: NL
has_or_had_level: # was: certainty_level - migrated per Rule 53/56 (2026-01-18)
@ -446,9 +474,9 @@ classes:
description_type: provenance_text
description: Creation of Girl with a Pearl Earring
- value:
event_id: https://nde.nl/ontology/hc/provenance/mauritshuis-670-002
has_or_had_identifier: https://nde.nl/ontology/hc/provenance/mauritshuis-670-002
object_ref: https://nde.nl/ontology/hc/object/mauritshuis-girl-pearl-earring
event_type: PURCHASE
has_or_had_type: PURCHASE
event_date_text: c. 1665-1674
# MIGRATED 2026-01-15: from_owner_text, to_owner_text → has_or_had_description # was: has_or_had_description - migrated per Rule 55 (2026-01-16) (Rule 53)
has_or_had_description:
@ -469,9 +497,9 @@ classes:
description_type: provenance_text
description: Possible purchase by van Ruijven
- value:
event_id: https://nde.nl/ontology/hc/provenance/mauritshuis-670-005
has_or_had_identifier: https://nde.nl/ontology/hc/provenance/mauritshuis-670-005
object_ref: https://nde.nl/ontology/hc/object/mauritshuis-girl-pearl-earring
event_type: AUCTION
has_or_had_type: AUCTION
event_date: '1696-05-16'
event_date_text: May 16, 1696
# MIGRATED 2026-01-15: from_owner_text, to_owner_text → has_or_had_description # was: has_or_had_description - migrated per Rule 55 (2026-01-16) (Rule 53)
@ -480,11 +508,11 @@ classes:
description_type: from_owner
- description_text: Unknown buyer
description_type: to_owner
# MIGRATED 2026-01-15: transfer_location_text → event_location (Rule 53)
event_location:
# MIGRATED 2026-01-26: event_location → is_or_was_located_at (Rule 53)
is_or_was_located_at:
- place_name: Amsterdam
country: NL
auction_sale_name: Dissius sale
has_auction_sale_name: Dissius sale
lot_number: '36'
price_text: Unknown
has_or_had_level: # was: certainty_level - migrated per Rule 53/56 (2026-01-18)
@ -499,9 +527,9 @@ classes:
description_type: provenance_text
description: 1696 Dissius auction sale
- value:
event_id: https://nde.nl/ontology/hc/provenance/mauritshuis-670-008
has_or_had_identifier: https://nde.nl/ontology/hc/provenance/mauritshuis-670-008
object_ref: https://nde.nl/ontology/hc/object/mauritshuis-girl-pearl-earring
event_type: PURCHASE
has_or_had_type: PURCHASE
event_date: '1881-01-01'
event_date_text: '1881'
# MIGRATED 2026-01-15: from_owner_text, to_owner_text → has_or_had_description # was: has_or_had_description - migrated per Rule 55 (2026-01-16) (Rule 53)
@ -519,14 +547,14 @@ classes:
has_or_had_description:
- description_text: "A.A. des Tombe, The Hague (purchased 1881 for 30 guilders)"
description_type: provenance_text
event_note:
has_or_had_note:
- Des Tombe purchased at auction for a bargain price
- Painting was in poor condition and not yet attributed to Vermeer
description: 1881 purchase by des Tombe
- value:
event_id: https://nde.nl/ontology/hc/provenance/mauritshuis-670-009
has_or_had_identifier: https://nde.nl/ontology/hc/provenance/mauritshuis-670-009
object_ref: https://nde.nl/ontology/hc/object/mauritshuis-girl-pearl-earring
event_type: BEQUEST
has_or_had_type: BEQUEST
event_date: '1903-01-01'
event_date_text: '1903'
# MIGRATED 2026-01-15: from_owner_text → has_or_had_description # was: has_or_had_description - migrated per Rule 55 (2026-01-16) (Rule 53)
@ -547,9 +575,9 @@ classes:
description_type: provenance_text
description: 1903 bequest to Mauritshuis
- value:
event_id: https://nde.nl/ontology/hc/provenance/example-nazi-confiscation
has_or_had_identifier: https://nde.nl/ontology/hc/provenance/example-nazi-confiscation
object_ref: https://nde.nl/ontology/hc/object/example-painting
event_type: CONFISCATION
has_or_had_type: CONFISCATION
event_date_text: '1938'
# MIGRATED 2026-01-15: from_owner_text, to_owner_text → has_or_had_description # was: has_or_had_description - migrated per Rule 55 (2026-01-16) (Rule 53)
has_or_had_description:
@ -564,7 +592,7 @@ classes:
has_or_had_note:
- note_type: certainty
note_content: "Documentation incomplete; collector fled Vienna 1938"
event_note:
has_or_had_note:
- Provenance gap requires further research
- Listed on Art Loss Register
description: Example Nazi-era confiscation (illustrative)

View file

@ -17,6 +17,8 @@ imports:
- ../slots/has_or_had_description
- ../slots/has_or_had_measurement_unit
- ../slots/has_or_had_methodology
- ../slots/is_or_was_based_on
- ../slots/has_or_had_provenance
- ../slots/temporal_extent
- ../slots/specificity_annotation
- ../slots/has_or_had_score # was: template_specificity - migrated per Rule 53 (2026-01-17)
@ -29,6 +31,7 @@ imports:
# Class imports
- ./MeasureUnit
- ./Methodology
- ./EstimationMethod
- ./TimeSpan
- ./SpecificityAnnotation
- ./TemplateSpecificityScore # was: TemplateSpecificityScores - migrated per Rule 53 (2026-01-17)
@ -111,6 +114,8 @@ classes:
- quantity_unit
- has_or_had_measurement_unit
- has_or_had_methodology
- is_or_was_based_on
- has_or_had_provenance
- temporal_extent
- has_or_had_description
- quantity_date

View file

@ -49,7 +49,7 @@ classes:
- `results`/`items`/`records`: Array of result objects\n- `facets`: Aggregation counts for filtering\n- `pagination`:\
\ Links or cursors for paging\n\n**See Also:**\n\n- OpenSearch: https://opensearch.org/\n- Hydra API vocabulary: https://www.hydra-cg.com/\n"
attributes:
search_url:
has_or_had_url:
slot_uri: dcat:endpointURL
description: 'Search endpoint URL.

View file

@ -11,7 +11,9 @@ imports:
- ./Caption
- ../slots/has_or_had_alignment
- ./Alignment
- ../slots/entry_count
# MIGRATED 2026-01-26: entry_count → has_or_had_quantity + Quantity (Rule 53)
- ../slots/has_or_had_quantity
- ./Quantity
- ../slots/includes_music_description
- ../slots/includes_sound_description
- ../slots/includes_speaker_identification
@ -242,7 +244,8 @@ classes:
# MIGRATED 2026-01-24: default_position → has_or_had_caption + has_or_had_alignment (Rule 53)
- has_or_had_caption
- has_or_had_alignment
- entry_count
# MIGRATED 2026-01-26: entry_count → has_or_had_quantity
- has_or_had_quantity
- includes_music_description
- includes_sound_description
- includes_speaker_identification
@ -384,12 +387,18 @@ classes:
vertical_alignment: "bottom"
horizontal_alignment: "left"
description: Bottom-left positioning
entry_count:
range: integer
has_or_had_quantity:
range: Quantity
required: false
minimum_value: 0
inlined: true
description: >-
Number of subtitle entries (caption cues).
MIGRATED from entry_count per Rule 53 (2026-01-26).
examples:
- value: 127
- value:
quantity_value: 127
has_or_had_unit:
has_or_had_label: "entries"
description: 127 caption cues in this track
has_average_entry_duration_seconds:
range: float

View file

@ -23,7 +23,9 @@ imports:
- ../slots/warrants_or_warranted
- ../slots/content_changed
- ../slots/content_type
- ../slots/etag
- ../slots/has_or_had_method
- ./CacheValidation
- ./ETag
- ../slots/http_status_code
- ../slots/last_modified
- ../slots/observation_id
@ -83,7 +85,7 @@ classes:
- content_changed
- content_hash
- content_type
- etag
- has_or_had_method
- extraction_confidence
- extraction_note
- http_status_code
@ -98,6 +100,12 @@ classes:
- source_url
- specificity_annotation
- has_or_had_score # was: template_specificity - migrated per Rule 53 (2026-01-17)
slot_usage:
has_or_had_method:
range: CacheValidation
description: >-
Cache validation method (e.g. ETag).
MIGRATED from etag per slot_fixes.yaml (Rule 53).
comments:
- WebObservation is a prov:Activity documenting web content retrieval
- Integrates PROV-O for provenance and PAV for retrieval-specific properties

View file

@ -411,7 +411,7 @@ classes:
- value:
- endpoint_id: https://nde.nl/ontology/hc/endpoint/europeana-oai
endpoint_name: Europeana OAI-PMH
endpoint_url: https://oai.europeana.eu/oai
has_or_had_url: https://oai.europeana.eu/oai
protocol: OAI_PMH
protocol_version: '2.0'
status: ACTIVE

View file

@ -0,0 +1,12 @@
name: has_or_had_equipment
description: >-
Relates an entity or facility to the equipment it has or uses.
MIGRATED from `equipment_type` (via Equipment class).
slot_uri: sosa:hosts
range: Equipment
multivalued: true
exact_mappings:
- sosa:hosts
close_mappings:
- schema:owns

View file

@ -0,0 +1,27 @@
id: https://nde.nl/ontology/hc/slot/has_or_had_equipment_type
name: has_or_had_equipment_type_slot
title: Has Or Had Equipment Type Slot
description: >-
Classification of equipment used by a facility or for an activity.
Links to EquipmentType class hierarchy.
MIGRATED from equipment_type (string) to structured class reference (2026-01-26).
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
rico: https://www.ica.org/standards/RiC/ontology#
imports:
- linkml:types
- ../classes/EquipmentType
default_prefix: hc
slots:
has_or_had_equipment_type:
slot_uri: rico:hasOrHadEquipmentType
range: EquipmentType
multivalued: true
description: >-
Links to the type of equipment available or used.

View file

@ -0,0 +1,8 @@
name: has_or_had_schedule
description: >-
Schedule associated with the entity (e.g., exhibition rotation, maintenance).
MIGRATED from exhibition_schedule per Rule 53.
Follows RiC-O naming convention.
slot_uri: schema:schedule
range: string
multivalued: false

View file

@ -0,0 +1,27 @@
id: https://nde.nl/ontology/hc/slot/is_or_was_cancelled_by
name: is_or_was_cancelled_by
title: Is Or Was Cancelled By
description: >-
Relates an event to its cancellation details.
MIGRATED from event_cancelled_reason per slot_fixes.yaml (Rule 53).
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
prov: http://www.w3.org/ns/prov#
imports:
- linkml:types
- ../classes/Cancellation
default_prefix: hc
slots:
is_or_was_cancelled_by:
slot_uri: prov:wasInvalidatedBy
description: >-
The cancellation event or details that invalidated/cancelled this entity.
range: Cancellation
multivalued: false
inlined: true

View file

@ -0,0 +1,12 @@
name: is_or_was_established_by
description: >-
Relates an entity to its establishment event.
MIGRATED from `established_date` (via EstablishmentEvent).
slot_uri: org:resultedFrom
range: EstablishmentEvent
multivalued: false
exact_mappings:
- org:resultedFrom
close_mappings:
- schema:foundingDate

View file

@ -0,0 +1,11 @@
name: provides_or_provided
description: >-
Relates an agent or service to the resource or service it provides.
MIGRATED from `entity_types_covered` (via ContributingAgency).
slot_uri: schema:provider
range: Any
multivalued: true
exact_mappings:
- schema:provider
- prov:wasGeneratedBy

View file

@ -6,7 +6,7 @@ import './UMLVisualization.css';
import { SemanticDetailsPanel } from './SemanticDetailsPanel';
// Debug logging flag - set to false for production to reduce console noise
const DEBUG_UML = false;
const DEBUG_UML = true;
const debugLog = (...args: unknown[]) => DEBUG_UML && console.log(...args);
// ============================================================================
@ -276,6 +276,18 @@ const arePropsEqual = (prevProps: UMLVisualizationProps, nextProps: UMLVisualiza
).sort().join(',');
if (prevLinkKeys !== nextLinkKeys) return false;
// Check relatedNodes equality (for highlighting)
const prevRelated = prevProps.diagram.relatedNodes;
const nextRelated = nextProps.diagram.relatedNodes;
if ((prevRelated && !nextRelated) || (!prevRelated && nextRelated)) return false;
if (prevRelated && nextRelated) {
if (prevRelated.size !== nextRelated.size) return false;
// Deep check of content
const prevEntries = Array.from(prevRelated.entries()).sort((a, b) => a[0].localeCompare(b[0]));
const nextEntries = Array.from(nextRelated.entries()).sort((a, b) => a[0].localeCompare(b[0]));
if (JSON.stringify(prevEntries) !== JSON.stringify(nextEntries)) return false;
}
return true;
};

View file

@ -874,6 +874,7 @@ const buildSlotUMLDiagram = (
// Helper to add a relation between two nodes for highlighting
const addRelation = (id1: string, id2: string) => {
// console.log('Adding relation', id1, id2);
if (!relatedNodes.has(id1)) relatedNodes.set(id1, []);
if (!relatedNodes.has(id2)) relatedNodes.set(id2, []);
if (!relatedNodes.get(id1)!.includes(id2)) relatedNodes.get(id1)!.push(id2);

View file

@ -1,12 +1,12 @@
{
"generated": "2026-01-26T16:32:24.488Z",
"generated": "2026-01-26T22:48:27.648Z",
"schemaRoot": "/schemas/20251121/linkml",
"totalFiles": 3027,
"totalFiles": 3014,
"categoryCounts": {
"main": 4,
"class": 1070,
"class": 1082,
"enum": 153,
"slot": 1796,
"slot": 1771,
"module": 4
},
"categories": [
@ -400,6 +400,11 @@
"path": "modules/classes/Author.yaml",
"category": "class"
},
{
"name": "AuthorityFile",
"path": "modules/classes/AuthorityFile.yaml",
"category": "class"
},
{
"name": "AutoGeneration",
"path": "modules/classes/AutoGeneration.yaml",
@ -580,6 +585,11 @@
"path": "modules/classes/BusinessModel.yaml",
"category": "class"
},
{
"name": "CacheValidation",
"path": "modules/classes/CacheValidation.yaml",
"category": "class"
},
{
"name": "CalendarSystem",
"path": "modules/classes/CalendarSystem.yaml",
@ -590,6 +600,11 @@
"path": "modules/classes/CallForApplication.yaml",
"category": "class"
},
{
"name": "Cancellation",
"path": "modules/classes/Cancellation.yaml",
"category": "class"
},
{
"name": "CanonicalForm",
"path": "modules/classes/CanonicalForm.yaml",
@ -1940,6 +1955,21 @@
"path": "modules/classes/EntityReconstruction.yaml",
"category": "class"
},
{
"name": "EntityType",
"path": "modules/classes/EntityType.yaml",
"category": "class"
},
{
"name": "EnvironmentalControl",
"path": "modules/classes/EnvironmentalControl.yaml",
"category": "class"
},
{
"name": "EnvironmentalRequirement",
"path": "modules/classes/EnvironmentalRequirement.yaml",
"category": "class"
},
{
"name": "EnvironmentalZone",
"path": "modules/classes/EnvironmentalZone.yaml",
@ -1955,6 +1985,36 @@
"path": "modules/classes/EnvironmentalZoneTypes.yaml",
"category": "class"
},
{
"name": "Equipment",
"path": "modules/classes/Equipment.yaml",
"category": "class"
},
{
"name": "EquipmentType",
"path": "modules/classes/EquipmentType.yaml",
"category": "class"
},
{
"name": "EquipmentTypes",
"path": "modules/classes/EquipmentTypes.yaml",
"category": "class"
},
{
"name": "EstablishmentEvent",
"path": "modules/classes/EstablishmentEvent.yaml",
"category": "class"
},
{
"name": "EstimationMethod",
"path": "modules/classes/EstimationMethod.yaml",
"category": "class"
},
{
"name": "ETag",
"path": "modules/classes/ETag.yaml",
"category": "class"
},
{
"name": "Event",
"path": "modules/classes/Event.yaml",
@ -6957,171 +7017,16 @@
"path": "modules/slots/ends_or_ended_at_location.yaml",
"category": "slot"
},
{
"name": "entity_types_covered",
"path": "modules/slots/entity_types_covered.yaml",
"category": "slot"
},
{
"name": "entry_count",
"path": "modules/slots/entry_count.yaml",
"category": "slot"
},
{
"name": "environmental_control",
"path": "modules/slots/environmental_control.yaml",
"category": "slot"
},
{
"name": "environmental_requirement",
"path": "modules/slots/environmental_requirement.yaml",
"category": "slot"
},
{
"name": "environmental_zone_type_code",
"path": "modules/slots/environmental_zone_type_code.yaml",
"category": "slot"
},
{
"name": "environmental_zone_type_description",
"path": "modules/slots/environmental_zone_type_description.yaml",
"category": "slot"
},
{
"name": "environmental_zone_type_id",
"path": "modules/slots/environmental_zone_type_id.yaml",
"category": "slot"
},
{
"name": "environmental_zone_type_label",
"path": "modules/slots/environmental_zone_type_label.yaml",
"category": "slot"
},
{
"name": "equipment_type",
"path": "modules/slots/equipment_type.yaml",
"category": "slot"
},
{
"name": "established_date",
"path": "modules/slots/established_date.yaml",
"category": "slot"
},
{
"name": "estimated_extent",
"path": "modules/slots/estimated_extent.yaml",
"category": "slot"
},
{
"name": "estimated_volume",
"path": "modules/slots/estimated_volume.yaml",
"category": "slot"
},
{
"name": "estimates_or_estimated",
"path": "modules/slots/estimates_or_estimated.yaml",
"category": "slot"
},
{
"name": "etag",
"path": "modules/slots/etag.yaml",
"category": "slot"
},
{
"name": "event",
"path": "modules/slots/event.yaml",
"category": "slot"
},
{
"name": "event_cancelled_reason",
"path": "modules/slots/event_cancelled_reason.yaml",
"category": "slot"
},
{
"name": "event_date",
"path": "modules/slots/event_date.yaml",
"category": "slot"
},
{
"name": "event_date_end",
"path": "modules/slots/event_date_end.yaml",
"category": "slot"
},
{
"name": "event_date_start",
"path": "modules/slots/event_date_start.yaml",
"category": "slot"
},
{
"name": "event_date_text",
"path": "modules/slots/event_date_text.yaml",
"category": "slot"
},
{
"name": "event_description",
"path": "modules/slots/event_description.yaml",
"category": "slot"
},
{
"name": "event_documentation",
"path": "modules/slots/event_documentation.yaml",
"category": "slot"
},
{
"name": "event_en",
"path": "modules/slots/event_en.yaml",
"category": "slot"
},
{
"name": "event_id",
"path": "modules/slots/event_id.yaml",
"category": "slot"
},
{
"name": "event_label",
"path": "modules/slots/event_label.yaml",
"category": "slot"
},
{
"name": "event_location",
"path": "modules/slots/event_location.yaml",
"category": "slot"
},
{
"name": "event_name",
"path": "modules/slots/event_name.yaml",
"category": "slot"
},
{
"name": "event_note",
"path": "modules/slots/event_note.yaml",
"category": "slot"
},
{
"name": "event_status",
"path": "modules/slots/event_status.yaml",
"category": "slot"
},
{
"name": "event_timespan",
"path": "modules/slots/event_timespan.yaml",
"category": "slot"
},
{
"name": "event_type",
"path": "modules/slots/event_type.yaml",
"category": "slot"
},
{
"name": "event_url",
"path": "modules/slots/event_url.yaml",
"category": "slot"
},
{
"name": "event_venue",
"path": "modules/slots/event_venue.yaml",
"category": "slot"
},
{
"name": "evidence_documentation",
"path": "modules/slots/evidence_documentation.yaml",
@ -9087,6 +8992,16 @@
"path": "modules/slots/has_or_had_environmental_zone.yaml",
"category": "slot"
},
{
"name": "has_or_had_equipment",
"path": "modules/slots/has_or_had_equipment.yaml",
"category": "slot"
},
{
"name": "has_or_had_equipment_type",
"path": "modules/slots/has_or_had_equipment_type.yaml",
"category": "slot"
},
{
"name": "has_or_had_essay",
"path": "modules/slots/has_or_had_essay.yaml",
@ -9697,6 +9612,11 @@
"path": "modules/slots/has_or_had_scene_segment.yaml",
"category": "slot"
},
{
"name": "has_or_had_schedule",
"path": "modules/slots/has_or_had_schedule.yaml",
"category": "slot"
},
{
"name": "has_or_had_scope",
"path": "modules/slots/has_or_had_scope.yaml",
@ -10812,6 +10732,11 @@
"path": "modules/slots/is_or_was_based_on.yaml",
"category": "slot"
},
{
"name": "is_or_was_cancelled_by",
"path": "modules/slots/is_or_was_cancelled_by.yaml",
"category": "slot"
},
{
"name": "is_or_was_categorized_as",
"path": "modules/slots/is_or_was_categorized_as.yaml",
@ -10897,6 +10822,11 @@
"path": "modules/slots/is_or_was_equivalent_to.yaml",
"category": "slot"
},
{
"name": "is_or_was_established_by",
"path": "modules/slots/is_or_was_established_by.yaml",
"category": "slot"
},
{
"name": "is_or_was_expired_at",
"path": "modules/slots/is_or_was_expired_at.yaml",
@ -13527,6 +13457,11 @@
"path": "modules/slots/provides_access_to.yaml",
"category": "slot"
},
{
"name": "provides_or_provided",
"path": "modules/slots/provides_or_provided.yaml",
"category": "slot"
},
{
"name": "provides_or_provided_provenance_to",
"path": "modules/slots/provides_or_provided_provenance_to.yaml",

View file

@ -33,7 +33,8 @@ imports:
- ../slots/credentials_required
- ../slots/cultural_protocol_url
- ../slots/embargo_reason
- ../slots/fee_amount
- ../slots/imposes_or_imposed # was: fee_amount - migrated per Rule 53 (2026-01-26)
- ./Fee
- ../slots/fee_required
- ../slots/legal_basis
- ../slots/registration_required
@ -113,7 +114,7 @@ classes:
- cultural_protocol_url
- embargo_end_date
- embargo_reason
- fee_amount
- imposes_or_imposed # was: fee_amount - migrated per Rule 53 (2026-01-26)
- fee_required
- legal_basis
- policy_id
@ -216,13 +217,34 @@ classes:
description: Free access
- value: true
description: Fee required
fee_amount:
range: string
imposes_or_imposed: # was: fee_amount - migrated per Rule 53 (2026-01-26)
description: |
Fees imposed by the access policy.
MIGRATED from fee_amount per Rule 53.
Uses Fee class with structured Quantity.
range: Fee
inlined: true
multivalued: true
examples:
- value: €5.00 per day
description: Daily reading room fee
- value: Free for researchers, €10 for general public
description: Tiered fee structure
- value:
has_or_had_quantity:
quantity_value: 5.00
has_or_had_unit:
unit_value: "EUR"
has_or_had_description: "Daily reading room fee"
description: €5.00 per day
- value:
has_or_had_quantity:
quantity_value: 0
has_or_had_description: "Free for researchers"
description: Free for researchers
- value:
has_or_had_quantity:
quantity_value: 10.00
has_or_had_unit:
unit_value: "EUR"
has_or_had_description: "General public fee"
description: €10 for general public
embargo_end_date:
range: date
examples:

View file

@ -17,7 +17,8 @@ imports:
- ../slots/has_or_had_archive_scope
- ../slots/has_archive_subtype
- ../slots/has_or_had_custodian_type
- ../slots/finding_aids_format
- ../slots/has_or_had_schema # was: finding_aids_format - migrated per Rule 53 (2026-01-26)
- ./Schema
- ../slots/preservation_standard
- ../slots/record_type
- ../slots/specificity_annotation
@ -90,7 +91,7 @@ classes:
- has_or_had_archive_scope
- has_archive_subtype
- has_or_had_custodian_type
- finding_aids_format
- has_or_had_schema # was: finding_aids_format - migrated per Rule 53 (2026-01-26)
- preservation_standard
- record_type
- specificity_annotation
@ -141,7 +142,8 @@ classes:
- OAIS
- PREMIS
- EAD3
finding_aids_format: EAD3
has_or_had_schema:
- has_or_had_label: EAD3
access_policy: mixed
description: National Archive classification with domain-specific metadata
- value:

View file

@ -0,0 +1,41 @@
id: https://nde.nl/ontology/hc/class/ArchivingPlan
name: ArchivingPlan
title: Archiving Plan Class
description: >-
A specific plan for archiving materials.
**RULE 53 COMPLIANT**: Created for expected_transfer_date migration.
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
prov: http://www.w3.org/ns/prov#
imports:
- linkml:types
- ../slots/has_or_had_identifier
- ../slots/has_or_had_label
- ../slots/has_or_had_description
- ../slots/temporal_extent
- ../slots/specificity_annotation
- ../slots/has_or_had_score
default_prefix: hc
classes:
ArchivingPlan:
class_uri: prov:Plan
description: >-
A plan detailing archiving activities and timelines.
slots:
- has_or_had_identifier
- has_or_had_label
- has_or_had_description
- temporal_extent
- specificity_annotation
- has_or_had_score
slot_usage:
temporal_extent:
description: The planned timeframe for archiving (e.g. transfer date).
range: TimeSpan
inlined: true

View file

@ -29,7 +29,8 @@ imports:
- ../slots/has_or_had_type
- ./DocumentType
- ./DocumentTypes
- ../slots/execution_date
- ../slots/is_or_was_signed_at
- ./Timestamp
- ../slots/governance_clause
- ../slots/id
- ../slots/is_current_version
@ -138,7 +139,7 @@ classes:
- has_or_had_title
- has_or_had_type
- is_or_was_effective_at
- execution_date
- is_or_was_signed_at
- governance_clause
- id
- is_current_version
@ -204,11 +205,16 @@ classes:
has_or_had_label: "Notarial Deed"
has_or_had_type: NotarialDeed
description: Standard Dutch notarial deed
execution_date:
range: date
is_or_was_signed_at:
range: Timestamp
inlined: true
required: true
description: >-
Timestamp when the articles were signed/executed.
MIGRATED from execution_date (2026-01-26).
examples:
- value: '2024-03-15'
- value:
has_or_had_timestamp: '2024-03-15'
description: Date notary executed the deed
is_or_was_effective_at:
range: date
@ -376,7 +382,8 @@ classes:
has_or_had_type:
has_or_had_type: NotarialDeed
has_or_had_label: "Notarial Deed"
execution_date: '1885-06-28'
is_or_was_signed_at:
has_or_had_timestamp: '1885-06-28'
is_or_was_effective_at: '1885-07-01'
notary_name: mr. H.J. van den Berg
notary_office: Amsterdam
@ -409,7 +416,8 @@ classes:
has_or_had_type:
has_or_had_type: NotarialDeed
has_or_had_label: "Notarial Deed"
execution_date: '2015-11-12'
is_or_was_signed_at:
has_or_had_timestamp: '2015-11-12'
is_or_was_effective_at: '2015-11-12'
notary_name: mr. A.M. de Vries
notary_office: Haarlem

View file

@ -28,6 +28,8 @@ imports:
- ./TemplateSpecificityTypes
- ../enums/AudioEventTypeEnum
# MIGRATED 2026-01-26: audio_event_type → has_or_had_type (Rule 53)
- ../slots/has_or_had_type
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
@ -102,10 +104,11 @@ classes:
- segment_text
# MIGRATED 2026-01-19: confidence → is_or_was_generated_by (structured ConfidenceScore)
- is_or_was_generated_by
- has_or_had_type # was: audio_event_type - migrated 2026-01-26
- specificity_annotation
- has_or_had_score # was: template_specificity - migrated per Rule 53 (2026-01-17)
attributes:
audio_event_type:
slot_usage:
has_or_had_type:
range: AudioEventTypeEnum
required: true
description: The type of audio event detected in this segment.
@ -114,7 +117,6 @@ classes:
description: Speech detected in this segment
- value: MUSIC
description: Music detected in this segment
slot_usage:
start_seconds:
range: float
required: true

View file

@ -42,7 +42,9 @@ imports:
- ../slots/platform_name
- ../slots/platform_purpose
- ../slots/platform_url
- ../slots/preservation_event_type
- ../slots/has_or_had_powered_by_cm
- ../slots/has_or_had_type # MIGRATED 2026-01-26: preservation_event_type → has_or_had_type (Rule 53)
# - ../slots/preservation_event_type
- ../slots/provides_access_to
- ../slots/refers_to_custodian
- ../slots/related_project
@ -137,7 +139,7 @@ classes:
- platform_purpose
- platform_url
- has_or_had_powered_by_cm
- preservation_event_type
- has_or_had_type # was: preservation_event_type
- provides_access_to
- refers_to_custodian
- related_project
@ -288,7 +290,7 @@ classes:
examples:
- value: https://web.archive.org/web/20211231/https://example.nl/exhibition/
description: Wayback Machine URL
preservation_event_type:
has_or_had_type: # was: preservation_event_type
range: string
required: false
examples:

View file

@ -149,6 +149,7 @@ classes:
- temporal_extent # consolidated: absorbs valid_from + valid_to 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
- has_or_had_geometry # was: geometry_type, geometry_wkt - migrated per Rule 53 (2026-01-26)
slot_usage:
has_or_had_identifier:
range: uriorcurie
@ -290,8 +291,10 @@ classes:
geospatial_id: https://nde.nl/ontology/hc/geo/depot-amersfoort-building
latitude: 52.1561
longitude: 5.3878
geometry_wkt: POLYGON((5.385 52.154, 5.390 52.154, 5.390 52.158, 5.385 52.158, 5.385 52.154))
geometry_type: POLYGON
has_or_had_geometry:
- as_wkt: POLYGON((5.385 52.154, 5.390 52.154, 5.390 52.158, 5.385 52.158, 5.385 52.154))
has_or_had_type:
has_or_had_label: POLYGON
osm_id: way/234567890
has_accuracy_in_meters: 1.0
spatial_resolution: BUILDING
@ -301,7 +304,10 @@ classes:
geospatial_id: https://nde.nl/ontology/hc/geo/schiphol-branch
latitude: 52.3086
longitude: 4.7639
geometry_type: POINT
has_or_had_geometry:
- as_wkt: POINT(4.7639 52.3086)
has_or_had_type:
has_or_had_label: POINT
geonames_id: 2747891
has_accuracy_in_meters: 50.0
spatial_resolution: BUILDING

View file

@ -49,10 +49,12 @@ imports:
- ../slots/has_or_had_custodian_type
- ./IdentificationEvent
- ../slots/is_or_was_identified_through # was: date_identified - migrated per Rule 53 (2026-01-23)
- ../slots/field_number
- ../slots/has_or_had_identifier # was: field_number - migrated per Rule 53 (2026-01-26)
- ./FieldNumber # for has_or_had_identifier range
- ../slots/gbif_id
- ../slots/genbank_accession
- ../slots/habitat
- ../slots/has_or_had_habitat # was: habitat - migrated per Rule 53 (2026-01-26)
- ./Habitat
- ../slots/higher_classification
- ../slots/identification_qualifier
- ../slots/identified_by
@ -147,10 +149,10 @@ classes:
- has_or_had_name
- has_or_had_custodian_type
- is_or_was_identified_through # was: date_identified - migrated per Rule 53 (2026-01-23)
- field_number
- has_or_had_identifier # was: field_number - migrated per Rule 53 (2026-01-26)
- gbif_id
- genbank_accession
- habitat
- has_or_had_habitat # was: habitat
- higher_classification
- identification_qualifier
- identified_by
@ -509,18 +511,52 @@ classes:
agent_type: person
agent_role: collector
description: HMS Beagle expedition collector
field_number:
# field_number - MIGRATED to has_or_had_identifier with FieldNumber (Rule 53, 2026-01-26)
has_or_had_identifier:
description: |
Identifiers for this biological object, including field numbers.
MIGRATED from field_number (2026-01-26).
Use has_or_had_type to distinguish identifier types:
- FieldNumber (dwc:fieldNumber)
- BOLDIdentifier (BOLD ID)
- WikiDataIdentifier (Wikidata Q-number)
range: Identifier
multivalued: true
inlined: true
inlined_as_list: true
required: false
range: string
any_of:
- range: FieldNumber
- range: BOLDIdentifier
- range: WikiDataIdentifier
- range: uriorcurie
examples:
- value: ARW-1234
- value: CD-HMS Beagle-567
habitat:
- value:
identifier_value: "ARW-1234"
has_or_had_type: FieldNumber
description: Field number (was field_number)
- value:
id: https://nde.nl/ontology/hc/bold-id/NLNAT001-21
identifier_value: NLNAT001-21
has_or_had_type: BOLDIdentifier
description: BOLD identifier (was bold_id)
- value:
qid: "Q193493"
label: "Oxford Dodo"
has_or_had_type: WikiDataIdentifier
description: Wikidata identifier (from ExhibitedObject)
has_or_had_habitat:
required: false
range: string
range: Habitat
inlined: true
examples:
- value: Tropical rainforest, understory
- value: Coral reef, depth 15m
- value:
has_or_had_label: Tropical rainforest
has_or_had_description: Understory
- value:
has_or_had_label: Coral reef
has_or_had_description: Depth 15m
has_associated_taxon:
required: false
range: string

View file

@ -0,0 +1,28 @@
id: https://nde.nl/ontology/hc/class/BoundingBox
name: BoundingBox
title: Bounding Box
description: >-
A rectangular region defined by coordinates, typically used for image/video annotation.
MIGRATED from face_bbox/region_bbox/logo_bbox/object_bbox slots.
Coordinates are typically normalized (0.0-1.0) relative to frame dimensions.
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
schema: http://schema.org/
geosparql: http://www.opengis.net/ont/geosparql#
imports:
- linkml:types
- ../slots/x_coordinate
- ../slots/y_coordinate
- ../slots/width
- ../slots/height
default_prefix: hc
classes:
BoundingBox:
class_uri: schema:PropertyValue
slots:
- x_coordinate
- y_coordinate
- width
- height

View file

@ -40,10 +40,13 @@ imports:
- ./Expenses
- ./ExpenseType
- ./ExpenseTypes
- ../slots/endowment_draw
- ../slots/external_funding
- ../slots/fiscal_year_end
- ../slots/fiscal_year_start
- ../slots/has_or_had_endowment_draw
# - ../slots/external_funding
- ../slots/includes_or_included
- ./ExternalFunding
- ../slots/temporal_extent # was: fiscal_year_start + fiscal_year_end - migrated per Rule 53 (2026-01-26)
- ./TimeSpanType
- ./TimeSpanTypes
- ../slots/id
- ../slots/innovation_budget
- ../slots/internal_funding
@ -131,9 +134,8 @@ classes:
- has_or_had_main_part
- allocates_or_allocated
- has_or_had_endowment_draw
- external_funding
- fiscal_year_end
- fiscal_year_start
- includes_or_included
- temporal_extent # was: fiscal_year_start + fiscal_year_end - migrated per Rule 53 (2026-01-26)
- id
- innovation_budget
- internal_funding
@ -221,12 +223,28 @@ classes:
- OperatingBudget
- ConsolidatedBudget
description: Institution-wide operating budget
fiscal_year_start:
range: date
required: true
fiscal_year_end:
range: date
temporal_extent: # was: fiscal_year_start + fiscal_year_end - migrated per Rule 53 (2026-01-26)
description: |
Fiscal year period for the budget.
MIGRATED from fiscal_year_start and fiscal_year_end per Rule 53.
Uses TimeSpan class with start_of_the_start and end_of_the_end.
Optionally includes has_or_had_type linking to TimeSpanType (e.g., FiscalYear).
range: TimeSpan
inlined: true
required: true
examples:
- value:
start_of_the_start: "2024-01-01"
end_of_the_end: "2024-12-31"
has_or_had_type:
has_or_had_label: FiscalYear
description: Calendar fiscal year 2024
- value:
start_of_the_start: "2024-04-01"
end_of_the_end: "2025-03-31"
has_or_had_type:
has_or_had_label: FiscalYear
description: Government fiscal year 2024-2025
total_amount: # FIXED: was incorrectly using has_or_had_budget (2026-01-16)
range: decimal
required: false
@ -306,9 +324,13 @@ classes:
innovation_budget:
range: decimal
required: false
external_funding:
range: decimal
required: false
includes_or_included:
range: ExternalFunding
multivalued: true
inlined: true
description: >-
External funding sources and amounts.
MIGRATED from external_funding (2026-01-26).
internal_funding:
range: decimal
required: false
@ -416,12 +438,13 @@ classes:
has_or_had_label: Rijksmuseum Operating Budget FY2024
has_or_had_description: Annual operating budget for fiscal year 2024, including major exhibition initiatives and digitization
expansion.
budget_type:
- OPERATING
- CONSOLIDATED
fiscal_year_start: '2024-01-01'
fiscal_year_end: '2024-12-31'
total_budget_amount: 45000000.0
has_or_had_type:
- OperatingBudget
- ConsolidatedBudget
temporal_extent:
start_of_the_start: '2024-01-01'
end_of_the_end: '2024-12-31'
total_amount: 45000000.0
has_or_had_currency:
currency_code: EUR
has_or_had_label: Euro
@ -441,7 +464,10 @@ classes:
has_or_had_unit:
has_or_had_label: "EUR"
innovation_budget: 750000.0
external_funding: 15000000.0
includes_or_included:
- has_or_had_quantity:
quantity_value: 15000000.0
has_or_had_label: "External Grants & Subsidies"
internal_funding: 25000000.0
has_or_had_endowment_draw: 5000000.0
approval_date: '2023-11-15'
@ -456,12 +482,13 @@ classes:
id: https://nde.nl/ontology/hc/budget/nha/fy2024-2025
has_or_had_label: Noord-Hollands Archief Annual Budget 2024-2025
has_or_had_description: Provincial archive annual budget aligned with government fiscal year.
budget_type:
- OPERATING
- CONSOLIDATED
fiscal_year_start: '2024-04-01'
fiscal_year_end: '2025-03-31'
total_budget_amount: 8500000.0
has_or_had_type:
- OperatingBudget
- ConsolidatedBudget
temporal_extent:
start_of_the_start: '2024-04-01'
end_of_the_end: '2025-03-31'
total_amount: 8500000.0
has_or_had_currency:
currency_code: EUR
has_or_had_label: Euro
@ -478,7 +505,10 @@ classes:
has_or_had_value: 800000.0
has_or_had_unit:
has_or_had_label: "EUR"
external_funding: 6000000.0
includes_or_included:
- has_or_had_quantity:
quantity_value: 6000000.0
has_or_had_label: "Province Subsidy"
internal_funding: 2500000.0
approval_date: '2024-03-01'
is_or_was_approved_by:

View file

@ -0,0 +1,44 @@
id: https://nde.nl/ontology/hc/class/CacheValidation
name: CacheValidation
title: Cache Validation Class
description: >-
Describes methods used for validating cache freshness (e.g., ETag, Last-Modified).
**RULE 53 COMPLIANT**: Created for etag migration per slot_fixes.yaml revision.
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
prov: http://www.w3.org/ns/prov#
imports:
- linkml:types
- ../slots/has_or_had_identifier
- ../slots/has_or_had_method
- ../slots/has_or_had_type
- ../slots/has_or_had_description
- ../slots/specificity_annotation
- ../slots/has_or_had_score
- ./ETag
default_prefix: hc
classes:
CacheValidation:
description: >-
A method used to validate if a cached resource is still fresh.
Can use ETags, Last-Modified dates, or other mechanisms.
slots:
- has_or_had_identifier
- has_or_had_type
- has_or_had_description
- specificity_annotation
- has_or_had_score
slot_usage:
has_or_had_identifier:
range: ETag
required: false
description: The ETag associated with this validation method.
has_or_had_type:
range: string
description: Type of validation (e.g. "ETag", "Last-Modified").

View file

@ -37,8 +37,9 @@ imports:
- ./CoFunding # for requires_or_required range (co-funding requirements)
- ../slots/eligible_applicant
- ../slots/eligible_country
- ../slots/funded_project
- ../slots/funding_rate
- ../slots/has_or_had_funded # was: funded_project - migrated per Rule 53 (2026-01-26)
- ../slots/offers_or_offered # was: funding_rate - migrated per Rule 53 (2026-01-26)
- ./FundingRate # for offers_or_offered range
- ../slots/heritage_type
- ../slots/info_session_date
- ../slots/issuing_organisation
@ -122,8 +123,8 @@ classes:
- contact_email
- eligible_applicant
- eligible_country
- funded_project
- funding_rate
- has_or_had_funded # was: funded_project - migrated per Rule 53 (2026-01-26)
- offers_or_offered # was: funding_rate - migrated per Rule 53 (2026-01-26)
- heritage_type
- info_session_date
- issuing_organisation
@ -311,7 +312,11 @@ classes:
examples:
- value: See FundingRequirement class examples
description: Structured requirements with provenance
funded_project:
has_or_had_funded: # was: funded_project - migrated per Rule 53 (2026-01-26)
description: |
Projects funded by this call.
MIGRATED from funded_project per Rule 53.
Uses frapo:funds (has_or_had_funded).
range: uriorcurie
multivalued: true
inlined_as_list: true
@ -425,10 +430,28 @@ classes:
- Intangible heritage
- Digital heritage
- Documentary heritage
funding_rate: 100% for non-profit, 70% for for-profit
partnership_required: true
minimum_partners: 3
issuing_organisation: https://nde.nl/ontology/hc/encompassing-body/funding/ec-rea
offers_or_offered: # was: funding_rate - migrated per Rule 53 (2026-01-26)
description: |
Funding rates offered by this call.
MIGRATED from funding_rate per Rule 53.
Uses frapo:hasFundingRate or similar.
Here we use generic offers_or_offered with FundingRate class.
range: FundingRate
multivalued: true
inlined: true
required: false
examples:
- value:
has_or_had_rate: "100%"
maximal_of_maximal: 100
description: 100% funding rate for non-profits
- value:
has_or_had_rate: "70%"
maximal_of_maximal: 70
description: 70% funding rate for SMEs
partnership_required: true
minimum_partners: 3
issuing_organisation: https://nde.nl/ontology/hc/encompassing-body/funding/ec-rea
parent_programme: Horizon Europe Cluster 2
programme_year: 2025
contact_email: REA-C2@ec.europa.eu
@ -443,7 +466,7 @@ classes:
- preservation
- EU funding
- Horizon Europe
funded_project:
has_or_had_funded: # was: funded_project - migrated per Rule 53 (2026-01-26)
- https://nde.nl/ontology/hc/project/europeana/common-culture-2024
- https://nde.nl/ontology/hc/project/nde/heritage-digitization-2025
description: Horizon Europe CL2 2025 Cultural Heritage call

View file

@ -0,0 +1,40 @@
id: https://nde.nl/ontology/hc/class/Cancellation
name: Cancellation
title: Cancellation Class
description: >-
Details regarding the cancellation of an event or activity.
**RULE 53 COMPLIANT**: Created for event_cancelled_reason migration.
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
prov: http://www.w3.org/ns/prov#
imports:
- linkml:types
- ../slots/has_or_had_identifier
- ../slots/has_or_had_rationale
- ../slots/has_or_had_description
- ../slots/specificity_annotation
- ../slots/has_or_had_score
- ./Rationale
default_prefix: hc
classes:
Cancellation:
class_uri: prov:Activity
description: >-
Represents the cancellation event/action.
slots:
- has_or_had_identifier
- has_or_had_rationale
- has_or_had_description
- specificity_annotation
- has_or_had_score
slot_usage:
has_or_had_rationale:
range: Rationale
inlined: true
description: The reason for cancellation.

View file

@ -0,0 +1,22 @@
id: https://nde.nl/ontology/hc/class/CeaseEvent
name: CeaseEvent
title: Cease Event
description: >-
An event marking the cessation, termination, or invalidation of an entity or activity.
MIGRATED from finish_reason slot per Rule 53.
Follows prov:Invalidation.
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
prov: http://www.w3.org/ns/prov#
imports:
- linkml:types
- ../slots/has_or_had_label
- ../slots/has_or_had_description
default_prefix: hc
classes:
CeaseEvent:
class_uri: prov:Invalidation
slots:
- has_or_had_label
- has_or_had_description

View file

@ -0,0 +1,22 @@
id: https://nde.nl/ontology/hc/class/Code
name: Code
title: Code
description: >-
A code or identifier from a controlled vocabulary or classification system.
MIGRATED from feature_code/feature_class slots.
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/
imports:
- linkml:types
- ../slots/has_or_had_label
- ../slots/has_or_had_description
default_prefix: hc
classes:
Code:
class_uri: skos:Concept
slots:
- has_or_had_label
- has_or_had_description

View file

@ -92,21 +92,23 @@ classes:
- HasProvenance
slots:
- has_or_had_place
- has_or_had_provenance
- has_or_had_note
- temporal_extent
- is_or_was_acquired_by # Added 2026-01-22: was collector (Rule 53)
- has_or_had_place
- has_or_had_provenance
- has_or_had_note
- temporal_extent
- is_or_was_acquired_by # Added 2026-01-22: was collector (Rule 53)
- has_or_had_identifier
attributes:
event_id:
description: >-
Unique identifier for this collection event.
range: uriorcurie
identifier: true
slot_uri: dcterms:identifier
attributes:
has_or_had_identifier:
description: >-
Unique identifier for this collection event.
MIGRATED from event_id (Rule 53, 2026-01-26).
range: uriorcurie
identifier: true
slot_uri: dcterms:identifier
# collector: REMOVED - migrated to is_or_was_acquired_by per Rule 53 (2026-01-22)
# collector: REMOVED - migrated to is_or_was_acquired_by per Rule 53 (2026-01-22)
# Now uses imported slot is_or_was_acquired_by with Agent class
field_number:
@ -229,7 +231,7 @@ classes:
examples:
- value:
event_id: "https://nde.nl/ontology/hc/event/dodo-collection-1662"
has_or_had_identifier: "https://nde.nl/ontology/hc/event/dodo-collection-1662"
has_or_had_place:
place_name: "Mauritius"
country: "MU"
@ -247,7 +249,7 @@ classes:
description: Historical Dodo collection event
- value:
event_id: "https://nde.nl/ontology/hc/event/wallace-java-1234"
has_or_had_identifier: "https://nde.nl/ontology/hc/event/wallace-java-1234"
has_or_had_place:
place_name: "Mt. Gede"
region: "West Java"

View file

@ -0,0 +1,21 @@
id: https://nde.nl/ontology/hc/class/Concatenation
name: Concatenation
title: Concatenation
description: >-
The process of linking things together in a series or chain.
MIGRATED from full_extracted_text slot context.
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
prov: http://www.w3.org/ns/prov#
imports:
- linkml:types
- ../slots/has_or_had_label
- ../slots/has_or_had_description
default_prefix: hc
classes:
Concatenation:
class_uri: prov:Activity
slots:
- has_or_had_label
- has_or_had_description

View file

@ -0,0 +1,6 @@
classes:
Confidence:
class_uri: sosa:Result
description: "A confidence value or score."
slots:
- has_or_had_value

View file

@ -0,0 +1,22 @@
id: https://nde.nl/ontology/hc/class/ConservationPlan
name: ConservationPlan
title: Conservation Plan
description: >-
A plan for the conservation or preservation of an entity.
Used in ConservationRecord and Roadmap.
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
crm: http://www.cidoc-crm.org/cidoc-crm/
skos: http://www.w3.org/2004/02/skos/core#
imports:
- linkml:types
- ../slots/has_or_had_label
- ../slots/has_or_had_description
default_prefix: hc
classes:
ConservationPlan:
class_uri: crm:E29_Design_or_Procedure
slots:
- has_or_had_label
- has_or_had_description

View file

@ -102,7 +102,7 @@ classes:
- has_or_had_custodian_type
- has_or_had_environmental_condition
- has_or_had_examination_method
- follow_up_date
- indicates_or_indicated # was: follow_up_date - migrated per Rule 53 (2026-01-26)
- funding_source
- materials_used
- object_ref
@ -335,12 +335,26 @@ classes:
- value: Display in climate-controlled case only
- value: Limit light exposure to 50 lux maximum
- value: Handle with cotton gloves; fragile frame corners
follow_up_date:
# follow_up_date:
# required: false
# range: date
# examples:
# - value: '2019-06-15'
# description: 25-year review recommended
indicates_or_indicated: # was: follow_up_date - migrated per Rule 53 (2026-01-26)
description: |
Indicates a future review or assessment.
MIGRATED from follow_up_date per Rule 53.
Uses ConservationReview class with temporal_extent.
range: ConservationReview
inlined: true
required: false
range: date
examples:
- value: '2019-01-01'
description: 25-year follow-up from 1994 restoration
- value:
temporal_extent:
begin_of_the_begin: "2019-01-01"
has_or_had_label: "25-year follow-up from 1994 restoration"
description: Follow-up inspection date
related_loan:
required: false
range: uriorcurie
@ -450,7 +464,9 @@ classes:
- Re-examine varnish layer in 25 years (c. 2019)
- Maintain 45-55% relative humidity
- Maximum 50 lux illumination
follow_up_date: '2019-01-01'
indicates_or_indicated: # was: follow_up_date (2026-01-26)
temporal_extent:
begin_of_the_begin: '2019-01-01'
conservation_note:
- Vermeer's monogram 'IVMeer' discovered during cleaning
- Treatment documented in Burlington Magazine (1995)

View file

@ -0,0 +1,25 @@
id: https://nde.nl/ontology/hc/class/ConservationReview
name: ConservationReview
title: Conservation Review
description: >-
A review or assessment of the conservation status or needs of an entity.
MIGRATED from follow_up_date context.
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
crm: http://www.cidoc-crm.org/cidoc-crm/
skos: http://www.w3.org/2004/02/skos/core#
imports:
- linkml:types
- ../slots/temporal_extent
- ./TimeSpan
- ../slots/has_or_had_label
- ../slots/has_or_had_description
default_prefix: hc
classes:
ConservationReview:
class_uri: crm:E14_Condition_Assessment
slots:
- temporal_extent
- has_or_had_label
- has_or_had_description

View file

@ -41,10 +41,12 @@ imports:
- ../slots/contributes_to
- ../slots/contribution_start_date
- ../slots/is_active
- ../slots/governance_representative
- ../slots/is_or_was_represented_by # was: governance_representative - migrated per Rule 53 (2026-01-26)
- ./Agent
- ../slots/is_or_was_also_allocation_agency
- ../slots/member_of
- ../slots/governance_role
- ../slots/has_or_had_role # was: governance_role - migrated per Rule 53 (2026-01-26)
- ./GovernanceRole
- ../enums/AuthorityRecordFormatEnum
- ../enums/AuthorityEntityTypeEnum
- ../enums/ConsortiumGovernanceRoleEnum
@ -74,8 +76,8 @@ imports:
- ../slots/contributor_code
- ../slots/description
# - ../slots/entity_types_covered
- ../slots/governance_representative
- ../slots/governance_role
- ../slots/is_or_was_represented_by # was: governance_representative - migrated per Rule 53 (2026-01-26)
- ../slots/has_or_had_role # was: governance_role - migrated per Rule 53 (2026-01-26)
- ../slots/has_authority_file_abbreviation
- ../slots/has_authority_file_name
- ../slots/has_authority_file_url
@ -265,12 +267,12 @@ classes:
- contributes_to
- contribution_start_date
- is_active
- governance_representative
- is_or_was_represented_by
- has_or_had_url # was: website - migrated per Rule 53 (2025-01-15)
- description
- is_or_was_also_allocation_agency
- member_of
- governance_role
- has_or_had_role
- specificity_annotation
- has_or_had_score # was: template_specificity - migrated per Rule 53 (2026-01-17)
slot_usage:
@ -295,6 +297,12 @@ classes:
range: AllocationAgency
member_of:
range: StandardsOrganization
is_or_was_represented_by:
range: Agent
description: Representative in the governance council.
has_or_had_role:
range: GovernanceRole
description: Role in the consortium (e.g. Founding Member).
has_or_had_url:
range: URL
inlined: true

Some files were not shown because too many files have changed in this diff Show more