feat: Add PriceRange, Publication, and TaxDeductibility classes
- Introduced PriceRange class to categorize price levels for hospitality services, including structured metadata for various price categories. - Added Publication class to represent publication events, capturing details like publisher, publication place, and edition. - Created TaxDeductibilityType as an abstract class for tax deductibility status, promoting previous enum values to a class hierarchy for richer metadata. - Implemented TaxDeductibilityTypes with concrete subclasses detailing various tax deductibility statuses. - Archived previous DeductibilityStatusEnum and related slots, transitioning to a more structured approach for tax deductibility classification. - Updated multiple slot definitions to align with new class structures and naming conventions, including has_or_had_measurement and has_or_had_price. - Enhanced documentation and examples across new and existing slots for clarity and compliance with naming conventions.
This commit is contained in:
parent
9a0e56e23a
commit
511fc99847
125 changed files with 8396 additions and 541 deletions
|
|
@ -1,12 +1,12 @@
|
|||
{
|
||||
"generated": "2026-01-23T22:15:43.772Z",
|
||||
"generated": "2026-01-24T12:26:12.079Z",
|
||||
"schemaRoot": "/schemas/20251121/linkml",
|
||||
"totalFiles": 3035,
|
||||
"totalFiles": 3044,
|
||||
"categoryCounts": {
|
||||
"main": 4,
|
||||
"class": 982,
|
||||
"enum": 155,
|
||||
"slot": 1890,
|
||||
"class": 1004,
|
||||
"enum": 154,
|
||||
"slot": 1878,
|
||||
"module": 4
|
||||
},
|
||||
"categories": [
|
||||
|
|
@ -325,6 +325,11 @@
|
|||
"path": "modules/classes/ArtArchiveRecordSetTypes.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "ArtDealer",
|
||||
"path": "modules/classes/ArtDealer.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "ArticlesOfAssociation",
|
||||
"path": "modules/classes/ArticlesOfAssociation.yaml",
|
||||
|
|
@ -610,6 +615,21 @@
|
|||
"path": "modules/classes/CareerEntry.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "Carrier",
|
||||
"path": "modules/classes/Carrier.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "CarrierType",
|
||||
"path": "modules/classes/CarrierType.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "CarrierTypes",
|
||||
"path": "modules/classes/CarrierTypes.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "CastCollection",
|
||||
"path": "modules/classes/CastCollection.yaml",
|
||||
|
|
@ -620,11 +640,31 @@
|
|||
"path": "modules/classes/CatalogingStandard.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "CatalogSystem",
|
||||
"path": "modules/classes/CatalogSystem.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "CatalogSystemType",
|
||||
"path": "modules/classes/CatalogSystemType.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "CatalogSystemTypes",
|
||||
"path": "modules/classes/CatalogSystemTypes.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "Category",
|
||||
"path": "modules/classes/Category.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "CategoryStatus",
|
||||
"path": "modules/classes/CategoryStatus.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "CateringPlace",
|
||||
"path": "modules/classes/CateringPlace.yaml",
|
||||
|
|
@ -1110,6 +1150,16 @@
|
|||
"path": "modules/classes/Content.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "ContentType",
|
||||
"path": "modules/classes/ContentType.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "ContentTypes",
|
||||
"path": "modules/classes/ContentTypes.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "ContributingAgency",
|
||||
"path": "modules/classes/ContributingAgency.yaml",
|
||||
|
|
@ -1155,6 +1205,11 @@
|
|||
"path": "modules/classes/CourtRecords.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "CreationEvent",
|
||||
"path": "modules/classes/CreationEvent.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "CulturalInstitution",
|
||||
"path": "modules/classes/CulturalInstitution.yaml",
|
||||
|
|
@ -1330,6 +1385,11 @@
|
|||
"path": "modules/classes/DataTierSummary.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "DatePrecision",
|
||||
"path": "modules/classes/DatePrecision.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "DeceasedStatus",
|
||||
"path": "modules/classes/DeceasedStatus.yaml",
|
||||
|
|
@ -2075,16 +2135,36 @@
|
|||
"path": "modules/classes/IconographicArchivesRecordSetTypes.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "IdentificationEvent",
|
||||
"path": "modules/classes/IdentificationEvent.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "Identifier",
|
||||
"path": "modules/classes/Identifier.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "IdentifierType",
|
||||
"path": "modules/classes/IdentifierType.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "IdentifierTypes",
|
||||
"path": "modules/classes/IdentifierTypes.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "IIPImageServer",
|
||||
"path": "modules/classes/IIPImageServer.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "Image",
|
||||
"path": "modules/classes/Image.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "Index",
|
||||
"path": "modules/classes/Index.yaml",
|
||||
|
|
@ -2470,6 +2550,21 @@
|
|||
"path": "modules/classes/MaterialTypes.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "Measurement",
|
||||
"path": "modules/classes/Measurement.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "MeasurementType",
|
||||
"path": "modules/classes/MeasurementType.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "MeasurementTypes",
|
||||
"path": "modules/classes/MeasurementTypes.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "MeasurementUnit",
|
||||
"path": "modules/classes/MeasurementUnit.yaml",
|
||||
|
|
@ -3310,6 +3405,11 @@
|
|||
"path": "modules/classes/PublicArchivesInFranceRecordSetTypes.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "Publication",
|
||||
"path": "modules/classes/Publication.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "PublicationEntry",
|
||||
"path": "modules/classes/PublicationEntry.yaml",
|
||||
|
|
@ -4065,6 +4165,16 @@
|
|||
"path": "modules/classes/TaxDeductibility.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "TaxDeductibilityType",
|
||||
"path": "modules/classes/TaxDeductibilityType.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "TaxDeductibilityTypes",
|
||||
"path": "modules/classes/TaxDeductibilityTypes.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "Taxon",
|
||||
"path": "modules/classes/Taxon.yaml",
|
||||
|
|
@ -5126,11 +5236,6 @@
|
|||
"path": "modules/enums/DatePrecisionEnum.yaml",
|
||||
"category": "enum"
|
||||
},
|
||||
{
|
||||
"name": "DeductibilityStatusEnum",
|
||||
"path": "modules/enums/DeductibilityStatusEnum.yaml",
|
||||
"category": "enum"
|
||||
},
|
||||
{
|
||||
"name": "DetectionLevelEnum",
|
||||
"path": "modules/enums/DetectionLevelEnum.yaml",
|
||||
|
|
@ -5797,56 +5902,6 @@
|
|||
"path": "modules/slots/begin_of_the_end.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "card_image_url",
|
||||
"path": "modules/slots/card_image_url.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "card_title",
|
||||
"path": "modules/slots/card_title.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "card_title_en",
|
||||
"path": "modules/slots/card_title_en.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "card_url",
|
||||
"path": "modules/slots/card_url.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "carrier_type",
|
||||
"path": "modules/slots/carrier_type.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "carries_information",
|
||||
"path": "modules/slots/carries_information.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "catalog_raisonne_number",
|
||||
"path": "modules/slots/catalog_raisonne_number.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "catalog_system",
|
||||
"path": "modules/slots/catalog_system.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "category_measurement",
|
||||
"path": "modules/slots/category_measurement.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "category_status",
|
||||
"path": "modules/slots/category_status.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "catering_price_range",
|
||||
"path": "modules/slots/catering_price_range.yaml",
|
||||
|
|
@ -6527,66 +6582,6 @@
|
|||
"path": "modules/slots/date.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "date_created",
|
||||
"path": "modules/slots/date_created.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "date_identified",
|
||||
"path": "modules/slots/date_identified.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "date_of_death",
|
||||
"path": "modules/slots/date_of_death.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "date_of_publication",
|
||||
"path": "modules/slots/date_of_publication.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "date_precision",
|
||||
"path": "modules/slots/date_precision.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "dealer_name",
|
||||
"path": "modules/slots/dealer_name.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "death_place",
|
||||
"path": "modules/slots/death_place.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "deceased",
|
||||
"path": "modules/slots/deceased.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "decommission_date",
|
||||
"path": "modules/slots/decommission_date.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "deductibility_conditions",
|
||||
"path": "modules/slots/deductibility_conditions.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "deductibility_status",
|
||||
"path": "modules/slots/deductibility_status.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "deductible_percentage",
|
||||
"path": "modules/slots/deductible_percentage.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "deduction_percentage",
|
||||
"path": "modules/slots/deduction_percentage.yaml",
|
||||
|
|
@ -6627,6 +6622,11 @@
|
|||
"path": "modules/slots/degree_name.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "degree_of_certainty",
|
||||
"path": "modules/slots/degree_of_certainty.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "deliverable",
|
||||
"path": "modules/slots/deliverable.yaml",
|
||||
|
|
@ -9037,6 +9037,11 @@
|
|||
"path": "modules/slots/has_or_had_caption.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "has_or_had_carrier",
|
||||
"path": "modules/slots/has_or_had_carrier.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "has_or_had_category",
|
||||
"path": "modules/slots/has_or_had_category.yaml",
|
||||
|
|
@ -9387,6 +9392,11 @@
|
|||
"path": "modules/slots/has_or_had_identify.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "has_or_had_image",
|
||||
"path": "modules/slots/has_or_had_image.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "has_or_had_implementing_organisation",
|
||||
"path": "modules/slots/has_or_had_implementing_organisation.yaml",
|
||||
|
|
@ -9482,6 +9492,16 @@
|
|||
"path": "modules/slots/has_or_had_manages_collection.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "has_or_had_measurement",
|
||||
"path": "modules/slots/has_or_had_measurement.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "has_or_had_measurement_type",
|
||||
"path": "modules/slots/has_or_had_measurement_type.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "has_or_had_measurement_unit",
|
||||
"path": "modules/slots/has_or_had_measurement_unit.yaml",
|
||||
|
|
@ -10952,6 +10972,11 @@
|
|||
"path": "modules/slots/is_or_was_created_through.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "is_or_was_decommissioned_at",
|
||||
"path": "modules/slots/is_or_was_decommissioned_at.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "is_or_was_derived_from",
|
||||
"path": "modules/slots/is_or_was_derived_from.yaml",
|
||||
|
|
@ -10982,6 +11007,11 @@
|
|||
"path": "modules/slots/is_or_was_generated_by.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "is_or_was_identified_through",
|
||||
"path": "modules/slots/is_or_was_identified_through.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "is_or_was_included_in",
|
||||
"path": "modules/slots/is_or_was_included_in.yaml",
|
||||
|
|
@ -11047,6 +11077,11 @@
|
|||
"path": "modules/slots/is_or_was_platform_of.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "is_or_was_published",
|
||||
"path": "modules/slots/is_or_was_published.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "is_or_was_published_at",
|
||||
"path": "modules/slots/is_or_was_published_at.yaml",
|
||||
|
|
@ -12462,6 +12497,11 @@
|
|||
"path": "modules/slots/occupation.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "occurs_or_occurred_at",
|
||||
"path": "modules/slots/occurs_or_occurred_at.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "oclc_number",
|
||||
"path": "modules/slots/oclc_number.yaml",
|
||||
|
|
@ -15127,6 +15167,11 @@
|
|||
"path": "modules/slots/use_cases.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "uses_or_used",
|
||||
"path": "modules/slots/uses_or_used.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "uses_or_used_technique",
|
||||
"path": "modules/slots/uses_or_used_technique.yaml",
|
||||
|
|
|
|||
|
|
@ -0,0 +1,111 @@
|
|||
# ArtDealer class
|
||||
# Created per slot_fixes.yaml revision for: dealer_name
|
||||
#
|
||||
# MIGRATION NOTE (2026-01-24): Created as part of dealer_name migration per Rule 53.
|
||||
# Provides structured representation of art dealers in provenance events.
|
||||
|
||||
id: https://nde.nl/ontology/hc/class/ArtDealer
|
||||
name: art_dealer_class
|
||||
title: Art Dealer Class
|
||||
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
schema: http://schema.org/
|
||||
foaf: http://xmlns.com/foaf/0.1/
|
||||
crm: http://www.cidoc-crm.org/cidoc-crm/
|
||||
|
||||
imports:
|
||||
- linkml:types
|
||||
- ../slots/has_or_had_name
|
||||
- ./Name
|
||||
|
||||
default_prefix: hc
|
||||
|
||||
classes:
|
||||
ArtDealer:
|
||||
class_uri: crm:E39_Actor
|
||||
description: |
|
||||
An art dealer or gallery involved in the sale or transfer of art objects.
|
||||
|
||||
**MIGRATION NOTE** (2026-01-24):
|
||||
Created per slot_fixes.yaml migration from `dealer_name` string
|
||||
to structured ArtDealer class per Rule 53.
|
||||
|
||||
**Purpose**:
|
||||
Provides structured representation for art dealers including:
|
||||
- The dealer's name (via has_or_had_name)
|
||||
- Future extensibility for dealer location, active dates, etc.
|
||||
|
||||
**Ontological Alignment**:
|
||||
- **Primary** (`class_uri`): `crm:E39_Actor` - CIDOC-CRM Actor class
|
||||
- **Close**: `foaf:Agent`, `schema:Organization` - Agent/organization classes
|
||||
|
||||
**Use Cases**:
|
||||
- Provenance events involving art sales (DEALER_SALE type)
|
||||
- Tracking art market participants in heritage provenance research
|
||||
- Linking objects to dealers who handled them
|
||||
|
||||
**Pattern**:
|
||||
```yaml
|
||||
is_or_was_associated_with:
|
||||
- has_or_had_name:
|
||||
has_or_had_label: "Duveen Brothers"
|
||||
```
|
||||
|
||||
slots:
|
||||
- has_or_had_name
|
||||
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
description: The name of the art dealer or gallery.
|
||||
range: Name
|
||||
inlined: true
|
||||
required: false
|
||||
examples:
|
||||
- value:
|
||||
has_or_had_label: "Duveen Brothers"
|
||||
description: Famous art dealer firm
|
||||
|
||||
exact_mappings:
|
||||
- crm:E39_Actor
|
||||
close_mappings:
|
||||
- foaf:Agent
|
||||
- schema:Organization
|
||||
|
||||
annotations:
|
||||
custodian_types: '["M", "G"]'
|
||||
custodian_types_rationale: Art dealers primarily relevant to museums and galleries with provenance research.
|
||||
custodian_types_primary: M
|
||||
specificity_score: 0.75
|
||||
specificity_rationale: >-
|
||||
Highly specific to art market provenance research - primarily used in
|
||||
museum and gallery contexts for tracking object ownership history.
|
||||
template_specificity:
|
||||
collection_discovery: 0.80
|
||||
museum_search: 0.85
|
||||
general_heritage: 0.60
|
||||
migration_info:
|
||||
source_slot: dealer_name
|
||||
migration_date: "2026-01-24"
|
||||
rule: "Rule 53"
|
||||
|
||||
comments:
|
||||
- "Structured art dealer representation for provenance events"
|
||||
- "Replaces simple string-valued dealer_name slot"
|
||||
- "Extensible for dealer location, active dates, gallery affiliation"
|
||||
- "Created 2026-01-24 from dealer_name migration (Rule 53)"
|
||||
|
||||
examples:
|
||||
- value:
|
||||
has_or_had_name:
|
||||
has_or_had_label: "Duveen Brothers"
|
||||
description: Famous art dealer firm (early 20th century)
|
||||
- value:
|
||||
has_or_had_name:
|
||||
has_or_had_label: "Paul Cassirer"
|
||||
description: German art dealer (Impressionism specialist)
|
||||
- value:
|
||||
has_or_had_name:
|
||||
has_or_had_label: "Jacques Goudstikker"
|
||||
description: Dutch art dealer (notable Nazi-looted art case)
|
||||
|
|
@ -47,7 +47,8 @@ imports:
|
|||
- ./NameType
|
||||
- ./NameTypes
|
||||
- ../slots/has_or_had_custodian_type
|
||||
- ../slots/date_identified
|
||||
- ./IdentificationEvent
|
||||
- ../slots/is_or_was_identified_through # was: date_identified - migrated per Rule 53 (2026-01-23)
|
||||
- ../slots/field_number
|
||||
- ../slots/gbif_id
|
||||
- ../slots/genbank_accession
|
||||
|
|
@ -145,7 +146,7 @@ classes:
|
|||
# REMOVED 2026-01-22: common_name, common_name_language - migrated to has_or_had_name + Name (Rule 53)
|
||||
- has_or_had_name
|
||||
- has_or_had_custodian_type
|
||||
- date_identified
|
||||
- is_or_was_identified_through # was: date_identified - migrated per Rule 53 (2026-01-23)
|
||||
- field_number
|
||||
- gbif_id
|
||||
- genbank_accession
|
||||
|
|
@ -318,11 +319,21 @@ classes:
|
|||
multivalued: true
|
||||
examples:
|
||||
- value: Dr. Jane Smith
|
||||
date_identified:
|
||||
is_or_was_identified_through: # was: date_identified - migrated per Rule 53 (2026-01-23)
|
||||
required: false
|
||||
range: date
|
||||
range: IdentificationEvent
|
||||
inlined: true
|
||||
description: |
|
||||
Identification event for this specimen.
|
||||
MIGRATED from date_identified per slot_fixes.yaml (Rule 53).
|
||||
Uses IdentificationEvent class with temporal_extent for dates.
|
||||
examples:
|
||||
- value: '2020-03-15'
|
||||
- value:
|
||||
temporal_extent:
|
||||
begin_of_the_begin: '2020-03-15'
|
||||
identified_by:
|
||||
- agent_name: "Dr. Jane Smith"
|
||||
description: "Was date_identified: 2020-03-15"
|
||||
specimen_type:
|
||||
required: false
|
||||
range: string
|
||||
|
|
|
|||
|
|
@ -0,0 +1,95 @@
|
|||
# Carrier class
|
||||
# Physical carrier for information-bearing objects
|
||||
#
|
||||
# Created: 2026-01-23 per slot_fixes.yaml F24 (carrier_type migration)
|
||||
# Rule compliance: 0b (Type/Types pattern), 38, 39, 42, 53
|
||||
|
||||
id: https://nde.nl/ontology/hc/class/Carrier
|
||||
name: Carrier
|
||||
title: Carrier Class
|
||||
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
bf: http://id.loc.gov/ontologies/bibframe/
|
||||
rda: http://rdaregistry.info/termList/
|
||||
crm: http://www.cidoc-crm.org/cidoc-crm/
|
||||
dcterms: http://purl.org/dc/terms/
|
||||
|
||||
default_prefix: hc
|
||||
|
||||
imports:
|
||||
- linkml:types
|
||||
- ../metadata
|
||||
- ../slots/has_or_had_type
|
||||
- ../slots/has_or_had_description
|
||||
- ../slots/has_or_had_note
|
||||
- ./CarrierType
|
||||
|
||||
classes:
|
||||
Carrier:
|
||||
class_uri: bf:Carrier
|
||||
description: >-
|
||||
A physical medium on which information can be recorded or stored.
|
||||
|
||||
Models the physical carrier (codex, scroll, disc, etc.) as distinct
|
||||
from the content it carries. Supports the FRBR/LRM conceptual model
|
||||
distinction between Work/Expression/Manifestation/Item.
|
||||
|
||||
**Type Classification**:
|
||||
Use has_or_had_type with CarrierType subclasses (Rule 0b pattern):
|
||||
- CodexCarrier, ScrollCarrier, SheetCarrier (traditional)
|
||||
- OpticalDiscCarrier, MagneticTapeCarrier (modern media)
|
||||
- DigitalCarrier (born-digital content)
|
||||
|
||||
MIGRATED from carrier_type enum (2026-01-23) per Rule 53.
|
||||
exact_mappings:
|
||||
- bf:Carrier
|
||||
- rda:Carrier
|
||||
close_mappings:
|
||||
- crm:E84_Information_Carrier
|
||||
slots:
|
||||
- has_or_had_type
|
||||
- has_or_had_description
|
||||
- has_or_had_note
|
||||
slot_usage:
|
||||
has_or_had_type:
|
||||
description: >-
|
||||
The type of physical carrier from the CarrierType taxonomy.
|
||||
Use CarrierType subclasses per Rule 0b (Type/Types pattern).
|
||||
range: CarrierType
|
||||
required: true
|
||||
examples:
|
||||
- value:
|
||||
carrier_type_code: CODEX
|
||||
carrier_type_label: Codex
|
||||
description: Bound volume form
|
||||
- value:
|
||||
carrier_type_code: VINYL_DISC
|
||||
carrier_type_label: Vinyl Disc
|
||||
description: Audio recording medium
|
||||
has_or_had_description:
|
||||
description: >-
|
||||
Description of the physical carrier characteristics.
|
||||
Includes material, condition, dimensions, etc.
|
||||
range: string
|
||||
required: false
|
||||
examples:
|
||||
- value: "Paper codex with leather binding, 324 leaves"
|
||||
has_or_had_note:
|
||||
description: Additional notes about the carrier.
|
||||
range: string
|
||||
required: false
|
||||
examples:
|
||||
- value:
|
||||
has_or_had_type:
|
||||
carrier_type_code: CODEX
|
||||
carrier_type_label: Codex
|
||||
has_or_had_description: "Paper codex, 18th-century red morocco binding"
|
||||
description: Bound book carrier
|
||||
- value:
|
||||
has_or_had_type:
|
||||
carrier_type_code: VINYL_DISC
|
||||
carrier_type_label: Vinyl Disc
|
||||
has_or_had_description: "12-inch 33⅓ RPM long-playing record"
|
||||
description: Audio carrier
|
||||
|
|
@ -0,0 +1,77 @@
|
|||
# CarrierType class (abstract base)
|
||||
# Type taxonomy for physical information carriers
|
||||
#
|
||||
# Created: 2026-01-23 per slot_fixes.yaml F24 (carrier_type migration)
|
||||
# Rule compliance: 0b (Type/Types pattern - this is the Type file)
|
||||
|
||||
id: https://nde.nl/ontology/hc/class/CarrierType
|
||||
name: CarrierType
|
||||
title: Carrier Type Class (Abstract Base)
|
||||
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
bf: http://id.loc.gov/ontologies/bibframe/
|
||||
rda: http://rdaregistry.info/termList/
|
||||
skos: http://www.w3.org/2004/02/skos/core#
|
||||
|
||||
default_prefix: hc
|
||||
|
||||
imports:
|
||||
- linkml:types
|
||||
- ../metadata
|
||||
- ../slots/has_or_had_code
|
||||
- ../slots/has_or_had_label
|
||||
- ../slots/has_or_had_description
|
||||
|
||||
classes:
|
||||
CarrierType:
|
||||
class_uri: bf:Carrier
|
||||
abstract: true
|
||||
description: >-
|
||||
Abstract base class for carrier type taxonomy.
|
||||
|
||||
**Rule 0b Compliance**: This is the abstract TYPE file.
|
||||
Concrete carrier types are defined in CarrierTypes.yaml (plural).
|
||||
|
||||
Categories of physical carriers:
|
||||
- **Codex forms**: Bound volumes, pamphlets, notebooks
|
||||
- **Sheet forms**: Single sheets, broadsides, maps, photographs
|
||||
- **Scroll forms**: Rolled manuscripts, papyrus
|
||||
- **Ancient forms**: Clay tablets, wax tablets, inscriptions
|
||||
- **Audio carriers**: Vinyl, cassette, compact disc
|
||||
- **Visual carriers**: Film reels, videotape, microfilm
|
||||
- **Digital carriers**: Floppy disk, optical disc, hard drive
|
||||
|
||||
MIGRATED from CarrierTypeEnum (2026-01-23) per Rule 53.
|
||||
Enum-to-class promotion provides richer semantics and extensibility.
|
||||
exact_mappings:
|
||||
- bf:Carrier
|
||||
- rda:Carrier
|
||||
close_mappings:
|
||||
- skos:Concept
|
||||
slots:
|
||||
- has_or_had_code
|
||||
- has_or_had_label
|
||||
- has_or_had_description
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
description: Short code for the carrier type (e.g., CODEX, SCROLL, VINYL_DISC).
|
||||
range: string
|
||||
required: true
|
||||
identifier: true
|
||||
pattern: '^[A-Z][A-Z0-9_]*$'
|
||||
has_or_had_label:
|
||||
description: Human-readable label for the carrier type.
|
||||
range: string
|
||||
required: true
|
||||
has_or_had_description:
|
||||
description: Definition and scope of this carrier type.
|
||||
range: string
|
||||
required: false
|
||||
comments:
|
||||
- "Abstract base class - use concrete subclasses from CarrierTypes.yaml"
|
||||
- "Replaces CarrierTypeEnum per Rule 53 (enum-to-class promotion)"
|
||||
see_also:
|
||||
- https://www.loc.gov/bibframe/docs/
|
||||
- http://www.rdaregistry.info/termList/RDACarrierType/
|
||||
|
|
@ -0,0 +1,299 @@
|
|||
# CarrierTypes class (concrete subclasses)
|
||||
# Concrete carrier type subclasses per Rule 0b (Type/Types pattern)
|
||||
#
|
||||
# Created: 2026-01-23 per slot_fixes.yaml F24 (carrier_type migration)
|
||||
# Rule compliance: 0b (Type/Types pattern - this is the Types file)
|
||||
|
||||
id: https://nde.nl/ontology/hc/class/CarrierTypes
|
||||
name: CarrierTypes
|
||||
title: Carrier Types (Concrete Subclasses)
|
||||
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
bf: http://id.loc.gov/ontologies/bibframe/
|
||||
rda: http://rdaregistry.info/termList/
|
||||
|
||||
default_prefix: hc
|
||||
|
||||
imports:
|
||||
- linkml:types
|
||||
- ../metadata
|
||||
- ./CarrierType
|
||||
|
||||
classes:
|
||||
# === CODEX FORMS (Bound Volumes) ===
|
||||
|
||||
CodexCarrier:
|
||||
is_a: CarrierType
|
||||
class_uri: hc:CodexCarrier
|
||||
description: >-
|
||||
A book consisting of stacked, bound leaves/pages.
|
||||
The dominant form for Western manuscripts and printed books since antiquity.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: CODEX
|
||||
has_or_had_label:
|
||||
equals_string: Codex
|
||||
|
||||
BoundVolumeCarrier:
|
||||
is_a: CarrierType
|
||||
class_uri: hc:BoundVolumeCarrier
|
||||
description: General bound volume, broader than codex.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: BOUND_VOLUME
|
||||
has_or_had_label:
|
||||
equals_string: Bound Volume
|
||||
|
||||
PamphletCarrier:
|
||||
is_a: CarrierType
|
||||
class_uri: hc:PamphletCarrier
|
||||
description: Unbound or loosely bound publication, typically few pages.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: PAMPHLET
|
||||
has_or_had_label:
|
||||
equals_string: Pamphlet
|
||||
|
||||
NotebookCarrier:
|
||||
is_a: CarrierType
|
||||
class_uri: hc:NotebookCarrier
|
||||
description: Bound blank or ruled pages for writing.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: NOTEBOOK
|
||||
has_or_had_label:
|
||||
equals_string: Notebook
|
||||
|
||||
# === SHEET FORMS ===
|
||||
|
||||
SheetCarrier:
|
||||
is_a: CarrierType
|
||||
class_uri: hc:SheetCarrier
|
||||
description: Single flat sheet, unbound.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: SHEET
|
||||
has_or_had_label:
|
||||
equals_string: Sheet
|
||||
|
||||
BroadsideCarrier:
|
||||
is_a: CarrierType
|
||||
class_uri: hc:BroadsideCarrier
|
||||
description: Large single sheet printed on one side.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: BROADSIDE
|
||||
has_or_had_label:
|
||||
equals_string: Broadside
|
||||
|
||||
MapSheetCarrier:
|
||||
is_a: CarrierType
|
||||
class_uri: hc:MapSheetCarrier
|
||||
description: Cartographic material on a single sheet.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: MAP_SHEET
|
||||
has_or_had_label:
|
||||
equals_string: Map Sheet
|
||||
|
||||
PhotographCarrier:
|
||||
is_a: CarrierType
|
||||
class_uri: hc:PhotographCarrier
|
||||
description: Photographic print or negative.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: PHOTOGRAPH
|
||||
has_or_had_label:
|
||||
equals_string: Photograph
|
||||
|
||||
ParchmentLeafCarrier:
|
||||
is_a: CarrierType
|
||||
class_uri: hc:ParchmentLeafCarrier
|
||||
description: Single parchment or vellum leaf.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: PARCHMENT_LEAF
|
||||
has_or_had_label:
|
||||
equals_string: Parchment Leaf
|
||||
|
||||
# === SCROLL FORMS ===
|
||||
|
||||
ScrollCarrier:
|
||||
is_a: CarrierType
|
||||
class_uri: hc:ScrollCarrier
|
||||
description: Rolled manuscript form.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: SCROLL
|
||||
has_or_had_label:
|
||||
equals_string: Scroll
|
||||
|
||||
PapyrusScrollCarrier:
|
||||
is_a: CarrierType
|
||||
class_uri: hc:PapyrusScrollCarrier
|
||||
description: Scroll made from papyrus plant material.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: PAPYRUS_SCROLL
|
||||
has_or_had_label:
|
||||
equals_string: Papyrus Scroll
|
||||
|
||||
# === ANCIENT FORMS ===
|
||||
|
||||
ClayTabletCarrier:
|
||||
is_a: CarrierType
|
||||
class_uri: hc:ClayTabletCarrier
|
||||
description: Cuneiform tablet made from clay.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: CLAY_TABLET
|
||||
has_or_had_label:
|
||||
equals_string: Clay Tablet
|
||||
|
||||
WaxTabletCarrier:
|
||||
is_a: CarrierType
|
||||
class_uri: hc:WaxTabletCarrier
|
||||
description: Wooden tablet with wax coating for writing.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: WAX_TABLET
|
||||
has_or_had_label:
|
||||
equals_string: Wax Tablet
|
||||
|
||||
InscriptionCarrier:
|
||||
is_a: CarrierType
|
||||
class_uri: hc:InscriptionCarrier
|
||||
description: Text carved or incised into stone, metal, or other durable material.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: INSCRIPTION
|
||||
has_or_had_label:
|
||||
equals_string: Inscription
|
||||
|
||||
# === AUDIO CARRIERS ===
|
||||
|
||||
VinylDiscCarrier:
|
||||
is_a: CarrierType
|
||||
class_uri: hc:VinylDiscCarrier
|
||||
description: Analog audio recording on vinyl record.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: VINYL_DISC
|
||||
has_or_had_label:
|
||||
equals_string: Vinyl Disc
|
||||
|
||||
AudioCassetteCarrier:
|
||||
is_a: CarrierType
|
||||
class_uri: hc:AudioCassetteCarrier
|
||||
description: Compact cassette tape for audio recording.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: AUDIO_CASSETTE
|
||||
has_or_had_label:
|
||||
equals_string: Audio Cassette
|
||||
|
||||
CompactDiscCarrier:
|
||||
is_a: CarrierType
|
||||
class_uri: hc:CompactDiscCarrier
|
||||
description: Digital optical disc for audio (CD).
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: COMPACT_DISC
|
||||
has_or_had_label:
|
||||
equals_string: Compact Disc
|
||||
|
||||
# === VISUAL CARRIERS ===
|
||||
|
||||
FilmReelCarrier:
|
||||
is_a: CarrierType
|
||||
class_uri: hc:FilmReelCarrier
|
||||
description: Motion picture film on reel.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: FILM_REEL
|
||||
has_or_had_label:
|
||||
equals_string: Film Reel
|
||||
|
||||
VideotapeCarrier:
|
||||
is_a: CarrierType
|
||||
class_uri: hc:VideotapeCarrier
|
||||
description: Magnetic tape for video recording.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: VIDEOTAPE
|
||||
has_or_had_label:
|
||||
equals_string: Videotape
|
||||
|
||||
MicrofilmCarrier:
|
||||
is_a: CarrierType
|
||||
class_uri: hc:MicrofilmCarrier
|
||||
description: Microform on film for preservation/access.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: MICROFILM
|
||||
has_or_had_label:
|
||||
equals_string: Microfilm
|
||||
|
||||
MicroficheCarrier:
|
||||
is_a: CarrierType
|
||||
class_uri: hc:MicroficheCarrier
|
||||
description: Flat microform sheet.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: MICROFICHE
|
||||
has_or_had_label:
|
||||
equals_string: Microfiche
|
||||
|
||||
# === DIGITAL CARRIERS ===
|
||||
|
||||
FloppyDiskCarrier:
|
||||
is_a: CarrierType
|
||||
class_uri: hc:FloppyDiskCarrier
|
||||
description: Magnetic floppy disk storage medium.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: FLOPPY_DISK
|
||||
has_or_had_label:
|
||||
equals_string: Floppy Disk
|
||||
|
||||
OpticalDiscCarrier:
|
||||
is_a: CarrierType
|
||||
class_uri: hc:OpticalDiscCarrier
|
||||
description: Optical storage disc (CD-ROM, DVD, Blu-ray).
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: OPTICAL_DISC
|
||||
has_or_had_label:
|
||||
equals_string: Optical Disc
|
||||
|
||||
HardDriveCarrier:
|
||||
is_a: CarrierType
|
||||
class_uri: hc:HardDriveCarrier
|
||||
description: Magnetic or solid-state hard drive.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: HARD_DRIVE
|
||||
has_or_had_label:
|
||||
equals_string: Hard Drive
|
||||
|
||||
USBDriveCarrier:
|
||||
is_a: CarrierType
|
||||
class_uri: hc:USBDriveCarrier
|
||||
description: USB flash drive storage medium.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: USB_DRIVE
|
||||
has_or_had_label:
|
||||
equals_string: USB Drive
|
||||
|
||||
MemoryCardCarrier:
|
||||
is_a: CarrierType
|
||||
class_uri: hc:MemoryCardCarrier
|
||||
description: Flash memory card (SD, CompactFlash, etc.).
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: MEMORY_CARD
|
||||
has_or_had_label:
|
||||
equals_string: Memory Card
|
||||
|
|
@ -0,0 +1,89 @@
|
|||
id: https://nde.nl/ontology/hc/class/CatalogSystem
|
||||
name: CatalogSystem
|
||||
title: Catalog System
|
||||
description: |
|
||||
Represents an integrated library system (ILS), library management system (LMS),
|
||||
or catalog system used by heritage institutions for managing collections.
|
||||
|
||||
This class captures metadata about catalog/management systems including:
|
||||
- System name and vendor
|
||||
- System type (ILS, LMS, DAM, CMS, etc.)
|
||||
- Temporal usage (when adopted, when deprecated)
|
||||
|
||||
Created per slot_fixes.yaml revision for catalog_system migration (Rule 53/56).
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
schema: http://schema.org/
|
||||
prov: http://www.w3.org/ns/prov#
|
||||
imports:
|
||||
- linkml:types
|
||||
- ../slots/has_or_had_name
|
||||
- ../slots/has_or_had_type
|
||||
- ../slots/has_or_had_description
|
||||
- ../slots/has_or_had_url
|
||||
- ./CatalogSystemType
|
||||
default_prefix: hc
|
||||
classes:
|
||||
CatalogSystem:
|
||||
class_uri: schema:SoftwareApplication
|
||||
description: |
|
||||
An integrated library system, catalog system, or collection management system
|
||||
used by a heritage institution.
|
||||
|
||||
Common systems include:
|
||||
- ALMA (Ex Libris) - Cloud-based library services platform
|
||||
- Koha - Open-source ILS
|
||||
- Sierra (Innovative Interfaces) - ILS for academic/public libraries
|
||||
- Aleph (Ex Libris) - Legacy ILS
|
||||
- FOLIO - Open-source library platform
|
||||
- OCLC WorldShare - Cloud-based library management
|
||||
- Adlib/Axiell Collections - Museum collection management
|
||||
- The Museum System (TMS) - Art museum collections
|
||||
- CollectiveAccess - Open-source collections management
|
||||
slots:
|
||||
- has_or_had_name
|
||||
- has_or_had_type
|
||||
- has_or_had_description
|
||||
- has_or_had_url
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
description: The name of the catalog or collection management system.
|
||||
required: true
|
||||
examples:
|
||||
- value: ALMA
|
||||
- value: Koha
|
||||
- value: Sierra
|
||||
- value: Adlib
|
||||
has_or_had_type:
|
||||
description: The type of catalog system (ILS, CMS, DAM, etc.).
|
||||
range: CatalogSystemType
|
||||
inlined: true
|
||||
has_or_had_url:
|
||||
description: URL to the system vendor or documentation.
|
||||
exact_mappings:
|
||||
- schema:SoftwareApplication
|
||||
close_mappings:
|
||||
- prov:SoftwareAgent
|
||||
examples:
|
||||
- value:
|
||||
has_or_had_name: ALMA
|
||||
has_or_had_type:
|
||||
has_or_had_name: Integrated Library System
|
||||
has_or_had_description: Ex Libris ALMA cloud-based library services platform
|
||||
has_or_had_url: https://exlibrisgroup.com/products/alma-library-services-platform/
|
||||
description: Ex Libris ALMA library platform
|
||||
- value:
|
||||
has_or_had_name: Koha
|
||||
has_or_had_type:
|
||||
has_or_had_name: Integrated Library System
|
||||
has_or_had_description: Open-source integrated library system
|
||||
has_or_had_url: https://koha-community.org/
|
||||
description: Koha open-source ILS
|
||||
- value:
|
||||
has_or_had_name: Adlib
|
||||
has_or_had_type:
|
||||
has_or_had_name: Collection Management System
|
||||
has_or_had_description: Axiell Adlib museum collection management system
|
||||
has_or_had_url: https://www.axiell.com/solutions/product/axiell-collections/
|
||||
description: Adlib/Axiell Collections for museums
|
||||
|
|
@ -0,0 +1,49 @@
|
|||
id: https://nde.nl/ontology/hc/class/CatalogSystemType
|
||||
name: CatalogSystemType
|
||||
title: Catalog System Type (Abstract Base)
|
||||
description: |
|
||||
Abstract base class for catalog and collection management system types.
|
||||
|
||||
This class defines the taxonomy of system types used by heritage institutions
|
||||
for managing their collections and catalogs. Concrete subclasses are defined
|
||||
in CatalogSystemTypes.yaml following the Type/Types naming convention (Rule 0b).
|
||||
|
||||
Created per slot_fixes.yaml revision for catalog_system migration (Rule 53/56).
|
||||
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_name
|
||||
- ../slots/has_or_had_description
|
||||
default_prefix: hc
|
||||
classes:
|
||||
CatalogSystemType:
|
||||
class_uri: skos:Concept
|
||||
abstract: true
|
||||
description: |
|
||||
Abstract base class for types of catalog and collection management systems.
|
||||
|
||||
System type categories include:
|
||||
- Integrated Library Systems (ILS)
|
||||
- Library Management Systems (LMS)
|
||||
- Collection Management Systems (CMS)
|
||||
- Digital Asset Management (DAM)
|
||||
- Archives Management Systems
|
||||
- Discovery Platforms
|
||||
- Repository Systems
|
||||
slots:
|
||||
- has_or_had_name
|
||||
- has_or_had_description
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
description: The name of this catalog system type category.
|
||||
required: true
|
||||
has_or_had_description:
|
||||
description: Description of this catalog system type and its typical use cases.
|
||||
exact_mappings:
|
||||
- skos:Concept
|
||||
close_mappings:
|
||||
- schema:SoftwareApplicationCategory
|
||||
|
|
@ -0,0 +1,210 @@
|
|||
id: https://nde.nl/ontology/hc/class/CatalogSystemTypes
|
||||
name: CatalogSystemTypes
|
||||
title: Catalog System Types (Concrete Subclasses)
|
||||
description: |
|
||||
Concrete subclasses of CatalogSystemType representing specific categories of
|
||||
catalog and collection management systems used by heritage institutions.
|
||||
|
||||
Follows the Type/Types naming convention (Rule 0b):
|
||||
- CatalogSystemType.yaml: Abstract base class
|
||||
- CatalogSystemTypes.yaml: This file with concrete subclasses
|
||||
|
||||
Created per slot_fixes.yaml revision for catalog_system migration (Rule 53/56).
|
||||
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
|
||||
- ./CatalogSystemType
|
||||
default_prefix: hc
|
||||
classes:
|
||||
# === Library Systems ===
|
||||
IntegratedLibrarySystemType:
|
||||
is_a: CatalogSystemType
|
||||
class_uri: hc:IntegratedLibrarySystemType
|
||||
description: |
|
||||
Integrated Library System (ILS) - comprehensive software for library operations
|
||||
including cataloging, circulation, acquisitions, and patron management.
|
||||
|
||||
Examples: ALMA, Koha, Sierra, Aleph, Voyager, Symphony, Millennium
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Integrated Library System
|
||||
aliases:
|
||||
- ILS
|
||||
- Library Automation System
|
||||
|
||||
LibraryServicesPlattformType:
|
||||
is_a: CatalogSystemType
|
||||
class_uri: hc:LibraryServicesPlatformType
|
||||
description: |
|
||||
Library Services Platform (LSP) - next-generation cloud-based library management
|
||||
combining ILS functionality with electronic resource management.
|
||||
|
||||
Examples: ALMA, FOLIO, OCLC WorldShare, Sierra DNA
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Library Services Platform
|
||||
aliases:
|
||||
- LSP
|
||||
- Next-Generation ILS
|
||||
|
||||
DiscoverySystemType:
|
||||
is_a: CatalogSystemType
|
||||
class_uri: hc:DiscoverySystemType
|
||||
description: |
|
||||
Discovery system or discovery layer providing unified search across
|
||||
library catalogs, databases, and digital collections.
|
||||
|
||||
Examples: Primo, Summon, EDS, VuFind, Blacklight
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Discovery System
|
||||
aliases:
|
||||
- Discovery Layer
|
||||
- Discovery Platform
|
||||
- OPAC
|
||||
|
||||
# === Museum/Collection Systems ===
|
||||
CollectionManagementSystemType:
|
||||
is_a: CatalogSystemType
|
||||
class_uri: hc:CollectionManagementSystemType
|
||||
description: |
|
||||
Collection Management System (CMS) for museums and cultural heritage
|
||||
institutions to manage object records, provenance, exhibitions, and loans.
|
||||
|
||||
Examples: Adlib/Axiell Collections, TMS, CollectiveAccess, PastPerfect, EMu
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Collection Management System
|
||||
aliases:
|
||||
- CMS
|
||||
- Collections Database
|
||||
- Museum Management System
|
||||
|
||||
DigitalAssetManagementType:
|
||||
is_a: CatalogSystemType
|
||||
class_uri: hc:DigitalAssetManagementType
|
||||
description: |
|
||||
Digital Asset Management (DAM) system for organizing, storing, and
|
||||
retrieving digital media files (images, video, audio, documents).
|
||||
|
||||
Examples: ResourceSpace, NetX, Bynder, Canto, Portfolio
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Digital Asset Management
|
||||
aliases:
|
||||
- DAM
|
||||
- Media Asset Management
|
||||
- Digital Media Library
|
||||
|
||||
# === Archive Systems ===
|
||||
ArchivesManagementSystemType:
|
||||
is_a: CatalogSystemType
|
||||
class_uri: hc:ArchivesManagementSystemType
|
||||
description: |
|
||||
Archives Management System for managing archival collections following
|
||||
archival standards (ISAD(G), EAD, DACS).
|
||||
|
||||
Examples: ArchivesSpace, Atom (Access to Memory), Archivematica, CALM
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Archives Management System
|
||||
aliases:
|
||||
- AMS
|
||||
- Archival Management System
|
||||
|
||||
DigitalPreservationSystemType:
|
||||
is_a: CatalogSystemType
|
||||
class_uri: hc:DigitalPreservationSystemType
|
||||
description: |
|
||||
Digital Preservation System for long-term preservation of digital objects
|
||||
following standards like OAIS (Open Archival Information System).
|
||||
|
||||
Examples: Archivematica, Preservica, Rosetta, DSpace (preservation mode)
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Digital Preservation System
|
||||
aliases:
|
||||
- Preservation Repository
|
||||
- OAIS Repository
|
||||
|
||||
# === Repository Systems ===
|
||||
InstitutionalRepositoryType:
|
||||
is_a: CatalogSystemType
|
||||
class_uri: hc:InstitutionalRepositoryType
|
||||
description: |
|
||||
Institutional Repository for managing and providing access to scholarly
|
||||
outputs, research data, and institutional publications.
|
||||
|
||||
Examples: DSpace, EPrints, Fedora, Islandora, Samvera
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Institutional Repository
|
||||
aliases:
|
||||
- IR
|
||||
- Digital Repository
|
||||
- Research Repository
|
||||
|
||||
ContentManagementSystemType:
|
||||
is_a: CatalogSystemType
|
||||
class_uri: hc:ContentManagementSystemType
|
||||
description: |
|
||||
Content Management System for managing website content and digital
|
||||
publishing, often integrated with collection systems.
|
||||
|
||||
Examples: Drupal, WordPress, Omeka, CollectiveAccess
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Content Management System
|
||||
aliases:
|
||||
- CMS
|
||||
- Web CMS
|
||||
|
||||
# === Specialized Systems ===
|
||||
LinkedDataPlatformType:
|
||||
is_a: CatalogSystemType
|
||||
class_uri: hc:LinkedDataPlatformType
|
||||
description: |
|
||||
Linked Data Platform for publishing and managing linked open data
|
||||
about collections, using semantic web technologies.
|
||||
|
||||
Examples: Wikibase, ResearchSpace, Metaphacts, Neptune
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Linked Data Platform
|
||||
aliases:
|
||||
- Knowledge Graph Platform
|
||||
- Semantic Platform
|
||||
|
||||
ExhibitionManagementSystemType:
|
||||
is_a: CatalogSystemType
|
||||
class_uri: hc:ExhibitionManagementSystemType
|
||||
description: |
|
||||
Exhibition Management System for planning, organizing, and tracking
|
||||
museum exhibitions, loans, and installation.
|
||||
|
||||
Examples: Gallery Systems, ExhibitDay, MuseumPlus
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Exhibition Management System
|
||||
aliases:
|
||||
- EMS
|
||||
- Gallery Management
|
||||
|
||||
RegistrationSystemType:
|
||||
is_a: CatalogSystemType
|
||||
class_uri: hc:RegistrationSystemType
|
||||
description: |
|
||||
Registration System for tracking object movement, conditions,
|
||||
and custody within a museum or archive.
|
||||
|
||||
Examples: TMS Registration module, CollectionSpace
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Registration System
|
||||
aliases:
|
||||
- Object Tracking System
|
||||
- Movement Control
|
||||
|
|
@ -0,0 +1,64 @@
|
|||
id: https://nde.nl/ontology/hc/class/CategoryStatus
|
||||
name: CategoryStatus
|
||||
title: Category Status
|
||||
description: |
|
||||
Represents the status of a storage condition category assessment.
|
||||
|
||||
This class wraps the StorageConditionStatusEnum with additional metadata
|
||||
capabilities such as notes, timestamps, and assessor information.
|
||||
|
||||
Created per slot_fixes.yaml revision for category_status migration (Rule 53/56).
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
skos: http://www.w3.org/2004/02/skos/core#
|
||||
crm: http://www.cidoc-crm.org/cidoc-crm/
|
||||
imports:
|
||||
- linkml:types
|
||||
- ../enums/StorageConditionStatusEnum
|
||||
- ../slots/has_or_had_name
|
||||
- ../slots/has_or_had_description
|
||||
- ../slots/has_or_had_value
|
||||
default_prefix: hc
|
||||
classes:
|
||||
CategoryStatus:
|
||||
class_uri: crm:E55_Type
|
||||
description: |
|
||||
The status classification for a storage condition category assessment.
|
||||
|
||||
Status values follow the StorageConditionStatusEnum:
|
||||
- EXCELLENT: Optimal conditions, no concerns
|
||||
- GOOD: Acceptable conditions, minor issues
|
||||
- FAIR: Some concerns requiring attention
|
||||
- POOR: Significant issues requiring remediation
|
||||
- CRITICAL: Immediate action required
|
||||
- NOT_ASSESSED: Category not evaluated
|
||||
- NOT_APPLICABLE: Category does not apply to this storage
|
||||
slots:
|
||||
- has_or_had_name
|
||||
- has_or_had_description
|
||||
- has_or_had_value
|
||||
slot_usage:
|
||||
has_or_had_value:
|
||||
description: The status value from StorageConditionStatusEnum.
|
||||
range: StorageConditionStatusEnum
|
||||
required: true
|
||||
has_or_had_name:
|
||||
description: Human-readable name for this status (e.g., "Good", "Poor").
|
||||
has_or_had_description:
|
||||
description: Additional context or notes about this status assessment.
|
||||
exact_mappings:
|
||||
- crm:E55_Type
|
||||
close_mappings:
|
||||
- skos:Concept
|
||||
examples:
|
||||
- value:
|
||||
has_or_had_value: GOOD
|
||||
has_or_had_name: Good
|
||||
has_or_had_description: Acceptable temperature control with minor fluctuations
|
||||
description: Good status with explanatory note
|
||||
- value:
|
||||
has_or_had_value: CRITICAL
|
||||
has_or_had_name: Critical
|
||||
has_or_had_description: Immediate pest treatment required
|
||||
description: Critical status requiring action
|
||||
|
|
@ -3,7 +3,8 @@
|
|||
#
|
||||
# Created: 2026-01-16
|
||||
# Migration: temporal_coverage slot → has_or_had_content + Content (Rule 53/56)
|
||||
# Rule compliance: 38, 39, 53
|
||||
# Updated: 2026-01-23 - Added has_or_had_type for ContentType per F25 migration
|
||||
# Rule compliance: 0b, 38, 39, 53
|
||||
|
||||
id: https://nde.nl/ontology/hc/class/Content
|
||||
name: Content
|
||||
|
|
@ -25,8 +26,11 @@ imports:
|
|||
- ../metadata
|
||||
- ../slots/has_or_had_label
|
||||
- ../slots/has_or_had_description
|
||||
- ../slots/has_or_had_type
|
||||
- ../slots/temporal_extent
|
||||
- ./TimeSpan
|
||||
- ./ContentType
|
||||
- ./ContentTypes
|
||||
|
||||
classes:
|
||||
Content:
|
||||
|
|
@ -62,11 +66,30 @@ classes:
|
|||
- has_or_had_description: "Shipping manifests, correspondence, and financial records..."
|
||||
|
||||
**Migrated From**: temporal_coverage slot (2026-01-16) per Rule 53/56
|
||||
|
||||
**Updated 2026-01-23**: Added has_or_had_type for ContentType per F25 migration
|
||||
slots:
|
||||
- has_or_had_label
|
||||
- has_or_had_description
|
||||
- has_or_had_type
|
||||
- temporal_extent
|
||||
slot_usage:
|
||||
has_or_had_type:
|
||||
description: >-
|
||||
The type of intellectual content from ContentType taxonomy.
|
||||
Uses ContentType subclasses per Rule 0b (Type/Types pattern).
|
||||
Added 2026-01-23 per F25 migration.
|
||||
range: ContentType
|
||||
required: false
|
||||
examples:
|
||||
- value:
|
||||
has_or_had_code: RELIGIOUS
|
||||
has_or_had_label: Religious Content
|
||||
description: Religious text content
|
||||
- value:
|
||||
has_or_had_code: CARTOGRAPHIC
|
||||
has_or_had_label: Cartographic Content
|
||||
description: Maps and geographic content
|
||||
has_or_had_label:
|
||||
description: Label or title for the content scope
|
||||
examples:
|
||||
|
|
|
|||
|
|
@ -0,0 +1,73 @@
|
|||
# ContentType class (abstract base)
|
||||
# Type taxonomy for intellectual content carried by information carriers
|
||||
#
|
||||
# Created: 2026-01-23 per slot_fixes.yaml F25 (carries_information migration)
|
||||
# Rule compliance: 0b (Type/Types pattern - this is the Type file)
|
||||
|
||||
id: https://nde.nl/ontology/hc/class/ContentType
|
||||
name: ContentType
|
||||
title: Content Type Class (Abstract Base)
|
||||
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
crm: http://www.cidoc-crm.org/cidoc-crm/
|
||||
dcterms: http://purl.org/dc/terms/
|
||||
skos: http://www.w3.org/2004/02/skos/core#
|
||||
|
||||
default_prefix: hc
|
||||
|
||||
imports:
|
||||
- linkml:types
|
||||
- ../metadata
|
||||
- ../slots/has_or_had_code
|
||||
- ../slots/has_or_had_label
|
||||
- ../slots/has_or_had_description
|
||||
|
||||
classes:
|
||||
ContentType:
|
||||
class_uri: crm:E55_Type
|
||||
abstract: true
|
||||
description: >-
|
||||
Abstract base class for content type taxonomy.
|
||||
|
||||
**Rule 0b Compliance**: This is the abstract TYPE file.
|
||||
Concrete content types are defined in ContentTypes.yaml (plural).
|
||||
|
||||
Categories of intellectual content:
|
||||
- **Textual**: Books, articles, manuscripts, documents
|
||||
- **Visual**: Images, photographs, drawings, maps
|
||||
- **Audio**: Music, speech recordings, oral histories
|
||||
- **Audiovisual**: Films, videos, multimedia
|
||||
- **Data**: Datasets, databases, structured information
|
||||
- **Mixed**: Combinations of above categories
|
||||
|
||||
CIDOC-CRM Alignment: E55_Type as a controlled vocabulary for content types.
|
||||
exact_mappings:
|
||||
- crm:E55_Type
|
||||
close_mappings:
|
||||
- dcterms:type
|
||||
- skos:Concept
|
||||
slots:
|
||||
- has_or_had_code
|
||||
- has_or_had_label
|
||||
- has_or_had_description
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
description: Short code for the content type.
|
||||
range: string
|
||||
required: true
|
||||
identifier: true
|
||||
pattern: '^[A-Z][A-Z0-9_]*$'
|
||||
has_or_had_label:
|
||||
description: Human-readable label for the content type.
|
||||
range: string
|
||||
required: true
|
||||
has_or_had_description:
|
||||
description: Definition and scope of this content type.
|
||||
range: string
|
||||
required: false
|
||||
comments:
|
||||
- "Abstract base class - use concrete subclasses from ContentTypes.yaml"
|
||||
see_also:
|
||||
- https://www.cidoc-crm.org/html/cidoc_crm_v7.1.3.html#E55
|
||||
|
|
@ -0,0 +1,243 @@
|
|||
# ContentTypes class (concrete subclasses)
|
||||
# Concrete content type subclasses per Rule 0b (Type/Types pattern)
|
||||
#
|
||||
# Created: 2026-01-23 per slot_fixes.yaml F25 (carries_information migration)
|
||||
# Rule compliance: 0b (Type/Types pattern - this is the Types file)
|
||||
|
||||
id: https://nde.nl/ontology/hc/class/ContentTypes
|
||||
name: ContentTypes
|
||||
title: Content Types (Concrete Subclasses)
|
||||
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
|
||||
default_prefix: hc
|
||||
|
||||
imports:
|
||||
- linkml:types
|
||||
- ../metadata
|
||||
- ./ContentType
|
||||
|
||||
classes:
|
||||
# === TEXTUAL CONTENT ===
|
||||
|
||||
TextualContent:
|
||||
is_a: ContentType
|
||||
class_uri: hc:TextualContent
|
||||
description: Written or printed textual information.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: TEXTUAL
|
||||
has_or_had_label:
|
||||
equals_string: Textual Content
|
||||
|
||||
LiteraryContent:
|
||||
is_a: ContentType
|
||||
class_uri: hc:LiteraryContent
|
||||
description: Literary works including novels, poetry, drama.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: LITERARY
|
||||
has_or_had_label:
|
||||
equals_string: Literary Content
|
||||
|
||||
ScientificContent:
|
||||
is_a: ContentType
|
||||
class_uri: hc:ScientificContent
|
||||
description: Scientific and technical publications.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: SCIENTIFIC
|
||||
has_or_had_label:
|
||||
equals_string: Scientific Content
|
||||
|
||||
ReligiousContent:
|
||||
is_a: ContentType
|
||||
class_uri: hc:ReligiousContent
|
||||
description: Religious texts, scriptures, liturgical works.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: RELIGIOUS
|
||||
has_or_had_label:
|
||||
equals_string: Religious Content
|
||||
|
||||
LegalContent:
|
||||
is_a: ContentType
|
||||
class_uri: hc:LegalContent
|
||||
description: Legal documents, laws, contracts, court records.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: LEGAL
|
||||
has_or_had_label:
|
||||
equals_string: Legal Content
|
||||
|
||||
AdministrativeContent:
|
||||
is_a: ContentType
|
||||
class_uri: hc:AdministrativeContent
|
||||
description: Administrative and governmental records.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: ADMINISTRATIVE
|
||||
has_or_had_label:
|
||||
equals_string: Administrative Content
|
||||
|
||||
CorrespondenceContent:
|
||||
is_a: ContentType
|
||||
class_uri: hc:CorrespondenceContent
|
||||
description: Letters, emails, and other correspondence.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: CORRESPONDENCE
|
||||
has_or_had_label:
|
||||
equals_string: Correspondence
|
||||
|
||||
# === VISUAL CONTENT ===
|
||||
|
||||
VisualContent:
|
||||
is_a: ContentType
|
||||
class_uri: hc:VisualContent
|
||||
description: Visual information including images and graphics.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: VISUAL
|
||||
has_or_had_label:
|
||||
equals_string: Visual Content
|
||||
|
||||
PhotographicContent:
|
||||
is_a: ContentType
|
||||
class_uri: hc:PhotographicContent
|
||||
description: Photographs and photographic reproductions.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: PHOTOGRAPHIC
|
||||
has_or_had_label:
|
||||
equals_string: Photographic Content
|
||||
|
||||
CartographicContent:
|
||||
is_a: ContentType
|
||||
class_uri: hc:CartographicContent
|
||||
description: Maps, atlases, geographic visualizations.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: CARTOGRAPHIC
|
||||
has_or_had_label:
|
||||
equals_string: Cartographic Content
|
||||
|
||||
ArtisticContent:
|
||||
is_a: ContentType
|
||||
class_uri: hc:ArtisticContent
|
||||
description: Artistic works including drawings, prints, paintings.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: ARTISTIC
|
||||
has_or_had_label:
|
||||
equals_string: Artistic Content
|
||||
|
||||
# === AUDIO CONTENT ===
|
||||
|
||||
AudioContent:
|
||||
is_a: ContentType
|
||||
class_uri: hc:AudioContent
|
||||
description: Sound recordings of any type.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: AUDIO
|
||||
has_or_had_label:
|
||||
equals_string: Audio Content
|
||||
|
||||
MusicContent:
|
||||
is_a: ContentType
|
||||
class_uri: hc:MusicContent
|
||||
description: Musical recordings and compositions.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: MUSIC
|
||||
has_or_had_label:
|
||||
equals_string: Music Content
|
||||
|
||||
SpokenWordContent:
|
||||
is_a: ContentType
|
||||
class_uri: hc:SpokenWordContent
|
||||
description: Spoken word recordings, speeches, oral histories.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: SPOKEN_WORD
|
||||
has_or_had_label:
|
||||
equals_string: Spoken Word Content
|
||||
|
||||
# === AUDIOVISUAL CONTENT ===
|
||||
|
||||
AudiovisualContent:
|
||||
is_a: ContentType
|
||||
class_uri: hc:AudiovisualContent
|
||||
description: Combined audio and visual media.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: AUDIOVISUAL
|
||||
has_or_had_label:
|
||||
equals_string: Audiovisual Content
|
||||
|
||||
FilmContent:
|
||||
is_a: ContentType
|
||||
class_uri: hc:FilmContent
|
||||
description: Motion picture films.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: FILM
|
||||
has_or_had_label:
|
||||
equals_string: Film Content
|
||||
|
||||
VideoContent:
|
||||
is_a: ContentType
|
||||
class_uri: hc:VideoContent
|
||||
description: Video recordings.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: VIDEO
|
||||
has_or_had_label:
|
||||
equals_string: Video Content
|
||||
|
||||
# === DATA CONTENT ===
|
||||
|
||||
DataContent:
|
||||
is_a: ContentType
|
||||
class_uri: hc:DataContent
|
||||
description: Structured data and datasets.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: DATA
|
||||
has_or_had_label:
|
||||
equals_string: Data Content
|
||||
|
||||
StatisticalContent:
|
||||
is_a: ContentType
|
||||
class_uri: hc:StatisticalContent
|
||||
description: Statistical data and analyses.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: STATISTICAL
|
||||
has_or_had_label:
|
||||
equals_string: Statistical Content
|
||||
|
||||
# === MIXED/OTHER ===
|
||||
|
||||
MixedContent:
|
||||
is_a: ContentType
|
||||
class_uri: hc:MixedContent
|
||||
description: Combination of multiple content types.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: MIXED
|
||||
has_or_had_label:
|
||||
equals_string: Mixed Content
|
||||
|
||||
MultimediaContent:
|
||||
is_a: ContentType
|
||||
class_uri: hc:MultimediaContent
|
||||
description: Interactive multimedia combining multiple formats.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: MULTIMEDIA
|
||||
has_or_had_label:
|
||||
equals_string: Multimedia Content
|
||||
|
|
@ -0,0 +1,143 @@
|
|||
# CreationEvent - Event representing the creation of an object or work
|
||||
#
|
||||
# Created per slot_fixes.yaml migration for: date_created
|
||||
# Creation date: 2026-01-23
|
||||
# Rule compliance: 39 (RiC-O naming), 50 (ontology mapping), 53 (generic slot reuse)
|
||||
|
||||
id: https://nde.nl/ontology/hc/class/CreationEvent
|
||||
name: creation_event
|
||||
title: Creation Event
|
||||
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
crm: http://www.cidoc-crm.org/cidoc-crm/
|
||||
prov: http://www.w3.org/ns/prov#
|
||||
schema: http://schema.org/
|
||||
|
||||
default_prefix: hc
|
||||
|
||||
imports:
|
||||
- linkml:types
|
||||
- ./TimeSpan
|
||||
- ./Agent
|
||||
- ../slots/temporal_extent
|
||||
- ../slots/has_or_had_description
|
||||
- ../slots/has_or_had_place
|
||||
|
||||
classes:
|
||||
CreationEvent:
|
||||
class_uri: crm:E65_Creation
|
||||
description: |
|
||||
Event representing the creation of an object, work, or artifact.
|
||||
|
||||
**DEFINITION**:
|
||||
CreationEvent models the act of bringing an object into existence,
|
||||
capturing when, where, and by whom it was created.
|
||||
|
||||
**ONTOLOGY ALIGNMENT**:
|
||||
- **Primary** (`class_uri`): `crm:E65_Creation` - CIDOC-CRM creation event
|
||||
- **Close**: `prov:Activity` - PROV-O activity
|
||||
- **Close**: `schema:CreateAction` - Schema.org create action
|
||||
|
||||
**USAGE**:
|
||||
Replaces simple `date_created` strings with structured event data:
|
||||
- Temporal extent (including approximate dates like "c. 1665")
|
||||
- Creator/artist information
|
||||
- Place of creation
|
||||
- Creation circumstances
|
||||
|
||||
**Example**:
|
||||
```yaml
|
||||
is_or_was_created_through:
|
||||
temporal_extent:
|
||||
begin_of_the_begin: "1665-01-01"
|
||||
end_of_the_end: "1665-12-31"
|
||||
display_date: "c. 1665"
|
||||
has_or_had_creator:
|
||||
- agent_name: "Johannes Vermeer"
|
||||
agent_role: "artist"
|
||||
has_or_had_place:
|
||||
place_name: "Delft"
|
||||
country: "NL"
|
||||
```
|
||||
|
||||
close_mappings:
|
||||
- prov:Activity
|
||||
- schema:CreateAction
|
||||
|
||||
slots:
|
||||
- temporal_extent
|
||||
- has_or_had_description
|
||||
- has_or_had_place
|
||||
- has_or_had_creator
|
||||
- creation_method
|
||||
- display_date
|
||||
|
||||
slot_usage:
|
||||
temporal_extent:
|
||||
range: TimeSpan
|
||||
inlined: true
|
||||
description: |
|
||||
When the creation occurred, using CIDOC-CRM TimeSpan.
|
||||
Supports fuzzy/approximate dates via display_date.
|
||||
examples:
|
||||
- value:
|
||||
begin_of_the_begin: "1665-01-01"
|
||||
end_of_the_end: "1665-12-31"
|
||||
display_date: "c. 1665"
|
||||
description: Approximate creation date
|
||||
has_or_had_creator:
|
||||
range: Agent
|
||||
multivalued: true
|
||||
inlined_as_list: true
|
||||
description: Person(s) or organization(s) who created the object.
|
||||
examples:
|
||||
- value:
|
||||
- agent_name: "Johannes Vermeer"
|
||||
description: Single artist
|
||||
has_or_had_place:
|
||||
range: Place
|
||||
inlined: true
|
||||
description: Location where creation occurred.
|
||||
examples:
|
||||
- value:
|
||||
place_name: "Delft"
|
||||
description: City of creation
|
||||
display_date:
|
||||
range: string
|
||||
description: |
|
||||
Human-readable date string for display purposes.
|
||||
Preserves original date expressions like "c. 1665", "17th century",
|
||||
"196 BCE", "1642".
|
||||
examples:
|
||||
- value: "c. 1665"
|
||||
description: Circa date
|
||||
- value: "17th century"
|
||||
description: Century-level precision
|
||||
- value: "196 BCE"
|
||||
description: Historical date
|
||||
creation_method:
|
||||
range: string
|
||||
description: Technique or method used in creation.
|
||||
examples:
|
||||
- value: "oil on canvas"
|
||||
description: Painting technique
|
||||
|
||||
attributes:
|
||||
has_or_had_creator:
|
||||
range: Agent
|
||||
multivalued: true
|
||||
inlined_as_list: true
|
||||
display_date:
|
||||
range: string
|
||||
description: Human-readable date for display.
|
||||
creation_method:
|
||||
range: string
|
||||
description: Technique or method of creation.
|
||||
|
||||
annotations:
|
||||
custodian_types: '["G", "M", "L", "A"]'
|
||||
custodian_types_rationale: "Creation events primarily relevant to galleries, museums, libraries, archives with collections."
|
||||
specificity_score: 0.70
|
||||
specificity_rationale: "Fairly specific to collection object contexts."
|
||||
|
|
@ -28,7 +28,8 @@ imports:
|
|||
- ../slots/has_archive_path
|
||||
- ../slots/has_or_had_level # was: data_tier - migrated per Rule 53/56/57 (2026-01-23)
|
||||
- ./DataTierLevel
|
||||
- ../slots/date_precision
|
||||
- ../slots/degree_of_certainty # was: date_precision - migrated per Rule 53/56/57 (2026-01-23)
|
||||
- ./DatePrecision
|
||||
- ../slots/description
|
||||
- ../slots/event_date
|
||||
- ../slots/event_type
|
||||
|
|
@ -60,7 +61,7 @@ classes:
|
|||
\ Scope decrease (ingekrompen)\n- REORGANIZATION: Complex restructuring (herstructurering)\n\n**EXCLUDED EVENT TYPES**\n\
|
||||
\nSome patterns are NOT mapped to events:\n- predecessor: This is a relationship, not an event\n- friends_org: Separate\
|
||||
\ organization (Vrienden van...)\n- reopening: Not in OrganizationalChangeEventTypeEnum\n\n**EXAMPLE USAGE**\n\n```yaml\n\
|
||||
timeline_events:\n - event_type: FOUNDING\n event_date: \"2005-04-30\"\n date_precision: day\n is_or_was_approximate:\n\
|
||||
timeline_events:\n - event_type: FOUNDING\n event_date: \"2005-04-30\"\n degree_of_certainty:\n has_or_had_short_code: DAY\n is_or_was_approximate:\n\
|
||||
\ approximation_level: EXACT\n description: >-\n Het RHC Drents Archief werd opgericht op 30 april 2005.\n Het is de voortzetting\
|
||||
\ van het Rijksarchief in Drenthe (sinds 2000).\n source_url:\n - \"https://nl.wikipedia.org/wiki/Drents_Archief\"\
|
||||
\n - \"https://bizzy.ai/nl/nl/52454037/regionaal-historisch-centrum-rhc-drents-archief\"\n extraction_method:\
|
||||
|
|
@ -79,7 +80,7 @@ classes:
|
|||
- is_or_was_approximate
|
||||
- archive_path
|
||||
- has_or_had_level # was: data_tier - migrated per Rule 53/56/57 (2026-01-23)
|
||||
- date_precision
|
||||
- degree_of_certainty # was: date_precision - migrated per Rule 53/56/57 (2026-01-23)
|
||||
- description
|
||||
- event_date
|
||||
- event_type
|
||||
|
|
@ -95,8 +96,22 @@ classes:
|
|||
required: true
|
||||
event_date:
|
||||
required: false
|
||||
date_precision:
|
||||
degree_of_certainty: # was: date_precision - migrated per Rule 53/56/57 (2026-01-23)
|
||||
range: DatePrecision
|
||||
inlined: true
|
||||
required: true
|
||||
description: >-
|
||||
Precision level of the event date.
|
||||
Standard codes: DAY, MONTH, YEAR, DECADE, CENTURY, UNKNOWN
|
||||
examples:
|
||||
- value:
|
||||
has_or_had_short_code: DAY
|
||||
has_or_had_description: Full date with day precision
|
||||
description: Day precision
|
||||
- value:
|
||||
has_or_had_short_code: YEAR
|
||||
has_or_had_description: Year-only precision
|
||||
description: Year precision
|
||||
# REMOVED - migrated to is_or_was_approximate (Rule 53)
|
||||
# is_approximate:
|
||||
# required: true
|
||||
|
|
@ -156,9 +171,9 @@ classes:
|
|||
value_presence: PRESENT
|
||||
postconditions:
|
||||
slot_conditions:
|
||||
date_precision:
|
||||
degree_of_certainty: # was: date_precision
|
||||
value_presence: PRESENT
|
||||
description: If event_date is provided, date_precision must be specified
|
||||
description: If event_date is provided, degree_of_certainty (precision) must be specified
|
||||
comments:
|
||||
- 'Source-agnostic design - see Rule 37: Provenance Separation'
|
||||
- Use observation_ref to link to detailed source provenance
|
||||
|
|
@ -175,7 +190,9 @@ classes:
|
|||
- value:
|
||||
event_type: FOUNDING
|
||||
event_date: '2005-04-30'
|
||||
date_precision: day
|
||||
degree_of_certainty: # was: date_precision
|
||||
has_or_had_short_code: DAY
|
||||
has_or_had_description: Full date with day precision
|
||||
is_or_was_approximate:
|
||||
approximation_level: EXACT
|
||||
description: Het RHC Drents Archief werd opgericht op 30 april 2005.
|
||||
|
|
@ -192,7 +209,9 @@ classes:
|
|||
- value:
|
||||
event_type: MERGER
|
||||
event_date: '2005'
|
||||
date_precision: year
|
||||
degree_of_certainty: # was: date_precision
|
||||
has_or_had_short_code: YEAR
|
||||
has_or_had_description: Year-only precision
|
||||
is_or_was_approximate:
|
||||
approximation_level: EXACT
|
||||
description: In 2005 ging het Gemeentearchief Assen op in het Drents Archief.
|
||||
|
|
@ -207,7 +226,9 @@ classes:
|
|||
- value:
|
||||
event_type: FOUNDING
|
||||
event_date: '1810'
|
||||
date_precision: year
|
||||
degree_of_certainty: # was: date_precision
|
||||
has_or_had_short_code: YEAR
|
||||
has_or_had_description: Year-only precision
|
||||
is_or_was_approximate:
|
||||
approximation_level: EXACT
|
||||
description: The Rijksmuseum was founded in 1810 as the Royal Museum.
|
||||
|
|
@ -223,7 +244,9 @@ classes:
|
|||
- value:
|
||||
event_type: TRANSFER
|
||||
event_date: '1885'
|
||||
date_precision: year
|
||||
degree_of_certainty: # was: date_precision
|
||||
has_or_had_short_code: YEAR
|
||||
has_or_had_description: Year-only precision
|
||||
is_or_was_approximate:
|
||||
approximation_level: EXACT
|
||||
description: The Rijksmuseum moved to its current building designed by Cuypers.
|
||||
|
|
@ -240,7 +263,9 @@ classes:
|
|||
- value:
|
||||
event_type: FOUNDING
|
||||
event_date: '1880'
|
||||
date_precision: year
|
||||
degree_of_certainty: # was: date_precision
|
||||
has_or_had_short_code: YEAR
|
||||
has_or_had_description: Year-only precision
|
||||
is_or_was_approximate:
|
||||
approximation_level: APPROXIMATE
|
||||
has_or_had_label: "circa 1880"
|
||||
|
|
|
|||
|
|
@ -0,0 +1,105 @@
|
|||
id: https://nde.nl/ontology/hc/class/DatePrecision
|
||||
name: date_precision_class
|
||||
title: DatePrecision Class
|
||||
description: >-
|
||||
Represents the precision level of a date value.
|
||||
|
||||
Used to indicate how specific date information is, from full day
|
||||
precision to century-level approximations.
|
||||
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
crm: http://www.cidoc-crm.org/cidoc-crm/
|
||||
time: http://www.w3.org/2006/time#
|
||||
|
||||
imports:
|
||||
- linkml:types
|
||||
- ../slots/has_or_had_label
|
||||
- ../slots/has_or_had_description
|
||||
- ../slots/has_or_had_short_code
|
||||
|
||||
default_prefix: hc
|
||||
|
||||
classes:
|
||||
DatePrecision:
|
||||
class_uri: hc:DatePrecision
|
||||
description: >-
|
||||
Date precision level classification.
|
||||
|
||||
**Standard Precision Levels**:
|
||||
|
||||
| Level | Short Code | Format | Example |
|
||||
|-------|------------|--------|---------|
|
||||
| Day | DAY | YYYY-MM-DD | 2005-04-30 |
|
||||
| Month | MONTH | YYYY-MM | 2005-04 |
|
||||
| Year | YEAR | YYYY | 2005 |
|
||||
| Decade | DECADE | YYYY0s | 2000s |
|
||||
| Century | CENTURY | YYth century | 21st century |
|
||||
| Unknown | UNKNOWN | - | Date mentioned but precision unclear |
|
||||
|
||||
**CIDOC-CRM Alignment**: Related to time dimension concepts in CRM.
|
||||
|
||||
**OWL Time Alignment**: Related to time:TemporalUnit for precision levels.
|
||||
close_mappings:
|
||||
- time:TemporalUnit
|
||||
- crm:E52_Time-Span
|
||||
slots:
|
||||
- has_or_had_label
|
||||
- has_or_had_short_code
|
||||
- has_or_had_description
|
||||
slot_usage:
|
||||
has_or_had_label:
|
||||
description: Human-readable name for the precision level.
|
||||
range: string
|
||||
required: true
|
||||
examples:
|
||||
- value: "Day"
|
||||
description: Full date with day precision
|
||||
- value: "Year"
|
||||
description: Year-only precision
|
||||
has_or_had_short_code:
|
||||
description: >-
|
||||
Short code identifier for the precision level.
|
||||
Standard codes: DAY, MONTH, YEAR, DECADE, CENTURY, UNKNOWN
|
||||
range: string
|
||||
required: true
|
||||
pattern: "^[A-Z]+$"
|
||||
examples:
|
||||
- value: "DAY"
|
||||
description: Full date precision (YYYY-MM-DD)
|
||||
- value: "YEAR"
|
||||
description: Year-only precision (YYYY)
|
||||
- value: "UNKNOWN"
|
||||
description: Precision cannot be determined
|
||||
has_or_had_description:
|
||||
description: Detailed description of what this precision level means.
|
||||
range: string
|
||||
required: false
|
||||
examples:
|
||||
- value: "Full date with day precision (YYYY-MM-DD format)"
|
||||
description: Day precision explanation
|
||||
annotations:
|
||||
specificity_score: 0.40
|
||||
specificity_rationale: >-
|
||||
Date precision is moderately specific - used primarily in
|
||||
temporal data contexts.
|
||||
custodian_types: '["*"]'
|
||||
custodian_types_rationale: >-
|
||||
Date precision applies universally to all custodian types.
|
||||
examples:
|
||||
- value:
|
||||
has_or_had_label: "Day"
|
||||
has_or_had_short_code: "DAY"
|
||||
has_or_had_description: "Full date with day precision (YYYY-MM-DD)"
|
||||
description: Day precision level
|
||||
- value:
|
||||
has_or_had_label: "Year"
|
||||
has_or_had_short_code: "YEAR"
|
||||
has_or_had_description: "Year-only precision (YYYY format)"
|
||||
description: Year precision level
|
||||
- value:
|
||||
has_or_had_label: "Unknown"
|
||||
has_or_had_short_code: "UNKNOWN"
|
||||
has_or_had_description: "Date mentioned but precision cannot be determined"
|
||||
description: Unknown precision level
|
||||
|
|
@ -25,8 +25,11 @@ imports:
|
|||
- ../slots/is_or_was_caused_by
|
||||
- ../slots/temporal_extent
|
||||
- ../slots/has_or_had_description
|
||||
# ADDED 2026-01-24: occurs_or_occurred_at for death_place migration (Rule 53)
|
||||
- ../slots/occurs_or_occurred_at
|
||||
- ./CauseOfDeath
|
||||
- ./TimeSpan
|
||||
- ./Place
|
||||
|
||||
classes:
|
||||
DeceasedStatus:
|
||||
|
|
@ -91,6 +94,8 @@ classes:
|
|||
- is_or_was_caused_by
|
||||
- temporal_extent
|
||||
- has_or_had_description
|
||||
# ADDED 2026-01-24: For death_place migration (Rule 53)
|
||||
- occurs_or_occurred_at
|
||||
|
||||
slot_usage:
|
||||
is_or_was_caused_by:
|
||||
|
|
@ -111,6 +116,24 @@ classes:
|
|||
description: |
|
||||
Additional narrative description of the death circumstances,
|
||||
commemorative information, or source documentation.
|
||||
# ADDED 2026-01-24: For death_place migration (Rule 53)
|
||||
occurs_or_occurred_at:
|
||||
range: Place
|
||||
inlined: true
|
||||
description: |
|
||||
The place where the death occurred.
|
||||
Replaces the simple death_place string slot.
|
||||
Use Place class for structured location with coordinates, GeoNames ID, etc.
|
||||
examples:
|
||||
- value:
|
||||
place_name: Auschwitz concentration camp
|
||||
country: PL
|
||||
description: Historical location
|
||||
- value:
|
||||
place_name: Gaza City
|
||||
country: PS
|
||||
geonames_id: "281133"
|
||||
description: Conflict zone death with GeoNames link
|
||||
|
||||
comments:
|
||||
- "Structured death information for heritage workers"
|
||||
|
|
|
|||
|
|
@ -33,7 +33,9 @@ imports:
|
|||
- ../slots/has_or_had_provenance # was: provenance_text - migrated per Rule 53/56 (2026-01-18)
|
||||
- ./Provenance
|
||||
- ./Description
|
||||
- ../slots/catalog_raisonne_number
|
||||
# REMOVED 2026-01-23: catalog_raisonne_number - migrated to has_or_had_identifier per Rule 53/F26
|
||||
- ./IdentifierType
|
||||
- ./IdentifierTypes
|
||||
- ../slots/has_or_had_condition_note
|
||||
- ../slots/conservation_history
|
||||
- ../slots/has_or_had_conservation_record
|
||||
|
|
@ -43,7 +45,8 @@ imports:
|
|||
- ../slots/current_keeper
|
||||
- ../slots/current_location
|
||||
- ../slots/has_or_had_custodian_type
|
||||
- ../slots/date_created
|
||||
- ./CreationEvent
|
||||
- ../slots/is_or_was_created_through # was: date_created - migrated per Rule 53 (2026-01-23)
|
||||
- ../slots/dimension
|
||||
- ../slots/exhibited_in
|
||||
- ../slots/iconography
|
||||
|
|
@ -124,7 +127,7 @@ classes:
|
|||
- has_accession_number
|
||||
- has_acquisition_date
|
||||
- has_acquisition_method
|
||||
- catalog_raisonne_number
|
||||
# REMOVED 2026-01-23: catalog_raisonne_number - migrated to has_or_had_identifier per Rule 53/F26
|
||||
- has_or_had_condition_note
|
||||
- conservation_history
|
||||
- has_or_had_conservation_record
|
||||
|
|
@ -135,7 +138,7 @@ classes:
|
|||
- current_keeper
|
||||
- current_location
|
||||
- has_or_had_custodian_type
|
||||
- date_created
|
||||
- is_or_was_created_through # was: date_created - migrated per Rule 53 (2026-01-23)
|
||||
- dimension
|
||||
- exhibited_in
|
||||
- external_identifier
|
||||
|
|
@ -219,13 +222,30 @@ classes:
|
|||
- value: Workshop of
|
||||
- value: Attributed to
|
||||
- value: Circle of
|
||||
date_created:
|
||||
is_or_was_created_through: # was: date_created - migrated per Rule 53 (2026-01-23)
|
||||
required: false
|
||||
range: string
|
||||
range: CreationEvent
|
||||
inlined: true
|
||||
description: |
|
||||
Creation event for this object, including temporal extent and creator.
|
||||
MIGRATED from date_created per slot_fixes.yaml (Rule 53).
|
||||
Uses CreationEvent class with TimeSpan for temporal modeling.
|
||||
examples:
|
||||
- value: c. 1665
|
||||
- value: '1642'
|
||||
- value: 12th century BCE
|
||||
- value:
|
||||
display_date: "c. 1665"
|
||||
temporal_extent:
|
||||
begin_of_the_begin: "1664-01-01"
|
||||
end_of_the_end: "1667-12-31"
|
||||
description: "Was date_created: c. 1665"
|
||||
- value:
|
||||
display_date: "1642"
|
||||
temporal_extent:
|
||||
begin_of_the_begin: "1642-01-01"
|
||||
end_of_the_end: "1642-12-31"
|
||||
description: "Was date_created: 1642"
|
||||
- value:
|
||||
display_date: "12th century BCE"
|
||||
description: "Was date_created: 12th century BCE"
|
||||
creation_timespan:
|
||||
required: false
|
||||
range: TimeSpan
|
||||
|
|
@ -389,25 +409,46 @@ classes:
|
|||
multivalued: true
|
||||
examples:
|
||||
- value: https://www.mauritshuis.nl/media/670-large.jpg
|
||||
# MIGRATED 2026-01-15: wikidata_id → has_or_had_identifier + WikiDataIdentifier (Rule 53)
|
||||
# MIGRATED 2026-01-15: wikidata_id → has_or_had_identifier (Rule 53)
|
||||
# MIGRATED 2026-01-23: catalog_raisonne_number → has_or_had_identifier (Rule 53/F26)
|
||||
has_or_had_identifier:
|
||||
description: |
|
||||
Wikidata entity identifier (Q-number) for this exhibited object.
|
||||
External identifiers for this exhibited object.
|
||||
|
||||
MIGRATED 2026-01-15: Replaces wikidata_id slot per Rule 53.
|
||||
MIGRATED 2026-01-23: Also includes catalog raisonné numbers per Rule 53/F26.
|
||||
|
||||
Use has_or_had_type with IdentifierType subclasses to specify identifier type.
|
||||
required: false
|
||||
range: WikiDataIdentifier
|
||||
range: Identifier
|
||||
multivalued: true
|
||||
inlined: true
|
||||
inlined_as_list: true
|
||||
examples:
|
||||
- value:
|
||||
qid: "Q81858"
|
||||
label: "Girl with a Pearl Earring"
|
||||
identifier_value: "Q81858"
|
||||
has_or_had_type:
|
||||
has_or_had_code: WIKIDATA
|
||||
has_or_had_label: Wikidata ID
|
||||
description: Girl with a Pearl Earring Wikidata identifier
|
||||
- value:
|
||||
qid: "Q219831"
|
||||
label: "The Night Watch"
|
||||
identifier_value: "Q219831"
|
||||
has_or_had_type:
|
||||
has_or_had_code: WIKIDATA
|
||||
has_or_had_label: Wikidata ID
|
||||
description: The Night Watch Wikidata identifier
|
||||
- value:
|
||||
identifier_value: "Hofstede de Groot 1907, no. 44"
|
||||
has_or_had_type:
|
||||
has_or_had_code: CATALOG_RAISONNE
|
||||
has_or_had_label: Catalogue Raisonné Number
|
||||
description: Catalog raisonné reference (was catalog_raisonne_number)
|
||||
- value:
|
||||
identifier_value: "Bredius 410"
|
||||
has_or_had_type:
|
||||
has_or_had_code: CATALOG_RAISONNE
|
||||
has_or_had_label: Catalogue Raisonné Number
|
||||
description: Bredius catalog reference
|
||||
external_identifier:
|
||||
required: false
|
||||
range: string
|
||||
|
|
@ -415,12 +456,7 @@ classes:
|
|||
examples:
|
||||
- value: rkdimages:23903
|
||||
- value: getty_ulan:500121212
|
||||
catalog_raisonne_number:
|
||||
required: false
|
||||
range: string
|
||||
examples:
|
||||
- value: Hofstede de Groot 1907, no. 44
|
||||
- value: Bredius 410
|
||||
# REMOVED 2026-01-23: catalog_raisonne_number - migrated to has_or_had_identifier per Rule 53/F26
|
||||
has_or_had_conservation_record:
|
||||
required: false
|
||||
range: ConservationRecord
|
||||
|
|
@ -499,10 +535,11 @@ classes:
|
|||
- Johannes Vermeer
|
||||
creator_role:
|
||||
- Artist
|
||||
date_created: c. 1665
|
||||
creation_timespan:
|
||||
begin_of_the_begin: '1664-01-01'
|
||||
end_of_the_end: '1667-12-31'
|
||||
is_or_was_created_through: # was: date_created - migrated per Rule 53 (2026-01-23)
|
||||
display_date: "c. 1665"
|
||||
temporal_extent:
|
||||
begin_of_the_begin: '1664-01-01'
|
||||
end_of_the_end: '1667-12-31'
|
||||
creation_place:
|
||||
place_name: Delft
|
||||
country: NL
|
||||
|
|
@ -543,7 +580,11 @@ classes:
|
|||
object_type: PAINTING
|
||||
creator:
|
||||
- Rembrandt van Rijn
|
||||
date_created: '1642'
|
||||
is_or_was_created_through: # was: date_created - migrated per Rule 53 (2026-01-23)
|
||||
display_date: "1642"
|
||||
temporal_extent:
|
||||
begin_of_the_begin: '1642-01-01'
|
||||
end_of_the_end: '1642-12-31'
|
||||
medium: Oil on canvas
|
||||
dimensions: 363 × 437 cm
|
||||
inscription:
|
||||
|
|
@ -558,7 +599,8 @@ classes:
|
|||
object_id: https://nde.nl/ontology/hc/object/british-museum-rosetta-stone
|
||||
object_name: Rosetta Stone
|
||||
object_type: ARCHAEOLOGICAL_ARTIFACT
|
||||
date_created: 196 BCE
|
||||
is_or_was_created_through: # was: date_created - migrated per Rule 53 (2026-01-23)
|
||||
display_date: "196 BCE"
|
||||
medium: Granodiorite
|
||||
dimensions: 114.4 × 72.3 × 27.9 cm, 762 kg
|
||||
current_keeper: https://nde.nl/ontology/hc/custodian/uk/british-museum
|
||||
|
|
|
|||
|
|
@ -71,10 +71,13 @@ imports:
|
|||
- ../slots/is_or_was_access_restricted
|
||||
- ../slots/has_or_had_comprehensive_overview
|
||||
# REMOVED 2026-01-22: card_description, card_description_en → has_or_had_description + Description (with language tag) per slot_fixes.yaml
|
||||
- ../slots/card_image_url
|
||||
- ../slots/card_title
|
||||
- ../slots/card_title_en
|
||||
- ../slots/card_url
|
||||
# MIGRATED 2026-01-22: card_image_url → has_or_had_image + Image per slot_fixes.yaml
|
||||
- ../slots/has_or_had_image
|
||||
- ./Image
|
||||
# MIGRATED 2026-01-22: card_title, card_title_en → has_or_had_label + Label (multivalued with language) per slot_fixes.yaml
|
||||
# NOTE: has_or_had_label already imported elsewhere in this file
|
||||
# MIGRATED 2026-01-22: card_url → has_or_had_url + URL per slot_fixes.yaml
|
||||
# NOTE: has_or_had_url already imported elsewhere in this file
|
||||
- ../slots/has_or_had_quantity # was: claims_count - migrated per Rule 53 (2026-01-19)
|
||||
# REMOVED 2026-01-22: ../slots/colonial - migrated to includes_or_included + GeoSpatialPlace + is_or_was_categorized_as + ColonialStatus (Rule 53)
|
||||
- ../slots/includes_or_included
|
||||
|
|
@ -1038,10 +1041,12 @@ classes:
|
|||
slots:
|
||||
# MIGRATED 2026-01-22: card_description, card_description_en → has_or_had_description + Description (multivalued with language tag)
|
||||
- has_or_had_description
|
||||
- card_image_url
|
||||
- card_title
|
||||
- card_title_en
|
||||
- card_url
|
||||
# MIGRATED 2026-01-22: card_image_url → has_or_had_image + Image
|
||||
- has_or_had_image
|
||||
# MIGRATED 2026-01-22: card_title, card_title_en → has_or_had_label + Label (multivalued with language tag)
|
||||
- has_or_had_label
|
||||
# MIGRATED 2026-01-22: card_url → has_or_had_url + URL
|
||||
- has_or_had_url
|
||||
- specificity_annotation
|
||||
- has_or_had_score # was: template_specificity - migrated per Rule 53 (2026-01-17)
|
||||
- has_or_had_provenance_path # was: xpath - migrated per Rule 53 (2026-01-15)
|
||||
|
|
@ -1065,12 +1070,47 @@ classes:
|
|||
description_type: card
|
||||
language: en
|
||||
description: English card description
|
||||
card_title:
|
||||
has_or_had_image:
|
||||
range: Image
|
||||
multivalued: true
|
||||
inlined: true
|
||||
description: |
|
||||
Card thumbnail/preview image(s).
|
||||
MIGRATED 2026-01-22: Replaces card_image_url with structured Image class.
|
||||
examples:
|
||||
- value:
|
||||
has_or_had_url:
|
||||
has_or_had_value: "https://archive.org/images/card.jpg"
|
||||
image_format: JPEG
|
||||
description: Card thumbnail image
|
||||
has_or_had_label:
|
||||
range: Label
|
||||
multivalued: true
|
||||
inlined: true
|
||||
required: true
|
||||
card_url:
|
||||
range: uri
|
||||
card_image_url:
|
||||
range: uri
|
||||
description: |
|
||||
Card title(s) with language tagging.
|
||||
MIGRATED 2026-01-22: Replaces card_title and card_title_en.
|
||||
Use Label.language to distinguish Dutch/English titles.
|
||||
examples:
|
||||
- value:
|
||||
has_or_had_text: "Kaart titel"
|
||||
language: nl
|
||||
description: Dutch card title
|
||||
- value:
|
||||
has_or_had_text: "Card title"
|
||||
language: en
|
||||
description: English card title
|
||||
has_or_had_url:
|
||||
range: URL
|
||||
inlined: true
|
||||
description: |
|
||||
URL the card links to.
|
||||
MIGRATED 2026-01-22: Replaces card_url with structured URL class.
|
||||
examples:
|
||||
- value:
|
||||
has_or_had_value: "https://archive.org/page"
|
||||
description: Card destination URL
|
||||
has_or_had_provenance_path:
|
||||
range: XPath
|
||||
inlined: true
|
||||
|
|
|
|||
|
|
@ -0,0 +1,133 @@
|
|||
# IdentificationEvent - Event representing taxonomic/specimen identification
|
||||
#
|
||||
# Created per slot_fixes.yaml migration for: date_identified
|
||||
# Creation date: 2026-01-23
|
||||
# Rule compliance: 39 (RiC-O naming), 50 (ontology mapping), 53 (generic slot reuse)
|
||||
|
||||
id: https://nde.nl/ontology/hc/class/IdentificationEvent
|
||||
name: identification_event
|
||||
title: Identification Event
|
||||
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
dwc: http://rs.tdwg.org/dwc/terms/
|
||||
prov: http://www.w3.org/ns/prov#
|
||||
|
||||
default_prefix: hc
|
||||
|
||||
imports:
|
||||
- linkml:types
|
||||
- ./TimeSpan
|
||||
- ./Agent
|
||||
- ../slots/temporal_extent
|
||||
- ../slots/has_or_had_description
|
||||
|
||||
classes:
|
||||
IdentificationEvent:
|
||||
class_uri: hc:IdentificationEvent
|
||||
description: |
|
||||
Event representing the taxonomic or specimen identification.
|
||||
|
||||
**DEFINITION**:
|
||||
IdentificationEvent models when and by whom a biological specimen,
|
||||
object, or artifact was identified or classified.
|
||||
|
||||
**ONTOLOGY ALIGNMENT**:
|
||||
- **Primary** (`class_uri`): `hc:IdentificationEvent` - Heritage Custodian class
|
||||
- **Close**: `dwc:Identification` - Darwin Core identification
|
||||
- **Close**: `prov:Activity` - PROV-O activity
|
||||
|
||||
**USAGE**:
|
||||
Replaces simple `date_identified` dates with structured event data:
|
||||
- When the identification was made (temporal_extent)
|
||||
- Who made the identification (identified_by)
|
||||
- Methodology used
|
||||
- Confidence level
|
||||
- References consulted
|
||||
|
||||
**Example**:
|
||||
```yaml
|
||||
is_or_was_identified_through:
|
||||
temporal_extent:
|
||||
begin_of_the_begin: "2023-05-15"
|
||||
identified_by:
|
||||
- agent_name: "Dr. Jane Smith"
|
||||
agent_role: "taxonomist"
|
||||
identification_method: "Morphological analysis"
|
||||
identification_confidence: "high"
|
||||
```
|
||||
|
||||
close_mappings:
|
||||
- dwc:Identification
|
||||
- prov:Activity
|
||||
|
||||
slots:
|
||||
- temporal_extent
|
||||
- has_or_had_description
|
||||
- identified_by
|
||||
- identification_method
|
||||
- identification_confidence
|
||||
- identification_references
|
||||
|
||||
slot_usage:
|
||||
temporal_extent:
|
||||
range: TimeSpan
|
||||
inlined: true
|
||||
description: When the identification was made.
|
||||
examples:
|
||||
- value:
|
||||
begin_of_the_begin: "2023-05-15"
|
||||
description: Date of identification
|
||||
identified_by:
|
||||
range: Agent
|
||||
multivalued: true
|
||||
inlined_as_list: true
|
||||
description: Person(s) who performed the identification.
|
||||
examples:
|
||||
- value:
|
||||
- agent_name: "Dr. J. Smith"
|
||||
description: Taxonomist
|
||||
identification_method:
|
||||
range: string
|
||||
description: Method used for identification.
|
||||
examples:
|
||||
- value: "Morphological analysis"
|
||||
- value: "DNA barcoding"
|
||||
- value: "Comparison with type specimen"
|
||||
identification_confidence:
|
||||
range: string
|
||||
description: Confidence level of the identification.
|
||||
examples:
|
||||
- value: "high"
|
||||
- value: "medium"
|
||||
- value: "tentative"
|
||||
identification_references:
|
||||
range: string
|
||||
multivalued: true
|
||||
description: References consulted for identification.
|
||||
examples:
|
||||
- value: "Flora of North America, Vol. 3"
|
||||
|
||||
attributes:
|
||||
identified_by:
|
||||
range: Agent
|
||||
multivalued: true
|
||||
inlined_as_list: true
|
||||
description: Person(s) who performed the identification.
|
||||
identification_method:
|
||||
range: string
|
||||
description: Method used for identification.
|
||||
identification_confidence:
|
||||
range: string
|
||||
description: Confidence level.
|
||||
identification_references:
|
||||
range: string
|
||||
multivalued: true
|
||||
description: References consulted.
|
||||
|
||||
annotations:
|
||||
custodian_types: '["M", "R", "B"]'
|
||||
custodian_types_rationale: "Identification events primarily for natural history museums, research centers, botanical gardens."
|
||||
specificity_score: 0.75
|
||||
specificity_rationale: "Specific to biological/natural history collection contexts."
|
||||
|
|
@ -1,6 +1,7 @@
|
|||
id: https://nde.nl/ontology/hc/class/Identifier
|
||||
name: identifier_classes
|
||||
title: Identifier Classes (Generic and Custodian-Specific)
|
||||
# Updated: 2026-01-23 - Added has_or_had_type for IdentifierType per F26 migration
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
|
|
@ -22,6 +23,10 @@ imports:
|
|||
# MIGRATED 2026-01-22: canonical_value → has_or_had_canonical_form + CanonicalForm per slot_fixes.yaml feedback
|
||||
- ../slots/has_or_had_canonical_form
|
||||
- ./CanonicalForm
|
||||
# ADDED 2026-01-23: has_or_had_type for IdentifierType per F26 migration
|
||||
- ../slots/has_or_had_type
|
||||
- ./IdentifierType
|
||||
- ./IdentifierTypes
|
||||
- ../slots/has_or_had_secondary_label
|
||||
- ../slots/has_allocation_date
|
||||
- ../slots/specificity_annotation
|
||||
|
|
@ -65,12 +70,33 @@ classes:
|
|||
slots:
|
||||
- identifier_scheme
|
||||
- identifier_value
|
||||
- has_or_had_type
|
||||
slot_usage:
|
||||
has_or_had_type:
|
||||
description: >-
|
||||
The type of identifier from IdentifierType taxonomy.
|
||||
Uses IdentifierType subclasses per Rule 0b (Type/Types pattern).
|
||||
Added 2026-01-23 per F26 migration.
|
||||
|
||||
Provides structured alternative to string-based identifier_scheme.
|
||||
Prefer has_or_had_type for new data; identifier_scheme retained for compatibility.
|
||||
range: IdentifierType
|
||||
required: false
|
||||
examples:
|
||||
- value:
|
||||
has_or_had_code: CATALOG_RAISONNE
|
||||
has_or_had_label: Catalogue Raisonné Number
|
||||
description: Art catalog reference
|
||||
- value:
|
||||
has_or_had_code: ISIL
|
||||
has_or_had_label: ISIL Code
|
||||
description: Library identifier
|
||||
identifier_scheme:
|
||||
range: string
|
||||
required: true
|
||||
required: false
|
||||
description: |
|
||||
The identifier scheme or namespace (e.g., ISIL, Wikidata, URI, INTERNAL_CODE).
|
||||
Note: Prefer has_or_had_type for new data (structured IdentifierType).
|
||||
examples:
|
||||
- value: ISIL
|
||||
description: ISIL identifier scheme
|
||||
|
|
|
|||
|
|
@ -0,0 +1,76 @@
|
|||
# IdentifierType class (abstract base)
|
||||
# Type taxonomy for identifier schemes and types
|
||||
#
|
||||
# Created: 2026-01-23 per slot_fixes.yaml F26 (catalog_raisonne_number migration)
|
||||
# Rule compliance: 0b (Type/Types pattern - this is the Type file)
|
||||
|
||||
id: https://nde.nl/ontology/hc/class/IdentifierType
|
||||
name: IdentifierType
|
||||
title: Identifier Type Class (Abstract Base)
|
||||
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
adms: http://www.w3.org/ns/adms#
|
||||
dcterms: http://purl.org/dc/terms/
|
||||
skos: http://www.w3.org/2004/02/skos/core#
|
||||
|
||||
default_prefix: hc
|
||||
|
||||
imports:
|
||||
- linkml:types
|
||||
- ../metadata
|
||||
- ../slots/has_or_had_code
|
||||
- ../slots/has_or_had_label
|
||||
- ../slots/has_or_had_description
|
||||
|
||||
classes:
|
||||
IdentifierType:
|
||||
class_uri: adms:Identifier
|
||||
abstract: true
|
||||
description: >-
|
||||
Abstract base class for identifier type taxonomy.
|
||||
|
||||
**Rule 0b Compliance**: This is the abstract TYPE file.
|
||||
Concrete identifier types are defined in IdentifierTypes.yaml (plural).
|
||||
|
||||
Categories of identifiers:
|
||||
- **Authority identifiers**: ISIL, VIAF, ISNI, ROR, ORCID
|
||||
- **Cultural heritage identifiers**: Wikidata, GND, ULAN
|
||||
- **Registration identifiers**: KvK, EU VAT, Legal Entity
|
||||
- **Bibliographic identifiers**: ISBN, ISSN, DOI
|
||||
- **Art/Museum identifiers**: Catalog Raisonné, Inventory Number
|
||||
- **Archival identifiers**: Finding Aid ID, Fonds Number
|
||||
- **Internal identifiers**: Local codes, System IDs
|
||||
|
||||
This taxonomy replaces string-based identifier_scheme with
|
||||
structured class-based typing per Rule 53.
|
||||
exact_mappings:
|
||||
- adms:Identifier
|
||||
close_mappings:
|
||||
- dcterms:identifier
|
||||
- skos:Concept
|
||||
slots:
|
||||
- has_or_had_code
|
||||
- has_or_had_label
|
||||
- has_or_had_description
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
description: Short code for the identifier type (e.g., ISIL, VIAF, CATALOG_RAISONNE).
|
||||
range: string
|
||||
required: true
|
||||
identifier: true
|
||||
pattern: '^[A-Z][A-Z0-9_]*$'
|
||||
has_or_had_label:
|
||||
description: Human-readable label for the identifier type.
|
||||
range: string
|
||||
required: true
|
||||
has_or_had_description:
|
||||
description: Definition and scope of this identifier type.
|
||||
range: string
|
||||
required: false
|
||||
comments:
|
||||
- "Abstract base class - use concrete subclasses from IdentifierTypes.yaml"
|
||||
see_also:
|
||||
- https://www.w3.org/ns/adms
|
||||
- https://www.iso.org/standard/77849.html
|
||||
|
|
@ -0,0 +1,307 @@
|
|||
# IdentifierTypes class (concrete subclasses)
|
||||
# Concrete identifier type subclasses per Rule 0b (Type/Types pattern)
|
||||
#
|
||||
# Created: 2026-01-23 per slot_fixes.yaml F26 (catalog_raisonne_number migration)
|
||||
# Rule compliance: 0b (Type/Types pattern - this is the Types file)
|
||||
|
||||
id: https://nde.nl/ontology/hc/class/IdentifierTypes
|
||||
name: IdentifierTypes
|
||||
title: Identifier Types (Concrete Subclasses)
|
||||
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
|
||||
default_prefix: hc
|
||||
|
||||
imports:
|
||||
- linkml:types
|
||||
- ../metadata
|
||||
- ./IdentifierType
|
||||
|
||||
classes:
|
||||
# === AUTHORITY IDENTIFIERS ===
|
||||
|
||||
ISILIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:ISILIdentifierType
|
||||
description: International Standard Identifier for Libraries and Related Organizations (ISO 15511).
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: ISIL
|
||||
has_or_had_label:
|
||||
equals_string: ISIL Code
|
||||
|
||||
VIAFIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:VIAFIdentifierType
|
||||
description: Virtual International Authority File identifier.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: VIAF
|
||||
has_or_had_label:
|
||||
equals_string: VIAF ID
|
||||
|
||||
ISNIIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:ISNIIdentifierType
|
||||
description: International Standard Name Identifier (ISO 27729).
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: ISNI
|
||||
has_or_had_label:
|
||||
equals_string: ISNI
|
||||
|
||||
RORIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:RORIdentifierType
|
||||
description: Research Organization Registry identifier.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: ROR
|
||||
has_or_had_label:
|
||||
equals_string: ROR ID
|
||||
|
||||
ORCIDIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:ORCIDIdentifierType
|
||||
description: Open Researcher and Contributor ID.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: ORCID
|
||||
has_or_had_label:
|
||||
equals_string: ORCID
|
||||
|
||||
# === CULTURAL HERITAGE IDENTIFIERS ===
|
||||
|
||||
WikidataIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:WikidataIdentifierType
|
||||
description: Wikidata entity identifier (Q-number).
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: WIKIDATA
|
||||
has_or_had_label:
|
||||
equals_string: Wikidata ID
|
||||
|
||||
GNDIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:GNDIdentifierType
|
||||
description: Gemeinsame Normdatei (German authority file).
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: GND
|
||||
has_or_had_label:
|
||||
equals_string: GND ID
|
||||
|
||||
ULANIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:ULANIdentifierType
|
||||
description: Union List of Artist Names (Getty).
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: ULAN
|
||||
has_or_had_label:
|
||||
equals_string: ULAN ID
|
||||
|
||||
AATIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:AATIdentifierType
|
||||
description: Art & Architecture Thesaurus (Getty).
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: AAT
|
||||
has_or_had_label:
|
||||
equals_string: AAT ID
|
||||
|
||||
TGNIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:TGNIdentifierType
|
||||
description: Thesaurus of Geographic Names (Getty).
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: TGN
|
||||
has_or_had_label:
|
||||
equals_string: TGN ID
|
||||
|
||||
# === REGISTRATION IDENTIFIERS ===
|
||||
|
||||
KvKIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:KvKIdentifierType
|
||||
description: Dutch Chamber of Commerce (Kamer van Koophandel) registration number.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: KVK
|
||||
has_or_had_label:
|
||||
equals_string: KvK Number
|
||||
|
||||
LEIIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:LEIIdentifierType
|
||||
description: Legal Entity Identifier (ISO 17442).
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: LEI
|
||||
has_or_had_label:
|
||||
equals_string: LEI
|
||||
|
||||
VATIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:VATIdentifierType
|
||||
description: VAT registration number.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: VAT
|
||||
has_or_had_label:
|
||||
equals_string: VAT Number
|
||||
|
||||
# === BIBLIOGRAPHIC IDENTIFIERS ===
|
||||
|
||||
ISBNIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:ISBNIdentifierType
|
||||
description: International Standard Book Number (ISO 2108).
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: ISBN
|
||||
has_or_had_label:
|
||||
equals_string: ISBN
|
||||
|
||||
ISSNIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:ISSNIdentifierType
|
||||
description: International Standard Serial Number (ISO 3297).
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: ISSN
|
||||
has_or_had_label:
|
||||
equals_string: ISSN
|
||||
|
||||
DOIIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:DOIIdentifierType
|
||||
description: Digital Object Identifier (ISO 26324).
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: DOI
|
||||
has_or_had_label:
|
||||
equals_string: DOI
|
||||
|
||||
OCLCIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:OCLCIdentifierType
|
||||
description: OCLC WorldCat record number.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: OCLC
|
||||
has_or_had_label:
|
||||
equals_string: OCLC Number
|
||||
|
||||
# === ART/MUSEUM IDENTIFIERS ===
|
||||
|
||||
CatalogRaisonneIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:CatalogRaisonneIdentifierType
|
||||
description: >-
|
||||
Reference number in a catalogue raisonné (comprehensive catalog of an artist's work).
|
||||
MIGRATED from catalog_raisonne_number slot (2026-01-23) per Rule 53/F26.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: CATALOG_RAISONNE
|
||||
has_or_had_label:
|
||||
equals_string: Catalogue Raisonné Number
|
||||
|
||||
InventoryNumberIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:InventoryNumberIdentifierType
|
||||
description: Museum or collection inventory number.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: INVENTORY_NUMBER
|
||||
has_or_had_label:
|
||||
equals_string: Inventory Number
|
||||
|
||||
AccessionNumberIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:AccessionNumberIdentifierType
|
||||
description: Accession number assigned upon acquisition.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: ACCESSION_NUMBER
|
||||
has_or_had_label:
|
||||
equals_string: Accession Number
|
||||
|
||||
# === ARCHIVAL IDENTIFIERS ===
|
||||
|
||||
FindingAidIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:FindingAidIdentifierType
|
||||
description: Finding aid or archival guide identifier.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: FINDING_AID_ID
|
||||
has_or_had_label:
|
||||
equals_string: Finding Aid ID
|
||||
|
||||
FondsNumberIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:FondsNumberIdentifierType
|
||||
description: Archival fonds or collection number.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: FONDS_NUMBER
|
||||
has_or_had_label:
|
||||
equals_string: Fonds Number
|
||||
|
||||
EADIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:EADIdentifierType
|
||||
description: Encoded Archival Description identifier.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: EAD_ID
|
||||
has_or_had_label:
|
||||
equals_string: EAD ID
|
||||
|
||||
# === INTERNAL/LOCAL IDENTIFIERS ===
|
||||
|
||||
LocalCollectionIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:LocalCollectionIdentifierType
|
||||
description: Local collection or institutional identifier.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: LOCAL_COLLECTION
|
||||
has_or_had_label:
|
||||
equals_string: Local Collection ID
|
||||
|
||||
InternalCodeIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:InternalCodeIdentifierType
|
||||
description: Internal system code or database ID.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: INTERNAL_CODE
|
||||
has_or_had_label:
|
||||
equals_string: Internal Code
|
||||
|
||||
URIIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:URIIdentifierType
|
||||
description: Uniform Resource Identifier.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: URI
|
||||
has_or_had_label:
|
||||
equals_string: URI
|
||||
|
||||
URLIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:URLIdentifierType
|
||||
description: Uniform Resource Locator (web address).
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: URL
|
||||
has_or_had_label:
|
||||
equals_string: URL
|
||||
|
|
@ -0,0 +1,98 @@
|
|||
id: https://nde.nl/ontology/hc/class/Image
|
||||
name: image_class
|
||||
title: Image Class
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
schema: http://schema.org/
|
||||
foaf: http://xmlns.com/foaf/0.1/
|
||||
dcterms: http://purl.org/dc/terms/
|
||||
imports:
|
||||
- linkml:types
|
||||
- ../slots/has_or_had_url
|
||||
- ./URL
|
||||
- ../slots/has_or_had_label
|
||||
- ./Label
|
||||
default_prefix: hc
|
||||
|
||||
classes:
|
||||
Image:
|
||||
class_uri: schema:ImageObject
|
||||
description: >-
|
||||
Represents a visual image with URL and metadata.
|
||||
|
||||
**PURPOSE**:
|
||||
|
||||
Image provides structured representation for visual content including:
|
||||
- Thumbnail images for cards/previews
|
||||
- Collection representative images
|
||||
- Institutional logos and branding
|
||||
- Digital object reproductions
|
||||
|
||||
**ONTOLOGY ALIGNMENT**:
|
||||
|
||||
| Ontology | Mapping | Rationale |
|
||||
|----------|---------|-----------|
|
||||
| Schema.org | schema:ImageObject | Primary class for images |
|
||||
| FOAF | foaf:Image | Alternative image class |
|
||||
|
||||
**USE CASES**:
|
||||
- Card preview thumbnails (card_image_url migration)
|
||||
- Collection highlight images
|
||||
- Object photographs
|
||||
|
||||
MIGRATED 2026-01-22: Created per slot_fixes.yaml revision for card_image_url.
|
||||
exact_mappings:
|
||||
- schema:ImageObject
|
||||
- foaf:Image
|
||||
slots:
|
||||
- has_or_had_url
|
||||
- has_or_had_label
|
||||
slot_usage:
|
||||
has_or_had_url:
|
||||
range: URL
|
||||
required: true
|
||||
inlined: true
|
||||
description: >-
|
||||
URL where the image can be accessed.
|
||||
URL.has_or_had_value contains the actual URI.
|
||||
has_or_had_label:
|
||||
range: Label
|
||||
required: false
|
||||
inlined: true
|
||||
description: >-
|
||||
Alt text or caption for the image.
|
||||
Label.has_or_had_text contains the description.
|
||||
attributes:
|
||||
image_format:
|
||||
range: string
|
||||
required: false
|
||||
description: >-
|
||||
Image format (e.g., "JPEG", "PNG", "WEBP", "SVG").
|
||||
width:
|
||||
range: integer
|
||||
required: false
|
||||
description: Width in pixels.
|
||||
height:
|
||||
range: integer
|
||||
required: false
|
||||
description: Height in pixels.
|
||||
examples:
|
||||
- value:
|
||||
has_or_had_url:
|
||||
has_or_had_value: "https://example.org/images/card_thumb.jpg"
|
||||
has_or_had_label:
|
||||
has_or_had_text: "Collection preview thumbnail"
|
||||
image_format: JPEG
|
||||
width: 300
|
||||
height: 200
|
||||
description: Card thumbnail image with metadata
|
||||
- value:
|
||||
has_or_had_url:
|
||||
has_or_had_value: "https://museum.nl/logo.svg"
|
||||
image_format: SVG
|
||||
description: Institutional logo
|
||||
annotations:
|
||||
specificity_score: 0.35
|
||||
specificity_rationale: >-
|
||||
Images are broadly useful across heritage contexts for visual representation.
|
||||
|
|
@ -33,15 +33,25 @@ imports:
|
|||
# REMOVED 2026-01-17: call_number - migrated to has_or_had_identifier per Rule 53
|
||||
- ../slots/has_or_had_identifier # includes call_number migration (2026-01-17)
|
||||
- ./Identifier # for has_or_had_identifier range
|
||||
- ../slots/carrier_type
|
||||
- ../slots/carries_information
|
||||
# REMOVED 2026-01-23: carrier_type - migrated to has_or_had_carrier per Rule 53/F24
|
||||
- ../slots/has_or_had_carrier
|
||||
- ./Carrier
|
||||
- ./CarrierType
|
||||
- ./CarrierTypes
|
||||
# REMOVED 2026-01-23: carries_information - migrated to has_or_had_content per Rule 53/F25
|
||||
- ../slots/has_or_had_content
|
||||
- ./Content
|
||||
- ./ContentType
|
||||
- ./ContentTypes
|
||||
- ../slots/content_language
|
||||
- ../slots/content_summary
|
||||
- ../slots/copy_note
|
||||
- ../slots/copy_number
|
||||
- ../slots/cover_material
|
||||
- ../slots/has_or_had_custodian_type
|
||||
- ../slots/date_of_publication
|
||||
# REMOVED 2026-01-24: date_of_publication - migrated to is_or_was_published (Rule 53)
|
||||
- ../slots/is_or_was_published
|
||||
- ./Publication
|
||||
- ../slots/doi
|
||||
- ../slots/duration
|
||||
- ../slots/edition_statement
|
||||
|
|
@ -126,15 +136,18 @@ classes:
|
|||
- includes_or_included
|
||||
# REMOVED 2026-01-17: call_number - migrated to has_or_had_identifier (Rule 53)
|
||||
- has_or_had_identifier
|
||||
- carrier_type
|
||||
- carries_information
|
||||
# REMOVED 2026-01-23: carrier_type - migrated to has_or_had_carrier (Rule 53/F24)
|
||||
- has_or_had_carrier
|
||||
# REMOVED 2026-01-23: carries_information - migrated to has_or_had_content (Rule 53/F25)
|
||||
- has_or_had_content
|
||||
- content_language
|
||||
- content_summary
|
||||
- copy_note
|
||||
- copy_number
|
||||
- cover_material
|
||||
- has_or_had_custodian_type
|
||||
- date_of_publication
|
||||
# REMOVED 2026-01-24: date_of_publication - migrated to is_or_was_published (Rule 53)
|
||||
- is_or_was_published
|
||||
- doi
|
||||
- duration
|
||||
- edition_statement
|
||||
|
|
@ -164,13 +177,31 @@ classes:
|
|||
- has_or_had_label # was: uniform_title
|
||||
- has_or_had_writing_system
|
||||
slot_usage:
|
||||
carrier_type:
|
||||
# REMOVED 2026-01-23: carrier_type - migrated to has_or_had_carrier (Rule 53/F24)
|
||||
has_or_had_carrier:
|
||||
required: true
|
||||
range: CarrierTypeEnum
|
||||
range: Carrier
|
||||
inlined: true
|
||||
description: >-
|
||||
The physical carrier type and characteristics.
|
||||
MIGRATED from carrier_type (2026-01-23) per Rule 53/F24.
|
||||
Uses Carrier class with CarrierType taxonomy per Rule 0b.
|
||||
examples:
|
||||
- value: CODEX
|
||||
- value: SCROLL
|
||||
- value: VINYL_DISC
|
||||
- value:
|
||||
has_or_had_type:
|
||||
has_or_had_code: CODEX
|
||||
has_or_had_label: Codex
|
||||
description: Bound volume (codex form)
|
||||
- value:
|
||||
has_or_had_type:
|
||||
has_or_had_code: SCROLL
|
||||
has_or_had_label: Scroll
|
||||
description: Rolled manuscript
|
||||
- value:
|
||||
has_or_had_type:
|
||||
has_or_had_code: VINYL_DISC
|
||||
has_or_had_label: Vinyl Disc
|
||||
description: Audio recording
|
||||
material_composition:
|
||||
required: false
|
||||
range: string
|
||||
|
|
@ -322,12 +353,26 @@ classes:
|
|||
- value:
|
||||
place_name: Mainz
|
||||
country: DE
|
||||
date_of_publication:
|
||||
# REMOVED 2026-01-24: date_of_publication - migrated to is_or_was_published (Rule 53)
|
||||
is_or_was_published:
|
||||
required: false
|
||||
range: string
|
||||
range: Publication
|
||||
inlined: true
|
||||
multivalued: true
|
||||
description: >-
|
||||
Publication event(s) for this information carrier.
|
||||
Use publication_date_string for approximate dates (c. 1455, 16th century).
|
||||
examples:
|
||||
- value: c. 1455
|
||||
- value: '1623'
|
||||
- value:
|
||||
publication_date_string: "c. 1455"
|
||||
publisher: "Johannes Gutenberg"
|
||||
publication_place: "Mainz"
|
||||
description: Approximate date with publisher info
|
||||
- value:
|
||||
temporal_extent:
|
||||
begin_of_the_begin: "1623-01-01"
|
||||
publication_date_string: "1623"
|
||||
description: Year-level precision
|
||||
edition_statement:
|
||||
required: false
|
||||
range: string
|
||||
|
|
@ -485,12 +530,28 @@ classes:
|
|||
examples:
|
||||
- value: ITEM
|
||||
- value: FILE
|
||||
carries_information:
|
||||
# REMOVED 2026-01-23: carries_information - migrated to has_or_had_content (Rule 53/F25)
|
||||
has_or_had_content:
|
||||
required: false
|
||||
range: string
|
||||
range: Content
|
||||
inlined: true
|
||||
description: >-
|
||||
The intellectual content carried by this information carrier.
|
||||
MIGRATED from carries_information (2026-01-23) per Rule 53/F25.
|
||||
Uses Content class with ContentType taxonomy per Rule 0b.
|
||||
examples:
|
||||
- value: Vulgate Latin Bible
|
||||
- value: Hamlet by William Shakespeare
|
||||
- value:
|
||||
has_or_had_label: Vulgate Latin Bible
|
||||
has_or_had_type:
|
||||
has_or_had_code: RELIGIOUS
|
||||
has_or_had_label: Religious Content
|
||||
description: Religious text content
|
||||
- value:
|
||||
has_or_had_label: Hamlet by William Shakespeare
|
||||
has_or_had_type:
|
||||
has_or_had_code: LITERARY
|
||||
has_or_had_label: Literary Content
|
||||
description: Literary work
|
||||
has_or_had_label: # was: title_proper and uniform_title (merged 2026-01-15)
|
||||
required: false
|
||||
range: string
|
||||
|
|
@ -538,7 +599,11 @@ classes:
|
|||
object_name: Gutenberg Bible (KB copy)
|
||||
object_description: "One of fewer than 50 surviving copies of the Gutenberg Bible, \nthe first substantial book printed\
|
||||
\ with movable metal type.\nThis paper copy was acquired by the Koninklijke Bibliotheek in 1807.\n"
|
||||
carrier_type: CODEX
|
||||
# MIGRATED 2026-01-23: carrier_type → has_or_had_carrier (Rule 53/F24)
|
||||
has_or_had_carrier:
|
||||
has_or_had_type:
|
||||
has_or_had_code: CODEX
|
||||
has_or_had_label: Codex
|
||||
material_composition:
|
||||
- Paper (handmade, watermarked)
|
||||
folio_count: 641
|
||||
|
|
@ -554,14 +619,23 @@ classes:
|
|||
place_of_publication:
|
||||
place_name: Mainz
|
||||
country: DE
|
||||
date_of_publication: c. 1455
|
||||
# MIGRATED 2026-01-24: date_of_publication → is_or_was_published (Rule 53)
|
||||
is_or_was_published:
|
||||
- publication_date_string: "c. 1455"
|
||||
publisher: "Johannes Gutenberg"
|
||||
publication_place: "Mainz"
|
||||
script_type: PRINTED
|
||||
has_or_had_writing_system:
|
||||
has_or_had_code: "Latn"
|
||||
script_name: "Latin"
|
||||
content_language:
|
||||
- lat
|
||||
carries_information: Bible. Latin. Vulgate
|
||||
# MIGRATED 2026-01-23: carries_information → has_or_had_content (Rule 53/F25)
|
||||
has_or_had_content:
|
||||
has_or_had_label: Bible. Latin. Vulgate
|
||||
has_or_had_type:
|
||||
has_or_had_code: RELIGIOUS
|
||||
has_or_had_label: Religious Content
|
||||
title_proper: Biblia Latina
|
||||
uniform_title: Bible. Latin. Vulgate. 1455
|
||||
# MIGRATED 2026-01-17: call_number → has_or_had_identifier (Rule 53)
|
||||
|
|
@ -583,7 +657,11 @@ classes:
|
|||
object_name: Codex Sinaiticus (British Library portion)
|
||||
object_description: "4th-century manuscript of the Greek Bible, one of the oldest \nand most important Biblical manuscripts.\
|
||||
\ The British Library \nholds 347 leaves of this codex.\n"
|
||||
carrier_type: CODEX
|
||||
# MIGRATED 2026-01-23: carrier_type → has_or_had_carrier (Rule 53/F24)
|
||||
has_or_had_carrier:
|
||||
has_or_had_type:
|
||||
has_or_had_code: CODEX
|
||||
has_or_had_label: Codex
|
||||
material_composition:
|
||||
- Parchment (vellum)
|
||||
folio_count: 347
|
||||
|
|
@ -593,8 +671,15 @@ classes:
|
|||
script_name: "Greek uncial"
|
||||
content_language:
|
||||
- grc
|
||||
date_of_publication: 4th century CE
|
||||
carries_information: Septuagint and Greek New Testament
|
||||
# MIGRATED 2026-01-24: date_of_publication → is_or_was_published (Rule 53)
|
||||
is_or_was_published:
|
||||
- publication_date_string: "4th century CE"
|
||||
# MIGRATED 2026-01-23: carries_information → has_or_had_content (Rule 53/F25)
|
||||
has_or_had_content:
|
||||
has_or_had_label: Septuagint and Greek New Testament
|
||||
has_or_had_type:
|
||||
has_or_had_code: RELIGIOUS
|
||||
has_or_had_label: Religious Content
|
||||
uniform_title: Bible. Greek
|
||||
shelf_mark: Add. MS 43725
|
||||
current_keeper: https://nde.nl/ontology/hc/custodian/uk/british-library
|
||||
|
|
@ -608,7 +693,11 @@ classes:
|
|||
object_name: Declaration of Independence (engrossed parchment)
|
||||
object_description: "The official engrossed parchment copy of the Declaration of \nIndependence, signed by 56 delegates\
|
||||
\ to the Continental Congress.\n"
|
||||
carrier_type: PARCHMENT_LEAF
|
||||
# MIGRATED 2026-01-23: carrier_type → has_or_had_carrier (Rule 53/F24)
|
||||
has_or_had_carrier:
|
||||
has_or_had_type:
|
||||
has_or_had_code: PARCHMENT_LEAF
|
||||
has_or_had_label: Parchment Leaf
|
||||
material_composition:
|
||||
- Parchment (sheepskin)
|
||||
script_type: MANUSCRIPT
|
||||
|
|
@ -617,7 +706,13 @@ classes:
|
|||
script_name: "Latin"
|
||||
content_language:
|
||||
- eng
|
||||
date_of_publication: '1776-08-02'
|
||||
# MIGRATED 2026-01-24: date_of_publication → is_or_was_published (Rule 53)
|
||||
is_or_was_published:
|
||||
- temporal_extent:
|
||||
begin_of_the_begin: "1776-08-02"
|
||||
end_of_the_end: "1776-08-02"
|
||||
publisher: "John Dunlap"
|
||||
publication_place: "Philadelphia"
|
||||
archival_reference: NARA 1419
|
||||
fonds: Records of the Continental and Confederation Congresses
|
||||
arrangement_level: ITEM
|
||||
|
|
|
|||
|
|
@ -17,7 +17,8 @@ imports:
|
|||
- ./DataFormat
|
||||
- ../slots/has_or_had_output
|
||||
# REMOVED 2026-01-22: data_format migrated to has_or_had_output + OutputData (Rule 53)
|
||||
- ../slots/decommission_date
|
||||
- ../slots/is_or_was_decommissioned_at # was: decommission_date - migrated per Rule 53 (2026-01-23)
|
||||
- ./Timestamp # Range for is_or_was_decommissioned_at
|
||||
- ../slots/device_count
|
||||
- ../slots/device_id
|
||||
- ../slots/device_manufacturer
|
||||
|
|
@ -104,7 +105,7 @@ classes:
|
|||
- connectivity_type
|
||||
- coverage_area
|
||||
- has_or_had_output # was: data_format - migrated per Rule 53 (2026-01-22)
|
||||
- decommission_date
|
||||
- is_or_was_decommissioned_at # was: decommission_date - migrated per Rule 53 (2026-01-23)
|
||||
- device_count
|
||||
- device_id
|
||||
- device_manufacturer
|
||||
|
|
@ -273,11 +274,18 @@ classes:
|
|||
examples:
|
||||
- value: '2023-06-15'
|
||||
description: Installation date
|
||||
decommission_date:
|
||||
range: date
|
||||
is_or_was_decommissioned_at: # was: decommission_date - migrated per Rule 53 (2026-01-23)
|
||||
range: Timestamp
|
||||
inlined: true
|
||||
description: |
|
||||
Timestamp when the IoT device was or will be decommissioned.
|
||||
NULL if still operational.
|
||||
MIGRATED from decommission_date per slot_fixes.yaml (Rule 53).
|
||||
examples:
|
||||
- value: '2028-12-31'
|
||||
description: Planned decommission date
|
||||
- value:
|
||||
has_or_had_timestamp: "2028-12-31"
|
||||
has_or_had_precision: day
|
||||
description: Planned decommission date for device
|
||||
temporal_extent:
|
||||
range: TimeSpan
|
||||
examples:
|
||||
|
|
|
|||
|
|
@ -8,7 +8,11 @@ imports:
|
|||
- ../slots/complies_or_complied_with
|
||||
- ./CatalogingStandard
|
||||
- ../enums/LibraryTypeEnum
|
||||
- ../slots/catalog_system
|
||||
# - ../slots/catalog_system # ARCHIVED 2026-01-24: migrated to uses_or_used + CatalogSystem per Rule 53/56
|
||||
- ../slots/uses_or_used
|
||||
- ./CatalogSystem
|
||||
- ./CatalogSystemType
|
||||
- ./CatalogSystemTypes
|
||||
- ../slots/has_or_had_custodian_type
|
||||
- ../slots/interlibrary_loan
|
||||
- ../slots/lending_policy
|
||||
|
|
@ -105,10 +109,10 @@ classes:
|
|||
\ org:classification :LibraryType_NationalLibrary_Q22806 .\n\n:LibraryType_NationalLibrary_Q22806\n a glamtype:LibraryType,\
|
||||
\ crm:E55_Type, skos:Concept ;\n skos:prefLabel \"National Library\"@en, \"nationale bibliotheek\"@nl ;\n skos:broader\
|
||||
\ :LibraryType_Library_Q7075 ;\n schema:additionalType <http://www.wikidata.org/entity/Q22806> ;\n glamtype:glamorcubesfixphdnt_code\
|
||||
\ \"LIBRARY\" ;\n glamtype:lending_policy \"reference-only\" ;\n glamtype:catalog_system \"ALMA\" ;\n glamtype:special_collections\
|
||||
\ \"LIBRARY\" ;\n glamtype:lending_policy \"reference-only\" ;\n glamtype:uses_or_used [ a glamtype:CatalogSystem ; glamtype:has_or_had_name \"ALMA\" ] ;\n glamtype:special_collections\
|
||||
\ [\"incunabula\", \"manuscripts\", \"maps\"] ;\n glamtype:interlibrary_loan true ;\n glamtype:cataloging_standard\
|
||||
\ \"RDA\" .\n```\n\n**Domain-Specific Properties**:\nThis class adds library-specific metadata beyond base CustodianType:\n\
|
||||
- `lending_policy` - Circulation rules (open, restricted, reference-only, digital-only, membership-required)\n- `catalog_system`\
|
||||
- `lending_policy` - Circulation rules (open, restricted, reference-only, digital-only, membership-required)\n- `uses_or_used` (was: catalog_system)\
|
||||
\ - Integrated library system (ALMA, Sierra, Koha, Aleph, etc.)\n- `special_collections` - Notable collections (rare\
|
||||
\ books, manuscripts, archives, maps, music)\n- `membership_required` - Whether library requires membership for access\n\
|
||||
- `interlibrary_loan` - Whether participates in interlibrary loan networks\n- `cataloging_standard` - Metadata standards\
|
||||
|
|
@ -123,7 +127,7 @@ classes:
|
|||
- Information literacy instruction - User education programs\n\n**Data Population**:\nLibrary subtypes extracted from\
|
||||
\ 60 Wikidata entities with type='L'\nin `data/wikidata/GLAMORCUBEPSXHFN/hyponyms_curated_full.yaml`.\n"
|
||||
slots:
|
||||
- catalog_system
|
||||
- uses_or_used # was: catalog_system - migrated per Rule 53/56 (2026-01-24)
|
||||
- complies_or_complied_with # was: cataloging_standard - migrated per Rule 53/56 (2026-01-17)
|
||||
- has_or_had_custodian_type
|
||||
- interlibrary_loan
|
||||
|
|
@ -135,6 +139,14 @@ classes:
|
|||
- has_or_had_score # was: template_specificity - migrated per Rule 53 (2026-01-17)
|
||||
- has_or_had_identifier # was: wikidata_entity - migrated per Rule 53 (2026-01-16)
|
||||
slot_usage:
|
||||
uses_or_used: # was: catalog_system - migrated per Rule 53/56 (2026-01-24)
|
||||
description: |
|
||||
The catalog system or integrated library system (ILS) used by this library.
|
||||
MIGRATED from catalog_system per Rule 53/56 (2026-01-24).
|
||||
Common systems: ALMA, Koha, Sierra, Aleph, FOLIO, OCLC WorldShare.
|
||||
range: CatalogSystem
|
||||
inlined: true
|
||||
multivalued: true
|
||||
has_or_had_identifier: # was: wikidata_entity - migrated per Rule 53 (2026-01-16)
|
||||
pattern: ^Q[0-9]+$
|
||||
required: true
|
||||
|
|
@ -182,7 +194,10 @@ classes:
|
|||
has_or_had_description: library specifically established by the government of a country # was: type_description - migrated per Rule 53/56 (2026-01-16)
|
||||
has_or_had_hypernym: https://nde.nl/ontology/hc/type/library/Q7075 # was: broader_type - migrated per Rule 53 (2026-01-17)
|
||||
lending_policy: reference-only
|
||||
catalog_system: ALMA
|
||||
uses_or_used: # was: catalog_system - migrated per Rule 53/56 (2026-01-24)
|
||||
- has_or_had_name: ALMA
|
||||
has_or_had_type:
|
||||
has_or_had_name: Library Services Platform
|
||||
special_collection:
|
||||
- incunabula
|
||||
- manuscripts
|
||||
|
|
@ -206,7 +221,10 @@ classes:
|
|||
has_or_had_description: public library in the Netherlands with a secondary research function (Wetenschappelijke en Speciale Functies) # was: type_description - migrated per Rule 53/56 (2026-01-16)
|
||||
has_or_had_hypernym: https://nde.nl/ontology/hc/type/library/Q7075 # was: broader_type - migrated per Rule 53 (2026-01-17)
|
||||
lending_policy: open
|
||||
catalog_system: OCLC
|
||||
uses_or_used: # was: catalog_system - migrated per Rule 53/56 (2026-01-24)
|
||||
- has_or_had_name: OCLC WorldShare
|
||||
has_or_had_type:
|
||||
has_or_had_name: Library Services Platform
|
||||
special_collection:
|
||||
- local history
|
||||
- genealogy
|
||||
|
|
|
|||
|
|
@ -0,0 +1,82 @@
|
|||
id: https://nde.nl/ontology/hc/class/Measurement
|
||||
name: Measurement
|
||||
title: Measurement
|
||||
description: |
|
||||
Represents a measurement observation with value, type, unit, and timestamp.
|
||||
|
||||
This class captures environmental and condition measurements for heritage
|
||||
storage monitoring, including temperature, humidity, light levels, etc.
|
||||
|
||||
Created per slot_fixes.yaml revision for category_measurement migration (Rule 53/56).
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
qudt: http://qudt.org/schema/qudt/
|
||||
crm: http://www.cidoc-crm.org/cidoc-crm/
|
||||
sosa: http://www.w3.org/ns/sosa/
|
||||
imports:
|
||||
- linkml:types
|
||||
- ../slots/has_or_had_value
|
||||
- ../slots/has_or_had_measurement_type
|
||||
- ../slots/has_or_had_measurement_unit
|
||||
- ./MeasurementType
|
||||
- ./MeasureUnit
|
||||
default_prefix: hc
|
||||
classes:
|
||||
Measurement:
|
||||
class_uri: sosa:Observation
|
||||
description: |
|
||||
A measurement observation capturing a specific value, its type, and unit.
|
||||
|
||||
Used for:
|
||||
- Storage condition monitoring (temperature, humidity)
|
||||
- Environmental assessments (light levels, UV radiation)
|
||||
- Conservation observations (pest counts, air quality)
|
||||
slots:
|
||||
- has_or_had_value
|
||||
- has_or_had_measurement_type
|
||||
- has_or_had_measurement_unit
|
||||
slot_usage:
|
||||
has_or_had_value:
|
||||
description: |
|
||||
The measured value as a string (e.g., "19.5", "48", "250").
|
||||
String type allows for special notation (±, <, >, ranges).
|
||||
required: true
|
||||
has_or_had_measurement_type:
|
||||
description: The type/category of measurement (temperature, humidity, etc.).
|
||||
range: MeasurementType
|
||||
inlined: true
|
||||
has_or_had_measurement_unit:
|
||||
description: The unit of measurement (°C, % RH, lux, etc.).
|
||||
range: MeasureUnit
|
||||
inlined: true
|
||||
exact_mappings:
|
||||
- sosa:Observation
|
||||
- qudt:QuantityValue
|
||||
close_mappings:
|
||||
- crm:E16_Measurement
|
||||
examples:
|
||||
- value:
|
||||
has_or_had_value: "19.5"
|
||||
has_or_had_measurement_type:
|
||||
has_or_had_name: Temperature
|
||||
has_or_had_measurement_unit:
|
||||
has_or_had_name: Degree Celsius
|
||||
has_or_had_symbol: "°C"
|
||||
description: Temperature measurement of 19.5°C
|
||||
- value:
|
||||
has_or_had_value: "48"
|
||||
has_or_had_measurement_type:
|
||||
has_or_had_name: Relative Humidity
|
||||
has_or_had_measurement_unit:
|
||||
has_or_had_name: Percent
|
||||
has_or_had_symbol: "%"
|
||||
description: Humidity measurement of 48% RH
|
||||
- value:
|
||||
has_or_had_value: "250"
|
||||
has_or_had_measurement_type:
|
||||
has_or_had_name: Light Level
|
||||
has_or_had_measurement_unit:
|
||||
has_or_had_name: Lux
|
||||
has_or_had_symbol: "lx"
|
||||
description: Light level measurement of 250 lux
|
||||
|
|
@ -0,0 +1,58 @@
|
|||
id: https://nde.nl/ontology/hc/class/MeasurementType
|
||||
name: MeasurementType
|
||||
title: Measurement Type (Abstract Base)
|
||||
description: |
|
||||
Abstract base class for types of measurements relevant to heritage conservation
|
||||
and storage conditions.
|
||||
|
||||
This class defines the taxonomy of measurement categories used for monitoring
|
||||
storage environments and conservation conditions. Concrete subclasses are
|
||||
defined in MeasurementTypes.yaml following the Type/Types naming convention (Rule 0b).
|
||||
|
||||
Created per slot_fixes.yaml revision for category_measurement migration (Rule 53/56).
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
skos: http://www.w3.org/2004/02/skos/core#
|
||||
qudt: http://qudt.org/schema/qudt/
|
||||
crm: http://www.cidoc-crm.org/cidoc-crm/
|
||||
imports:
|
||||
- linkml:types
|
||||
- ../slots/has_or_had_name
|
||||
- ../slots/has_or_had_description
|
||||
- ../slots/has_or_had_measurement_unit
|
||||
- ./MeasureUnit
|
||||
default_prefix: hc
|
||||
classes:
|
||||
MeasurementType:
|
||||
class_uri: skos:Concept
|
||||
abstract: true
|
||||
description: |
|
||||
Abstract base class for types of measurements in heritage conservation contexts.
|
||||
|
||||
Common measurement type categories:
|
||||
- Temperature measurements (°C, °F)
|
||||
- Humidity measurements (% RH)
|
||||
- Light level measurements (lux)
|
||||
- UV radiation measurements
|
||||
- Air quality measurements
|
||||
- Vibration measurements
|
||||
- Pest monitoring counts
|
||||
slots:
|
||||
- has_or_had_name
|
||||
- has_or_had_description
|
||||
- has_or_had_measurement_unit
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
description: The name of this measurement type category.
|
||||
required: true
|
||||
has_or_had_description:
|
||||
description: Description of this measurement type and what it measures.
|
||||
has_or_had_measurement_unit:
|
||||
description: The standard unit(s) of measurement for this type.
|
||||
range: MeasureUnit
|
||||
exact_mappings:
|
||||
- skos:Concept
|
||||
close_mappings:
|
||||
- qudt:QuantityKind
|
||||
- crm:E55_Type
|
||||
|
|
@ -0,0 +1,202 @@
|
|||
id: https://nde.nl/ontology/hc/class/MeasurementTypes
|
||||
name: MeasurementTypes
|
||||
title: Measurement Types (Concrete Subclasses)
|
||||
description: |
|
||||
Concrete subclasses of MeasurementType representing specific categories of
|
||||
measurements used in heritage conservation and storage monitoring.
|
||||
|
||||
Follows the Type/Types naming convention (Rule 0b):
|
||||
- MeasurementType.yaml: Abstract base class
|
||||
- MeasurementTypes.yaml: This file with concrete subclasses
|
||||
|
||||
Created per slot_fixes.yaml revision for category_measurement migration (Rule 53/56).
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
skos: http://www.w3.org/2004/02/skos/core#
|
||||
qudt: http://qudt.org/schema/qudt/
|
||||
imports:
|
||||
- linkml:types
|
||||
- ./MeasurementType
|
||||
default_prefix: hc
|
||||
classes:
|
||||
# === Environmental Measurements ===
|
||||
TemperatureMeasurementType:
|
||||
is_a: MeasurementType
|
||||
class_uri: hc:TemperatureMeasurementType
|
||||
description: |
|
||||
Temperature measurement type for monitoring storage and display environments.
|
||||
Standard units: degrees Celsius (°C) or Fahrenheit (°F).
|
||||
|
||||
Typical conservation ranges:
|
||||
- Archives/libraries: 18-22°C
|
||||
- Museums (general): 18-22°C
|
||||
- Cold storage (photographs): 2-8°C
|
||||
- Freezer storage (textiles): -20°C
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Temperature
|
||||
exact_mappings:
|
||||
- qudt:Temperature
|
||||
aliases:
|
||||
- Temp
|
||||
- Air Temperature
|
||||
|
||||
HumidityMeasurementType:
|
||||
is_a: MeasurementType
|
||||
class_uri: hc:HumidityMeasurementType
|
||||
description: |
|
||||
Relative humidity measurement type for monitoring moisture in storage environments.
|
||||
Standard unit: percentage relative humidity (% RH).
|
||||
|
||||
Typical conservation ranges:
|
||||
- Archives/libraries: 45-55% RH
|
||||
- Museums (general): 45-55% RH
|
||||
- Metals: 30-40% RH
|
||||
- Photographs: 30-40% RH
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Relative Humidity
|
||||
exact_mappings:
|
||||
- qudt:RelativeHumidity
|
||||
aliases:
|
||||
- RH
|
||||
- Humidity
|
||||
- Moisture
|
||||
|
||||
LightLevelMeasurementType:
|
||||
is_a: MeasurementType
|
||||
class_uri: hc:LightLevelMeasurementType
|
||||
description: |
|
||||
Light level measurement type for monitoring illumination in display and storage areas.
|
||||
Standard unit: lux (lx).
|
||||
|
||||
Typical conservation limits:
|
||||
- Light-sensitive materials (textiles, works on paper): 50 lux max
|
||||
- Medium sensitivity (oil paintings): 150-200 lux max
|
||||
- Low sensitivity (stone, ceramics): 300 lux max
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Light Level
|
||||
exact_mappings:
|
||||
- qudt:Illuminance
|
||||
aliases:
|
||||
- Illuminance
|
||||
- Lux
|
||||
|
||||
UVRadiationMeasurementType:
|
||||
is_a: MeasurementType
|
||||
class_uri: hc:UVRadiationMeasurementType
|
||||
description: |
|
||||
Ultraviolet radiation measurement type for monitoring harmful UV exposure.
|
||||
Standard unit: microwatts per lumen (µW/lm).
|
||||
|
||||
Conservation standard: UV should be below 75 µW/lm for most materials.
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: UV Radiation
|
||||
aliases:
|
||||
- UV Level
|
||||
- Ultraviolet
|
||||
|
||||
# === Air Quality Measurements ===
|
||||
AirQualityMeasurementType:
|
||||
is_a: MeasurementType
|
||||
class_uri: hc:AirQualityMeasurementType
|
||||
description: |
|
||||
General air quality measurement type for monitoring pollutants and particulates.
|
||||
May include PM2.5, PM10, or composite air quality indices.
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Air Quality
|
||||
aliases:
|
||||
- AQI
|
||||
- Particulate Matter
|
||||
|
||||
CO2MeasurementType:
|
||||
is_a: MeasurementType
|
||||
class_uri: hc:CO2MeasurementType
|
||||
description: |
|
||||
Carbon dioxide measurement type for monitoring air quality and ventilation.
|
||||
Standard unit: parts per million (ppm).
|
||||
|
||||
Typical thresholds:
|
||||
- Good: <800 ppm
|
||||
- Acceptable: 800-1000 ppm
|
||||
- Poor: >1000 ppm
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Carbon Dioxide
|
||||
aliases:
|
||||
- CO2
|
||||
- Carbon Dioxide Level
|
||||
|
||||
VOCMeasurementType:
|
||||
is_a: MeasurementType
|
||||
class_uri: hc:VOCMeasurementType
|
||||
description: |
|
||||
Volatile organic compounds measurement type for monitoring off-gassing
|
||||
from materials, paints, adhesives, and storage materials.
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Volatile Organic Compounds
|
||||
aliases:
|
||||
- VOC
|
||||
- Off-gassing
|
||||
|
||||
# === Structural Measurements ===
|
||||
VibrationMeasurementType:
|
||||
is_a: MeasurementType
|
||||
class_uri: hc:VibrationMeasurementType
|
||||
description: |
|
||||
Vibration measurement type for monitoring mechanical disturbances
|
||||
that may affect fragile objects.
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Vibration
|
||||
aliases:
|
||||
- Shock
|
||||
- Mechanical Disturbance
|
||||
|
||||
# === Pest Monitoring ===
|
||||
PestCountMeasurementType:
|
||||
is_a: MeasurementType
|
||||
class_uri: hc:PestCountMeasurementType
|
||||
description: |
|
||||
Pest monitoring measurement type for tracking insect and rodent activity.
|
||||
Typically recorded as count per trap per time period.
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Pest Count
|
||||
aliases:
|
||||
- Insect Count
|
||||
- Trap Count
|
||||
- IPM Reading
|
||||
|
||||
# === Water/Moisture ===
|
||||
WaterActivityMeasurementType:
|
||||
is_a: MeasurementType
|
||||
class_uri: hc:WaterActivityMeasurementType
|
||||
description: |
|
||||
Water activity (aw) measurement type for monitoring moisture content
|
||||
in materials, particularly important for organic materials.
|
||||
Scale: 0 to 1 (dimensionless).
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Water Activity
|
||||
aliases:
|
||||
- aw
|
||||
- Moisture Content
|
||||
|
||||
# === Other ===
|
||||
DewPointMeasurementType:
|
||||
is_a: MeasurementType
|
||||
class_uri: hc:DewPointMeasurementType
|
||||
description: |
|
||||
Dew point temperature measurement type for assessing condensation risk.
|
||||
Standard unit: degrees Celsius (°C).
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Dew Point
|
||||
aliases:
|
||||
- Dew Point Temperature
|
||||
|
|
@ -25,9 +25,10 @@ imports:
|
|||
# - ../slots/birth_place
|
||||
- ../slots/has_or_had_place_of_birth
|
||||
- ./BirthPlace
|
||||
- ../slots/death_place
|
||||
- ../slots/date_of_death
|
||||
- ../slots/deceased
|
||||
# REMOVED 2026-01-24: ../slots/death_place - migrated to is_deceased.occurs_or_occurred_at (Rule 53)
|
||||
# REMOVED 2026-01-23: ../slots/date_of_death - migrated to is_deceased.temporal_extent (Rule 53)
|
||||
- ../slots/is_deceased # was: deceased - migrated per Rule 53/56/57 (2026-01-23)
|
||||
- ./DeceasedStatus
|
||||
- ../slots/has_age
|
||||
- ../slots/occupation
|
||||
- ../slots/religion
|
||||
|
|
@ -119,9 +120,9 @@ classes:
|
|||
- has_or_had_place_of_birth
|
||||
- contact_email
|
||||
- created
|
||||
- date_of_death
|
||||
- death_place
|
||||
- deceased
|
||||
# REMOVED 2026-01-23: date_of_death - migrated to is_deceased.temporal_extent (Rule 53)
|
||||
# REMOVED 2026-01-24: death_place - migrated to is_deceased.occurs_or_occurred_at (Rule 53)
|
||||
- is_deceased # was: deceased - migrated per Rule 53/56/57 (2026-01-23)
|
||||
- expertise_area
|
||||
- extraction_metadata
|
||||
- gender_identity
|
||||
|
|
@ -212,15 +213,22 @@ classes:
|
|||
modern_place_name: Jakarta
|
||||
country_code: ID
|
||||
description: Historical place name
|
||||
death_place:
|
||||
range: string
|
||||
required: false
|
||||
date_of_death:
|
||||
range: TimeSpan
|
||||
required: false
|
||||
deceased:
|
||||
range: boolean
|
||||
# REMOVED 2026-01-24: death_place - migrated to is_deceased.occurs_or_occurred_at (Rule 53)
|
||||
# REMOVED 2026-01-23: date_of_death - migrated to is_deceased.temporal_extent (Rule 53)
|
||||
is_deceased: # was: deceased - migrated per Rule 53/56/57 (2026-01-23)
|
||||
range: DeceasedStatus
|
||||
inlined: true
|
||||
required: false
|
||||
description: >-
|
||||
Structured information about death status.
|
||||
Includes cause of death, date, and narrative description.
|
||||
examples:
|
||||
- value:
|
||||
is_or_was_caused_by:
|
||||
cause_type: NATURAL
|
||||
temporal_extent:
|
||||
begin_of_the_begin: "2020-03-15"
|
||||
description: Natural death with known date
|
||||
has_age:
|
||||
range: string
|
||||
required: false
|
||||
|
|
|
|||
|
|
@ -30,7 +30,9 @@ imports:
|
|||
- ../slots/has_or_had_level # was: certainty_level, certainty_note - migrated per Rule 53/56 (2026-01-18)
|
||||
- ./CertaintyLevel
|
||||
- ../slots/has_or_had_custodian_type
|
||||
- ../slots/dealer_name
|
||||
# REMOVED 2026-01-24: dealer_name - migrated to is_or_was_associated_with + ArtDealer (Rule 53)
|
||||
- ../slots/is_or_was_associated_with
|
||||
- ./ArtDealer
|
||||
- ../slots/documentation
|
||||
- ../slots/documentation_url
|
||||
- ../slots/event_date_text
|
||||
|
|
@ -88,7 +90,8 @@ classes:
|
|||
- has_auction_sale_name
|
||||
- has_or_had_level # was: certainty_level, certainty_note - migrated per Rule 53/56 (2026-01-18)
|
||||
- has_or_had_custodian_type
|
||||
- dealer_name
|
||||
# REMOVED 2026-01-24: dealer_name - migrated to is_or_was_associated_with + ArtDealer (Rule 53)
|
||||
- is_or_was_associated_with
|
||||
- documentation
|
||||
- documentation_url
|
||||
- event_date
|
||||
|
|
@ -278,12 +281,24 @@ classes:
|
|||
examples:
|
||||
- value: '36'
|
||||
- value: Lot 127A
|
||||
dealer_name:
|
||||
# REMOVED 2026-01-24: dealer_name - migrated to is_or_was_associated_with + ArtDealer (Rule 53)
|
||||
is_or_was_associated_with:
|
||||
description: |
|
||||
Art dealer(s) involved in this provenance event (for DEALER_SALE events).
|
||||
Range narrowed to ArtDealer for dealer-specific provenance.
|
||||
required: false
|
||||
range: string
|
||||
range: ArtDealer
|
||||
inlined: true
|
||||
multivalued: true
|
||||
examples:
|
||||
- value: Paul Cassirer
|
||||
- value: Goupil & Cie
|
||||
- value:
|
||||
has_or_had_name:
|
||||
has_or_had_label: "Paul Cassirer"
|
||||
description: German art dealer
|
||||
- value:
|
||||
has_or_had_name:
|
||||
has_or_had_label: "Goupil & Cie"
|
||||
description: French art dealing firm
|
||||
documentation:
|
||||
required: false
|
||||
range: string
|
||||
|
|
|
|||
|
|
@ -0,0 +1,73 @@
|
|||
id: https://nde.nl/ontology/hc/class/Publication
|
||||
name: Publication_class
|
||||
title: Publication Class
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
schema: http://schema.org/
|
||||
prov: http://www.w3.org/ns/prov#
|
||||
bf: http://id.loc.gov/ontologies/bibframe/
|
||||
imports:
|
||||
- linkml:types
|
||||
- ../slots/temporal_extent
|
||||
- ../slots/has_or_had_name
|
||||
- ../slots/description
|
||||
default_prefix: hc
|
||||
|
||||
classes:
|
||||
Publication:
|
||||
description: >-
|
||||
A publication event representing when an information carrier or creative work
|
||||
was published or produced. Captures the temporal extent of publication,
|
||||
publisher information, place of publication, and edition details.
|
||||
Replaces the simple date_of_publication string slot per Rule 53.
|
||||
class_uri: schema:PublicationEvent
|
||||
mixins: []
|
||||
slots:
|
||||
- temporal_extent
|
||||
- has_or_had_name
|
||||
- description
|
||||
attributes:
|
||||
publisher:
|
||||
description: >-
|
||||
The publisher or producer of this publication.
|
||||
Can be an organization name or reference.
|
||||
range: string
|
||||
slot_uri: schema:publisher
|
||||
publication_place:
|
||||
description: >-
|
||||
The place where the publication was issued.
|
||||
range: string
|
||||
slot_uri: schema:locationCreated
|
||||
edition:
|
||||
description: >-
|
||||
Edition or version identifier (e.g., "First Edition", "2nd ed.", "Revised").
|
||||
range: string
|
||||
slot_uri: bf:editionStatement
|
||||
publication_date_string:
|
||||
description: >-
|
||||
Human-readable date string for historical or approximate dates
|
||||
(e.g., "c. 1455", "16th century", "4th century CE").
|
||||
Use temporal_extent for structured date representation.
|
||||
range: string
|
||||
slot_uri: schema:datePublished
|
||||
annotations:
|
||||
replaces: date_of_publication
|
||||
migration_date: '2026-01-23'
|
||||
migration_rule: Rule 53 - No bespoke slots
|
||||
examples:
|
||||
- value:
|
||||
publication_date_string: "c. 1455"
|
||||
publisher: "Johannes Gutenberg"
|
||||
publication_place: "Mainz"
|
||||
description: Gutenberg Bible approximate publication
|
||||
- value:
|
||||
temporal_extent:
|
||||
begin_of_the_begin: "1776-08-02"
|
||||
end_of_the_end: "1776-08-02"
|
||||
publisher: "John Dunlap"
|
||||
publication_place: "Philadelphia"
|
||||
description: US Declaration of Independence with precise date
|
||||
- value:
|
||||
publication_date_string: "4th century CE"
|
||||
description: Ancient manuscript with century-level precision
|
||||
|
|
@ -14,8 +14,8 @@ imports:
|
|||
- ../metadata
|
||||
- ../slots/description
|
||||
- ../slots/martyred
|
||||
- ../slots/deceased
|
||||
- ../slots/date_of_death
|
||||
# REMOVED 2026-01-23: ../slots/deceased - migrated to is_deceased with DeceasedStatus (Rule 53)
|
||||
# REMOVED 2026-01-23: ../slots/date_of_death - migrated to is_deceased.temporal_extent (Rule 53)
|
||||
# REMOVED 2026-01-19: ../slots/circumstances_of_death - migrated to is_deceased with DeceasedStatus
|
||||
- ../slots/is_deceased
|
||||
- ./DeceasedStatus
|
||||
|
|
@ -171,8 +171,8 @@ classes:
|
|||
# REMOVED 2026-01-22: common_variant - migrated to has_or_had_type + VariantType + VariantTypes (Rule 53)
|
||||
- has_or_had_type
|
||||
- includes_or_included
|
||||
- date_of_death
|
||||
- deceased
|
||||
# REMOVED 2026-01-23: date_of_death - migrated to is_deceased.temporal_extent (Rule 53)
|
||||
# REMOVED 2026-01-23: deceased - migrated to is_deceased with DeceasedStatus (Rule 53)
|
||||
- description
|
||||
- martyred
|
||||
- requires_qualification
|
||||
|
|
@ -196,12 +196,10 @@ classes:
|
|||
required: false
|
||||
role_category:
|
||||
required: false
|
||||
deceased:
|
||||
required: false
|
||||
# REMOVED 2026-01-23: deceased - migrated to is_deceased with DeceasedStatus (Rule 53)
|
||||
martyred:
|
||||
required: false
|
||||
date_of_death:
|
||||
required: false
|
||||
# REMOVED 2026-01-23: date_of_death - migrated to is_deceased.temporal_extent (Rule 53)
|
||||
# REMOVED 2026-01-19: circumstances_of_death - migrated to is_deceased
|
||||
is_deceased:
|
||||
required: false
|
||||
|
|
@ -268,9 +266,9 @@ classes:
|
|||
- A person may hold multiple roles simultaneously
|
||||
- Each role observation has independent temporal extent
|
||||
- Links to PersonObservation via role_type slot
|
||||
- deceased/martyred slots track vital status of staff member holding this role
|
||||
- is_deceased with DeceasedStatus tracks vital status of staff member holding this role
|
||||
- martyred flag specifically for information workers killed due to conflict or persecution
|
||||
- date_of_death uses TimeSpan for fuzzy temporal bounds when exact date unknown
|
||||
- DeceasedStatus.temporal_extent uses TimeSpan for fuzzy temporal bounds when exact date unknown
|
||||
see_also:
|
||||
- https://www.w3.org/TR/vocab-org/#class-role
|
||||
- https://schema.org/Role
|
||||
|
|
|
|||
|
|
@ -27,10 +27,16 @@ imports:
|
|||
- ../slots/follow_up_date
|
||||
- ../slots/has_assessment_category
|
||||
- ../slots/has_or_had_category_assessment
|
||||
- ../slots/category_measurement
|
||||
# - ../slots/category_measurement # ARCHIVED 2026-01-24: migrated to has_or_had_measurement + Measurement per Rule 53/56
|
||||
- ../slots/has_or_had_measurement
|
||||
- ./Measurement
|
||||
- ./MeasurementType
|
||||
- ./MeasurementTypes
|
||||
- ../slots/has_or_had_measurement_type
|
||||
- ../slots/has_or_had_note # was: category_note - migrated per Rule 53/56 (2026-01-18)
|
||||
- ./Note # for has_or_had_note range
|
||||
- ../slots/category_status
|
||||
# - ../slots/category_status # ARCHIVED 2026-01-24: migrated to has_or_had_status + CategoryStatus per Rule 53/56
|
||||
- ./CategoryStatus
|
||||
# REMOVED 2026-01-22: ../slots/compliance_status - migrated to has_or_had_status + ComplianceStatus (Rule 53)
|
||||
- ../slots/has_or_had_status
|
||||
- ./ComplianceStatus
|
||||
|
|
@ -369,20 +375,29 @@ classes:
|
|||
'
|
||||
slots:
|
||||
- has_assessment_category
|
||||
- category_measurement
|
||||
- has_or_had_measurement # was: category_measurement - migrated per Rule 53/56 (2026-01-24)
|
||||
- has_or_had_note # was: category_note - migrated per Rule 53/56 (2026-01-18)
|
||||
- category_status
|
||||
- has_or_had_status # was: category_status - migrated per Rule 53/56 (2026-01-24)
|
||||
- specificity_annotation
|
||||
- has_or_had_score # was: template_specificity - migrated per Rule 53 (2026-01-17)
|
||||
slot_usage:
|
||||
has_assessment_category:
|
||||
range: string
|
||||
required: true
|
||||
category_status:
|
||||
range: StorageConditionStatusEnum
|
||||
has_or_had_status: # was: category_status - migrated per Rule 53/56 (2026-01-24)
|
||||
description: |
|
||||
MIGRATED from category_status per Rule 53/56 (2026-01-24).
|
||||
Status classification for this category assessment.
|
||||
range: CategoryStatus
|
||||
required: true
|
||||
category_measurement:
|
||||
range: string
|
||||
inlined: true
|
||||
has_or_had_measurement: # was: category_measurement - migrated per Rule 53/56 (2026-01-24)
|
||||
description: |
|
||||
MIGRATED from category_measurement per Rule 53/56 (2026-01-24).
|
||||
Structured measurement with value, type, and unit.
|
||||
range: Measurement
|
||||
inlined: true
|
||||
multivalued: true
|
||||
has_or_had_note: # was: category_note - migrated per Rule 53/56 (2026-01-18)
|
||||
description: |
|
||||
MIGRATED from category_note per Rule 53/56 (2026-01-18).
|
||||
|
|
|
|||
|
|
@ -11,15 +11,18 @@ imports:
|
|||
- ../slots/has_or_had_type
|
||||
- ../slots/has_or_had_label
|
||||
- ../slots/has_or_had_description
|
||||
- ../slots/deductibility_status # Centralized per Rule 48 (2026-01-17)
|
||||
- ../slots/deductibility_conditions # Centralized per Rule 48 (2026-01-17)
|
||||
# REMOVED 2026-01-23: deductibility_status migrated to has_or_had_type + TaxDeductibilityType
|
||||
- ./TaxDeductibilityType # was: DeductibilityStatusEnum - migrated per Rule 53 (2026-01-23)
|
||||
- ./TaxDeductibilityTypes # Concrete subclasses per Rule 0b
|
||||
- ../slots/has_or_had_condition # was: deductibility_conditions - migrated per Rule 53 (2026-01-23)
|
||||
- ./Condition # Range for has_or_had_condition
|
||||
- ../slots/minimum_donation # Centralized per Rule 48 (2026-01-17)
|
||||
- ../slots/jurisdiction
|
||||
- ../slots/deductible_percentage
|
||||
- ../slots/has_or_had_percentage # was: deductible_percentage - migrated per Rule 53 (2026-01-23)
|
||||
- ./Percentage # Range for has_or_had_percentage
|
||||
- ../slots/effective_from
|
||||
- ../slots/effective_until
|
||||
- ./Jurisdiction
|
||||
- ../enums/DeductibilityStatusEnum # Enum moved to separate file per Rule 48 (2026-01-17)
|
||||
default_prefix: hc
|
||||
|
||||
classes:
|
||||
|
|
@ -47,11 +50,11 @@ classes:
|
|||
```
|
||||
TaxDeductibility
|
||||
│
|
||||
├── deductibility_status ──→ DeductibilityStatusEnum (FULLY_DEDUCTIBLE, etc.)
|
||||
├── has_or_had_type ──→ TaxDeductibilityType (FullyDeductible, etc.)
|
||||
│
|
||||
├── jurisdiction ──→ Jurisdiction class
|
||||
│
|
||||
├── deductibility_conditions ──→ "Donation must exceed €25"
|
||||
├── has_or_had_condition ──→ Condition (structured conditions)
|
||||
│
|
||||
└── effective_from / effective_until ──→ dates
|
||||
```
|
||||
|
|
@ -78,18 +81,27 @@ classes:
|
|||
close_mappings:
|
||||
- prov:Entity
|
||||
slots:
|
||||
- deductibility_status
|
||||
- has_or_had_type # was: deductibility_status - migrated per Rule 53 (2026-01-23)
|
||||
- jurisdiction
|
||||
- deductibility_conditions
|
||||
- deductible_percentage
|
||||
- has_or_had_condition # was: deductibility_conditions - migrated per Rule 53 (2026-01-23)
|
||||
- has_or_had_percentage # was: deductible_percentage - migrated per Rule 53 (2026-01-23)
|
||||
- minimum_donation
|
||||
- effective_from
|
||||
- effective_until
|
||||
slot_usage:
|
||||
deductibility_status:
|
||||
range: DeductibilityStatusEnum
|
||||
has_or_had_type: # was: deductibility_status - migrated per Rule 53 (2026-01-23)
|
||||
range: TaxDeductibilityType
|
||||
required: true
|
||||
description: The deductibility classification.
|
||||
inlined: true
|
||||
description: |
|
||||
The deductibility classification type.
|
||||
MIGRATED from deductibility_status per slot_fixes.yaml (Rule 53).
|
||||
Uses TaxDeductibilityType class hierarchy per Rule 0b.
|
||||
examples:
|
||||
- value:
|
||||
has_or_had_label: "Fully Deductible"
|
||||
has_or_had_description: "100% of donation is tax-deductible"
|
||||
description: Full deductibility type
|
||||
jurisdiction:
|
||||
range: Jurisdiction
|
||||
inlined: true
|
||||
|
|
@ -105,23 +117,47 @@ classes:
|
|||
jurisdiction_code: UK
|
||||
jurisdiction_name: United Kingdom
|
||||
description: United Kingdom
|
||||
deductibility_conditions:
|
||||
range: string
|
||||
has_or_had_condition: # was: deductibility_conditions - migrated per Rule 53 (2026-01-23)
|
||||
range: Condition
|
||||
inlined: true
|
||||
multivalued: true
|
||||
description: |
|
||||
Conditions that must be met for tax deductibility.
|
||||
MIGRATED from deductibility_conditions per slot_fixes.yaml (Rule 53).
|
||||
Uses Condition class for structured condition representation.
|
||||
examples:
|
||||
- value: Donation must exceed €25 minimum
|
||||
description: Dutch minimum threshold
|
||||
- value: Must complete Gift Aid declaration
|
||||
description: UK Gift Aid requirement
|
||||
- value: Benefits received reduce deductible amount
|
||||
description: Fair market value adjustment
|
||||
deductible_percentage:
|
||||
range: integer
|
||||
- value:
|
||||
has_or_had_type: TAX_THRESHOLD
|
||||
has_or_had_description:
|
||||
description_text: "Donation must exceed €25 minimum"
|
||||
description_type: condition
|
||||
description: Dutch minimum threshold condition
|
||||
- value:
|
||||
has_or_had_type: DECLARATION_REQUIRED
|
||||
has_or_had_description:
|
||||
description_text: "Must complete Gift Aid declaration"
|
||||
description_type: condition
|
||||
description: UK Gift Aid requirement condition
|
||||
has_or_had_percentage: # was: deductible_percentage - migrated per Rule 53 (2026-01-23)
|
||||
range: Percentage
|
||||
inlined: true
|
||||
description: |
|
||||
Percentage of donation that is deductible (0-100).
|
||||
MIGRATED from deductible_percentage per slot_fixes.yaml (Rule 53).
|
||||
Uses Percentage class for structured representation.
|
||||
For enhanced cultural deductions (e.g., 125%), use 100 here
|
||||
and document the enhancement in regulated_by_scheme.
|
||||
examples:
|
||||
- value:
|
||||
percentage_value: 100
|
||||
percentage_display: "100%"
|
||||
percentage_context: "deductibility"
|
||||
description: Fully deductible (100%)
|
||||
- value:
|
||||
percentage_value: 70
|
||||
percentage_display: "70%"
|
||||
percentage_context: "deductibility"
|
||||
description: Partially deductible (70%)
|
||||
minimum_donation:
|
||||
range: decimal
|
||||
description: |
|
||||
|
|
@ -137,35 +173,61 @@ classes:
|
|||
- https://www.gov.uk/donating-to-charity/gift-aid
|
||||
examples:
|
||||
- value:
|
||||
deductibility_status: FULLY_DEDUCTIBLE
|
||||
has_or_had_type:
|
||||
has_or_had_label: "Fully Deductible"
|
||||
has_or_had_description: "100% of donation is tax-deductible"
|
||||
jurisdiction:
|
||||
jurisdiction_code: NL
|
||||
jurisdiction_name: Netherlands
|
||||
deductibility_conditions: Donation must exceed €25 minimum
|
||||
deductible_percentage: 100
|
||||
has_or_had_condition:
|
||||
- has_or_had_type: TAX_THRESHOLD
|
||||
has_or_had_description:
|
||||
description_text: "Donation must exceed €25 minimum"
|
||||
has_or_had_percentage:
|
||||
percentage_value: 100
|
||||
percentage_display: "100%"
|
||||
description: Dutch ANBI fully deductible donation
|
||||
- value:
|
||||
deductibility_status: CONDITIONALLY_DEDUCTIBLE
|
||||
has_or_had_type:
|
||||
has_or_had_label: "Conditionally Deductible"
|
||||
has_or_had_description: "Deductible if conditions are met"
|
||||
jurisdiction:
|
||||
jurisdiction_code: UK
|
||||
jurisdiction_name: United Kingdom
|
||||
deductibility_conditions: Donor must complete Gift Aid declaration
|
||||
deductible_percentage: 100
|
||||
has_or_had_condition:
|
||||
- has_or_had_type: DECLARATION_REQUIRED
|
||||
has_or_had_description:
|
||||
description_text: "Donor must complete Gift Aid declaration"
|
||||
has_or_had_percentage:
|
||||
percentage_value: 100
|
||||
percentage_display: "100%"
|
||||
description: UK Gift Aid conditional deductibility
|
||||
- value:
|
||||
deductibility_status: PARTIALLY_DEDUCTIBLE
|
||||
has_or_had_type:
|
||||
has_or_had_label: "Partially Deductible"
|
||||
has_or_had_description: "Only portion of donation is deductible"
|
||||
jurisdiction:
|
||||
jurisdiction_code: US
|
||||
jurisdiction_name: United States
|
||||
deductibility_conditions: Fair market value of benefits received is subtracted
|
||||
deductible_percentage: 70
|
||||
has_or_had_condition:
|
||||
- has_or_had_type: FAIR_MARKET_VALUE
|
||||
has_or_had_description:
|
||||
description_text: "Fair market value of benefits received is subtracted"
|
||||
has_or_had_percentage:
|
||||
percentage_value: 70
|
||||
percentage_display: "70%"
|
||||
description: US gala ticket with partial deductibility
|
||||
- value:
|
||||
deductibility_status: NOT_DEDUCTIBLE
|
||||
has_or_had_type:
|
||||
has_or_had_label: "Not Deductible"
|
||||
has_or_had_description: "No tax benefit for this donation"
|
||||
jurisdiction:
|
||||
jurisdiction_code: NL
|
||||
jurisdiction_name: Netherlands
|
||||
deductibility_conditions: Membership benefits exceed donation value
|
||||
has_or_had_condition:
|
||||
- has_or_had_type: BENEFIT_EXCEEDS_VALUE
|
||||
has_or_had_description:
|
||||
description_text: "Membership benefits exceed donation value"
|
||||
description: Museum membership not tax-deductible
|
||||
annotations:
|
||||
specificity_score: 0.50
|
||||
|
|
|
|||
|
|
@ -0,0 +1,80 @@
|
|||
# TaxDeductibilityType - Abstract base class for tax deductibility status types
|
||||
#
|
||||
# Generation date: 2026-01-23
|
||||
# Rule compliance: 0b (Type/Types pattern), 9 (enum-to-class promotion), 53 (slot_fixes.yaml)
|
||||
#
|
||||
# Replaces: DeductibilityStatusEnum
|
||||
# Part of migration: deductibility_status → has_or_had_type + TaxDeductibilityType
|
||||
|
||||
id: https://nde.nl/ontology/hc/class/TaxDeductibilityType
|
||||
name: tax_deductibility_type_class
|
||||
title: Tax Deductibility Type Class
|
||||
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
skos: http://www.w3.org/2004/02/skos/core#
|
||||
schema: http://schema.org/
|
||||
|
||||
default_prefix: hc
|
||||
|
||||
imports:
|
||||
- linkml:types
|
||||
- ../slots/has_or_had_label
|
||||
- ../slots/has_or_had_description
|
||||
|
||||
classes:
|
||||
TaxDeductibilityType:
|
||||
class_uri: skos:Concept
|
||||
abstract: true
|
||||
description: |
|
||||
Abstract base class for tax deductibility status classifications.
|
||||
|
||||
**Purpose**:
|
||||
Provides type-safe classification of donation tax deductibility status,
|
||||
replacing the previous DeductibilityStatusEnum.
|
||||
|
||||
**Rule 0b Compliance**:
|
||||
This is the singular "Type" class (abstract base). Concrete subclasses
|
||||
are defined in TaxDeductibilityTypes.yaml (plural "Types" file).
|
||||
|
||||
**Rule 9 Compliance**:
|
||||
Promoted from enum to class hierarchy to enable:
|
||||
- Richer metadata per classification
|
||||
- Extensibility without schema changes
|
||||
- Better ontology alignment (SKOS Concept)
|
||||
|
||||
**Subclasses** (in TaxDeductibilityTypes.yaml):
|
||||
- FullyDeductible: 100% tax-deductible
|
||||
- PartiallyDeductible: Portion is deductible
|
||||
- NotDeductible: No tax benefit
|
||||
- ConditionallyDeductible: Deductible if conditions met
|
||||
- JurisdictionDependent: Varies by jurisdiction
|
||||
- UnknownDeductibility: Status undetermined
|
||||
|
||||
exact_mappings:
|
||||
- skos:Concept
|
||||
|
||||
close_mappings:
|
||||
- schema:PropertyValue
|
||||
|
||||
slots:
|
||||
- has_or_had_label
|
||||
- has_or_had_description
|
||||
|
||||
slot_usage:
|
||||
has_or_had_label:
|
||||
description: Human-readable label for the deductibility type.
|
||||
range: string
|
||||
required: true
|
||||
has_or_had_description:
|
||||
description: Detailed explanation of this deductibility classification.
|
||||
range: string
|
||||
|
||||
annotations:
|
||||
custodian_types: '["*"]'
|
||||
custodian_types_rationale: Tax deductibility applies to all heritage institution types.
|
||||
specificity_score: 0.45
|
||||
specificity_rationale: Moderately specific - relevant for donation/funding queries.
|
||||
replaces_enum: DeductibilityStatusEnum
|
||||
migration_date: "2026-01-23"
|
||||
|
|
@ -0,0 +1,151 @@
|
|||
# TaxDeductibilityTypes - Concrete subclasses for tax deductibility status
|
||||
#
|
||||
# Generation date: 2026-01-23
|
||||
# Rule compliance: 0b (Type/Types pattern), 9 (enum-to-class promotion), 53 (slot_fixes.yaml)
|
||||
#
|
||||
# Replaces: DeductibilityStatusEnum permissible values
|
||||
# Part of migration: deductibility_status → has_or_had_type + TaxDeductibilityType
|
||||
|
||||
id: https://nde.nl/ontology/hc/class/TaxDeductibilityTypes
|
||||
name: tax_deductibility_types_class
|
||||
title: Tax Deductibility Types Classes
|
||||
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
skos: http://www.w3.org/2004/02/skos/core#
|
||||
|
||||
default_prefix: hc
|
||||
|
||||
imports:
|
||||
- linkml:types
|
||||
- ./TaxDeductibilityType
|
||||
|
||||
classes:
|
||||
FullyDeductible:
|
||||
is_a: TaxDeductibilityType
|
||||
class_uri: hc:FullyDeductible
|
||||
description: |
|
||||
100% of the donation is tax-deductible.
|
||||
|
||||
The donor can deduct the full donation amount from their taxable income,
|
||||
subject to any percentage limits set by their tax jurisdiction.
|
||||
|
||||
**Examples**:
|
||||
- Donation to Dutch ANBI (Algemeen Nut Beogende Instelling)
|
||||
- Donation to US 501(c)(3) organization
|
||||
- Donation to UK registered charity
|
||||
|
||||
annotations:
|
||||
replaces_enum_value: FULLY_DEDUCTIBLE
|
||||
|
||||
examples:
|
||||
- value:
|
||||
has_or_had_label: "Fully Deductible"
|
||||
has_or_had_description: "100% of donation is tax-deductible"
|
||||
description: Full deductibility classification
|
||||
|
||||
PartiallyDeductible:
|
||||
is_a: TaxDeductibilityType
|
||||
class_uri: hc:PartiallyDeductible
|
||||
description: |
|
||||
Only a portion of the donation is tax-deductible.
|
||||
|
||||
Common when donor receives benefits (e.g., gala dinner ticket)
|
||||
where fair market value of benefits must be subtracted.
|
||||
|
||||
**Examples**:
|
||||
- Gala ticket where meal/entertainment value is subtracted
|
||||
- Auction item purchased above fair market value
|
||||
|
||||
annotations:
|
||||
replaces_enum_value: PARTIALLY_DEDUCTIBLE
|
||||
|
||||
examples:
|
||||
- value:
|
||||
has_or_had_label: "Partially Deductible"
|
||||
has_or_had_description: "Only portion of donation is deductible"
|
||||
description: Partial deductibility classification
|
||||
|
||||
NotDeductible:
|
||||
is_a: TaxDeductibilityType
|
||||
class_uri: hc:NotDeductible
|
||||
description: |
|
||||
The donation provides no tax benefit to the donor.
|
||||
|
||||
**Examples**:
|
||||
- Museum membership where benefits exceed donation value
|
||||
- Donation to organization without tax-exempt status
|
||||
- Political contributions in jurisdictions where not deductible
|
||||
|
||||
annotations:
|
||||
replaces_enum_value: NOT_DEDUCTIBLE
|
||||
|
||||
examples:
|
||||
- value:
|
||||
has_or_had_label: "Not Deductible"
|
||||
has_or_had_description: "No tax benefit for this donation"
|
||||
description: Non-deductible classification
|
||||
|
||||
ConditionallyDeductible:
|
||||
is_a: TaxDeductibilityType
|
||||
class_uri: hc:ConditionallyDeductible
|
||||
description: |
|
||||
Tax-deductible only if specific conditions are met.
|
||||
|
||||
**Examples**:
|
||||
- UK Gift Aid requiring donor declaration
|
||||
- Donations requiring donor to itemize deductions
|
||||
- Contributions requiring documentation threshold
|
||||
|
||||
annotations:
|
||||
replaces_enum_value: CONDITIONALLY_DEDUCTIBLE
|
||||
|
||||
examples:
|
||||
- value:
|
||||
has_or_had_label: "Conditionally Deductible"
|
||||
has_or_had_description: "Deductible if conditions are met"
|
||||
description: Conditional deductibility classification
|
||||
|
||||
JurisdictionDependent:
|
||||
is_a: TaxDeductibilityType
|
||||
class_uri: hc:JurisdictionDependent
|
||||
description: |
|
||||
Deductibility varies based on the donor's tax jurisdiction.
|
||||
|
||||
Common for international donations where deductibility depends
|
||||
on tax treaties and donor's country of residence.
|
||||
|
||||
**Examples**:
|
||||
- US donor to European museum (may require US friends organization)
|
||||
- Cross-border donations within EU
|
||||
- Donations to organizations with multiple country registrations
|
||||
|
||||
annotations:
|
||||
replaces_enum_value: JURISDICTION_DEPENDENT
|
||||
|
||||
examples:
|
||||
- value:
|
||||
has_or_had_label: "Jurisdiction Dependent"
|
||||
has_or_had_description: "Varies by donor's tax jurisdiction"
|
||||
description: Jurisdiction-dependent classification
|
||||
|
||||
UnknownDeductibility:
|
||||
is_a: TaxDeductibilityType
|
||||
class_uri: hc:UnknownDeductibility
|
||||
description: |
|
||||
Deductibility status has not been determined.
|
||||
|
||||
Used when:
|
||||
- Organization's tax status is pending
|
||||
- Information not yet collected
|
||||
- Status requires legal review
|
||||
|
||||
annotations:
|
||||
replaces_enum_value: UNKNOWN
|
||||
|
||||
examples:
|
||||
- value:
|
||||
has_or_had_label: "Unknown"
|
||||
has_or_had_description: "Deductibility status not determined"
|
||||
description: Unknown deductibility classification
|
||||
|
|
@ -15,4 +15,5 @@ slots:
|
|||
Breakdown of heritage-relevant connections by type code.
|
||||
Keys are single-letter GLAMORCUBESFIXPHDNT codes.
|
||||
slot_uri: hc:connectionsByHeritageType
|
||||
range: string
|
||||
multivalued: true
|
||||
|
|
|
|||
|
|
@ -0,0 +1,40 @@
|
|||
id: https://nde.nl/ontology/hc/slot/degree_of_certainty
|
||||
name: degree_of_certainty_slot
|
||||
title: Degree of Certainty Slot
|
||||
description: >-
|
||||
The degree of certainty or precision associated with a value.
|
||||
|
||||
Used to indicate how specific or certain information is, particularly
|
||||
for temporal data (dates) and other values that may have varying
|
||||
levels of precision.
|
||||
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
crm: http://www.cidoc-crm.org/cidoc-crm/
|
||||
|
||||
imports:
|
||||
- linkml:types
|
||||
|
||||
default_prefix: hc
|
||||
|
||||
slots:
|
||||
degree_of_certainty:
|
||||
description: >-
|
||||
The degree of certainty or precision for a value.
|
||||
|
||||
Used to qualify values that may have varying levels of specificity,
|
||||
such as dates (day, month, year, decade, century) or confidence
|
||||
levels for inferred data.
|
||||
slot_uri: crm:P91_has_unit
|
||||
range: string
|
||||
close_mappings:
|
||||
- crm:P91_has_unit
|
||||
annotations:
|
||||
specificity_score: 0.30
|
||||
specificity_rationale: >-
|
||||
Certainty/precision levels are broadly applicable across temporal,
|
||||
quantitative, and qualitative contexts.
|
||||
custodian_types: '["*"]'
|
||||
custodian_types_rationale: >-
|
||||
Degree of certainty applies universally to all custodian types.
|
||||
|
|
@ -28,3 +28,5 @@ slots:
|
|||
|
||||
'
|
||||
slot_uri: prov:wasDerivedFrom
|
||||
range: uriorcurie
|
||||
multivalued: true
|
||||
|
|
|
|||
|
|
@ -0,0 +1,49 @@
|
|||
# has_or_had_carrier slot
|
||||
# Generic slot for linking physical carriers to information carrier instances
|
||||
#
|
||||
# Following RiC-O naming convention (Rule 39): "hasOrHad..." pattern
|
||||
# for temporal relationships in heritage domain.
|
||||
#
|
||||
# Created: 2026-01-23 per slot_fixes.yaml F24 (carrier_type migration)
|
||||
# Rule compliance: 38, 39, 42, 53
|
||||
|
||||
id: https://nde.nl/ontology/hc/slot/has_or_had_carrier
|
||||
name: has_or_had_carrier_slot
|
||||
title: Has Or Had Carrier Slot
|
||||
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
bf: http://id.loc.gov/ontologies/bibframe/
|
||||
rda: http://rdaregistry.info/termList/
|
||||
crm: http://www.cidoc-crm.org/cidoc-crm/
|
||||
dcterms: http://purl.org/dc/terms/
|
||||
|
||||
default_prefix: hc
|
||||
|
||||
imports:
|
||||
- linkml:types
|
||||
|
||||
slots:
|
||||
has_or_had_carrier:
|
||||
description: >-
|
||||
The physical carrier on which information is recorded.
|
||||
|
||||
Links information-bearing objects to their physical carrier characteristics
|
||||
including material type, format, and physical properties.
|
||||
|
||||
MIGRATED from carrier_type (2026-01-23) per Rule 53.
|
||||
Replaces direct enum reference with structured Carrier class
|
||||
for richer metadata and Type/Types pattern compliance (Rule 0b).
|
||||
slot_uri: bf:carrier
|
||||
range: Carrier
|
||||
multivalued: false
|
||||
inlined: true
|
||||
exact_mappings:
|
||||
- bf:carrier
|
||||
- rda:P60048
|
||||
close_mappings:
|
||||
- crm:P46_is_composed_of
|
||||
annotations:
|
||||
custodian_types: '["L", "A", "R", "M"]'
|
||||
custodian_types_rationale: 'Primarily used by libraries, archives, research centers, and museums with documentary collections'
|
||||
|
|
@ -0,0 +1,38 @@
|
|||
id: https://nde.nl/ontology/hc/slot/has_or_had_image
|
||||
name: has_or_had_image_slot
|
||||
title: Has or Had Image Slot
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
schema: http://schema.org/
|
||||
foaf: http://xmlns.com/foaf/0.1/
|
||||
imports:
|
||||
- linkml:types
|
||||
default_range: string
|
||||
|
||||
slots:
|
||||
has_or_had_image:
|
||||
slot_uri: schema:image
|
||||
description: >-
|
||||
Links to an Image representing visual content.
|
||||
|
||||
**USE CASES**:
|
||||
- Card thumbnail images
|
||||
- Collection preview images
|
||||
- Institutional logos
|
||||
- Digital object representations
|
||||
|
||||
**ONTOLOGY ALIGNMENT**:
|
||||
- slot_uri: schema:image (primary)
|
||||
- Also maps to foaf:depiction
|
||||
|
||||
MIGRATED 2026-01-22: Created per slot_fixes.yaml revision for card_image_url.
|
||||
range: Image
|
||||
inlined: true
|
||||
multivalued: true
|
||||
exact_mappings:
|
||||
- schema:image
|
||||
- foaf:depiction
|
||||
annotations:
|
||||
custodian_types: '["*"]'
|
||||
custodian_types_rationale: Images are universal across all heritage contexts
|
||||
|
|
@ -0,0 +1,34 @@
|
|||
id: https://nde.nl/ontology/hc/slot/has_or_had_measurement
|
||||
name: has_or_had_measurement_slot
|
||||
title: Has or Had Measurement Slot
|
||||
description: |
|
||||
Slot file for has_or_had_measurement following Rule 53 (slot_fixes.yaml).
|
||||
Links an entity to its measurement observations.
|
||||
|
||||
Created per slot_fixes.yaml revision for category_measurement migration.
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
sosa: http://www.w3.org/ns/sosa/
|
||||
crm: http://www.cidoc-crm.org/cidoc-crm/
|
||||
imports:
|
||||
- linkml:types
|
||||
default_prefix: hc
|
||||
slots:
|
||||
has_or_had_measurement:
|
||||
slot_uri: sosa:hasMember
|
||||
description: |
|
||||
A measurement observation associated with this entity.
|
||||
|
||||
Follows RiC-O temporal naming convention (Rule 39) to indicate the
|
||||
relationship may be current or historical.
|
||||
|
||||
Replaces category_measurement (simple string) with structured
|
||||
Measurement class per Rule 53/56.
|
||||
range: uriorcurie
|
||||
multivalued: true
|
||||
required: false
|
||||
exact_mappings:
|
||||
- sosa:hasMember
|
||||
close_mappings:
|
||||
- crm:P39_measured
|
||||
|
|
@ -0,0 +1,31 @@
|
|||
id: https://nde.nl/ontology/hc/slot/has_or_had_measurement_type
|
||||
name: has_or_had_measurement_type_slot
|
||||
title: Has or Had Measurement Type Slot
|
||||
description: |
|
||||
Slot file for has_or_had_measurement_type following Rule 53 (slot_fixes.yaml).
|
||||
Links a measurement to its type classification (temperature, humidity, etc.).
|
||||
|
||||
Created per slot_fixes.yaml revision for category_measurement migration.
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
qudt: http://qudt.org/schema/qudt/
|
||||
crm: http://www.cidoc-crm.org/cidoc-crm/
|
||||
imports:
|
||||
- linkml:types
|
||||
default_prefix: hc
|
||||
slots:
|
||||
has_or_had_measurement_type:
|
||||
slot_uri: crm:P2_has_type
|
||||
description: |
|
||||
The type or category of a measurement (e.g., temperature, humidity,
|
||||
light level, air quality).
|
||||
|
||||
Follows RiC-O temporal naming convention (Rule 39) to indicate the
|
||||
relationship may be current or historical.
|
||||
range: uriorcurie
|
||||
required: false
|
||||
exact_mappings:
|
||||
- crm:P2_has_type
|
||||
close_mappings:
|
||||
- qudt:quantityKind
|
||||
|
|
@ -0,0 +1,73 @@
|
|||
# is_or_was_decommissioned_at slot
|
||||
# Timestamp when an entity was or will be decommissioned
|
||||
#
|
||||
# Generation date: 2026-01-23
|
||||
# Rule compliance: 39 (RiC-O temporal naming), 53 (slot_fixes.yaml)
|
||||
#
|
||||
# Replaces: decommission_date
|
||||
# Target class: Timestamp
|
||||
|
||||
id: https://nde.nl/ontology/hc/slot/is_or_was_decommissioned_at
|
||||
name: is_or_was_decommissioned_at_slot
|
||||
title: Is Or Was Decommissioned At Slot
|
||||
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
prov: http://www.w3.org/ns/prov#
|
||||
dcterms: http://purl.org/dc/terms/
|
||||
schema: http://schema.org/
|
||||
|
||||
default_prefix: hc
|
||||
|
||||
imports:
|
||||
- linkml:types
|
||||
|
||||
slots:
|
||||
is_or_was_decommissioned_at:
|
||||
description: |
|
||||
Timestamp when an entity was or will be decommissioned.
|
||||
|
||||
**Purpose**:
|
||||
Records the date/time when an IoT device, system, or other entity
|
||||
was taken out of service or is scheduled for decommissioning.
|
||||
NULL if still operational.
|
||||
|
||||
**Temporal Semantics** (Rule 39 - RiC-O style):
|
||||
The "is_or_was_" prefix indicates this timestamp applies to both:
|
||||
- Past events: device was decommissioned on this date
|
||||
- Future events: device is scheduled to be decommissioned
|
||||
|
||||
**Use Cases**:
|
||||
- IoT device lifecycle management
|
||||
- Equipment retirement tracking
|
||||
- System sunset planning
|
||||
- Infrastructure decommissioning records
|
||||
|
||||
**Replaces**: decommission_date (per slot_fixes.yaml)
|
||||
|
||||
range: Timestamp
|
||||
slot_uri: prov:invalidatedAtTime
|
||||
|
||||
exact_mappings:
|
||||
- prov:invalidatedAtTime
|
||||
|
||||
close_mappings:
|
||||
- schema:expires
|
||||
- dcterms:date
|
||||
|
||||
annotations:
|
||||
custodian_types: '["*"]'
|
||||
custodian_types_rationale: Generic timestamp applicable to any decommissionable entity.
|
||||
specificity_score: 0.45
|
||||
specificity_rationale: Specific to lifecycle management but applicable across entity types.
|
||||
|
||||
examples:
|
||||
- value:
|
||||
has_or_had_timestamp: "2028-12-31"
|
||||
has_or_had_precision: day
|
||||
description: Planned decommission date for IoT device
|
||||
- value:
|
||||
has_or_had_timestamp: "2024-06-15"
|
||||
has_or_had_precision: day
|
||||
description: Actual decommission date when device was retired
|
||||
|
|
@ -0,0 +1,61 @@
|
|||
# is_or_was_identified_through - Identification event slot
|
||||
#
|
||||
# Created per slot_fixes.yaml migration for: date_identified
|
||||
# Creation date: 2026-01-23
|
||||
# Rule compliance: 39 (RiC-O naming), 50 (ontology mapping), 53 (generic slot reuse)
|
||||
|
||||
id: https://nde.nl/ontology/hc/slot/is_or_was_identified_through
|
||||
name: is_or_was_identified_through_slot
|
||||
title: Is Or Was Identified Through Slot
|
||||
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
dwc: http://rs.tdwg.org/dwc/terms/
|
||||
prov: http://www.w3.org/ns/prov#
|
||||
|
||||
default_prefix: hc
|
||||
|
||||
imports:
|
||||
- linkml:types
|
||||
|
||||
slots:
|
||||
is_or_was_identified_through:
|
||||
slot_uri: hc:isOrWasIdentifiedThrough
|
||||
description: |
|
||||
Identification event that determined the identity of a specimen or object.
|
||||
|
||||
**SEMANTIC PATTERN**:
|
||||
This slot follows the RiC-O temporal predicate pattern (is_or_was_*)
|
||||
to indicate that identification is a historical event that may be
|
||||
superseded by later identifications.
|
||||
|
||||
**REPLACES**:
|
||||
- `date_identified` - Simple date string for identification
|
||||
|
||||
**RANGE**: IdentificationEvent
|
||||
Structured event class capturing who, when, where, and how
|
||||
the identification was made.
|
||||
|
||||
**ONTOLOGY ALIGNMENT**:
|
||||
- **Close**: `dwc:dateIdentified` - Darwin Core identification date
|
||||
- **Close**: `prov:wasGeneratedBy` - PROV-O activity
|
||||
|
||||
range: IdentificationEvent
|
||||
inlined: true
|
||||
|
||||
close_mappings:
|
||||
- dwc:dateIdentified
|
||||
- prov:wasGeneratedBy
|
||||
|
||||
examples:
|
||||
- value:
|
||||
temporal_extent:
|
||||
begin_of_the_begin: "2023-05-15"
|
||||
identified_by:
|
||||
agent_name: "Dr. J. Smith"
|
||||
description: Specimen identification event
|
||||
|
||||
annotations:
|
||||
custodian_types: '["M", "R", "B"]'
|
||||
custodian_types_rationale: "Identification events primarily relevant to museums, research centers, and botanical/zoological collections."
|
||||
|
|
@ -0,0 +1,29 @@
|
|||
id: https://nde.nl/ontology/hc/slot/is_or_was_published
|
||||
name: is_or_was_published_slot
|
||||
title: Is Or Was Published Slot
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
schema: http://schema.org/
|
||||
prov: http://www.w3.org/ns/prov#
|
||||
imports:
|
||||
- linkml:types
|
||||
default_prefix: hc
|
||||
slots:
|
||||
is_or_was_published:
|
||||
description: >-
|
||||
Links an information carrier or creative work to its publication event(s).
|
||||
Follows RiC-O temporal naming convention (Rule 39) to indicate the publication
|
||||
may be historical. The Publication class captures date via temporal_extent,
|
||||
publisher, place of publication, and edition information.
|
||||
range: Publication
|
||||
slot_uri: schema:publication
|
||||
multivalued: true
|
||||
inlined: true
|
||||
inlined_as_list: true
|
||||
exact_mappings:
|
||||
- schema:datePublished
|
||||
annotations:
|
||||
replaces: date_of_publication
|
||||
migration_date: '2026-01-23'
|
||||
migration_rule: Rule 53 - No bespoke slots
|
||||
|
|
@ -22,16 +22,12 @@
|
|||
"capacity_type.yaml",
|
||||
"has_or_had_main_part.yaml",
|
||||
"has_or_had_caption.yaml",
|
||||
"card_image_url.yaml",
|
||||
"card_title.yaml",
|
||||
"card_title_en.yaml",
|
||||
"card_url.yaml",
|
||||
"carrier_type.yaml",
|
||||
"carries_information.yaml",
|
||||
"catalog_raisonne_number.yaml",
|
||||
"catalog_system.yaml",
|
||||
"category_measurement.yaml",
|
||||
"category_status.yaml",
|
||||
"has_or_had_image.yaml",
|
||||
"has_or_had_carrier.yaml",
|
||||
"uses_or_used.yaml",
|
||||
"has_or_had_measurement.yaml",
|
||||
"has_or_had_measurement_type.yaml",
|
||||
|
||||
"catering_price_range.yaml",
|
||||
"catering_type.yaml",
|
||||
"cessation_observed_in.yaml",
|
||||
|
|
@ -189,16 +185,16 @@
|
|||
"date_identified.yaml",
|
||||
"date_of_death.yaml",
|
||||
"date_of_publication.yaml",
|
||||
"date_precision.yaml",
|
||||
"__ARCHIVED_20260123__date_precision.yaml",
|
||||
"__ARCHIVED_20260123__date_retrieved.yaml",
|
||||
"__ARCHIVED_20260123__de.yaml",
|
||||
"dealer_name.yaml",
|
||||
"death_place.yaml",
|
||||
"deceased.yaml",
|
||||
"decommission_date.yaml",
|
||||
"deductibility_conditions.yaml",
|
||||
"deductibility_status.yaml",
|
||||
"deductible_percentage.yaml",
|
||||
"__ARCHIVED_20260123__deceased.yaml",
|
||||
"__ARCHIVED_20260123__decommission_date.yaml",
|
||||
"__ARCHIVED_20260123__deductibility_conditions.yaml",
|
||||
"__ARCHIVED_20260123__deductibility_status.yaml",
|
||||
"__ARCHIVED_20260123__deductible_percentage.yaml",
|
||||
"deduction_percentage.yaml",
|
||||
"default_access_policy.yaml",
|
||||
"default_audio_language.yaml",
|
||||
|
|
@ -207,6 +203,7 @@
|
|||
"defined_by_standard.yaml",
|
||||
"definition.yaml",
|
||||
"degree_name.yaml",
|
||||
"degree_of_certainty.yaml",
|
||||
"deliverable.yaml",
|
||||
"departement_code.yaml",
|
||||
"departement_name.yaml",
|
||||
|
|
@ -1066,6 +1063,7 @@
|
|||
"is_or_was_collection_of.yaml",
|
||||
"is_or_was_created_through.yaml",
|
||||
"is_or_was_derived_from.yaml",
|
||||
"is_or_was_decommissioned_at.yaml",
|
||||
"is_or_was_encompassed_by.yaml",
|
||||
"is_or_was_equivalent_to.yaml",
|
||||
"is_or_was_extracted_using.yaml",
|
||||
|
|
|
|||
|
|
@ -16,3 +16,4 @@ slots:
|
|||
Aggregated statistics about a connection network.
|
||||
Contains summary metrics like total count, heritage-relevant percentage, etc.
|
||||
slot_uri: schema:mainEntity
|
||||
range: string
|
||||
|
|
|
|||
|
|
@ -0,0 +1,45 @@
|
|||
id: https://nde.nl/ontology/hc/slot/occurs_or_occurred_at
|
||||
name: occurs_or_occurred_at_slot
|
||||
title: Occurs Or Occurred At Slot
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
schema: http://schema.org/
|
||||
crm: http://www.cidoc-crm.org/cidoc-crm/
|
||||
prov: http://www.w3.org/ns/prov#
|
||||
imports:
|
||||
- linkml:types
|
||||
default_prefix: hc
|
||||
slots:
|
||||
occurs_or_occurred_at:
|
||||
description: >-
|
||||
The place where an event occurred. Follows RiC-O temporal naming convention
|
||||
(Rule 39) to indicate the event may be historical.
|
||||
|
||||
**Semantic Distinction**:
|
||||
- `occurs_or_occurred_at` is for **events** (death event, birth event, ceremony)
|
||||
- `has_or_had_location` is for **entities** (organization location, object location)
|
||||
|
||||
**Ontological Alignment**:
|
||||
- Primary: `crm:P7_took_place_at` - CIDOC-CRM event location
|
||||
- Close: `prov:atLocation` - PROV-O activity location
|
||||
- Close: `schema:location` - Schema.org generic location
|
||||
|
||||
**Use Cases**:
|
||||
- Death events (DeceasedStatus)
|
||||
- Birth events
|
||||
- Organizational change events
|
||||
- Provenance events
|
||||
range: Place
|
||||
slot_uri: crm:P7_took_place_at
|
||||
multivalued: false
|
||||
inlined: true
|
||||
exact_mappings:
|
||||
- crm:P7_took_place_at
|
||||
close_mappings:
|
||||
- prov:atLocation
|
||||
- schema:location
|
||||
annotations:
|
||||
replaces: death_place
|
||||
migration_date: '2026-01-24'
|
||||
migration_rule: Rule 53 - No bespoke slots
|
||||
|
|
@ -22,3 +22,4 @@ slots:
|
|||
|
||||
'
|
||||
slot_uri: dcterms:references
|
||||
range: uriorcurie
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
|
|
@ -0,0 +1,35 @@
|
|||
id: https://nde.nl/ontology/hc/slot/uses_or_used
|
||||
name: uses_or_used_slot
|
||||
title: Uses or Used Slot
|
||||
description: |
|
||||
Generic temporal slot for systems, tools, software, or methodologies used by an entity.
|
||||
Follows RiC-O temporal naming convention (Rule 39) to indicate relationship may be
|
||||
current or historical.
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
schema: http://schema.org/
|
||||
prov: http://www.w3.org/ns/prov#
|
||||
imports:
|
||||
- linkml:types
|
||||
default_prefix: hc
|
||||
slots:
|
||||
uses_or_used:
|
||||
slot_uri: prov:used
|
||||
description: |
|
||||
A system, tool, software, methodology, or resource that the entity uses or used.
|
||||
This is a generic temporal relationship following RiC-O naming conventions.
|
||||
|
||||
Examples:
|
||||
- Library catalog systems (ALMA, Koha, Sierra)
|
||||
- Collection management systems (Adlib, TMS, CollectiveAccess)
|
||||
- Digital preservation systems (Archivematica, Preservica)
|
||||
- Metadata standards (Dublin Core, MARC21, EAD)
|
||||
range: uriorcurie
|
||||
multivalued: true
|
||||
required: false
|
||||
exact_mappings:
|
||||
- prov:used
|
||||
close_mappings:
|
||||
- schema:usesDevice
|
||||
- schema:softwareApplication
|
||||
|
|
@ -1438,7 +1438,9 @@ class LinkMLSchemaService {
|
|||
* - Classes using slots with this range (computed reverse lookup)
|
||||
*/
|
||||
async getClassExportInfo(className: string): Promise<ClassExportInfo> {
|
||||
console.log(`[getClassExportInfo] Starting for class: ${className}`);
|
||||
await this.initialize();
|
||||
console.log(`[getClassExportInfo] Initialized. classSchemas size: ${this.classSchemas.size}, slotSchemas size: ${this.slotSchemas.size}`);
|
||||
|
||||
const exportInfo: ClassExportInfo = {
|
||||
className,
|
||||
|
|
@ -1451,7 +1453,9 @@ class LinkMLSchemaService {
|
|||
};
|
||||
|
||||
// Scan all classes for references to this class
|
||||
let classesScanned = 0;
|
||||
for (const [otherClassName, schema] of this.classSchemas.entries()) {
|
||||
classesScanned++;
|
||||
if (otherClassName === className) continue; // Skip self
|
||||
|
||||
const classDef = schema.classes?.[otherClassName];
|
||||
|
|
@ -1470,7 +1474,7 @@ class LinkMLSchemaService {
|
|||
// Check slot_usage for references to this class as range
|
||||
if (classDef.slot_usage) {
|
||||
for (const [_slotName, slotUsage] of Object.entries(classDef.slot_usage)) {
|
||||
if (slotUsage.range === className) {
|
||||
if (slotUsage && slotUsage.range === className) {
|
||||
if (!exportInfo.classesReferencingInSlotUsage.includes(otherClassName)) {
|
||||
exportInfo.classesReferencingInSlotUsage.push(otherClassName);
|
||||
}
|
||||
|
|
@ -1516,6 +1520,15 @@ class LinkMLSchemaService {
|
|||
);
|
||||
exportInfo.linkedCollectionTypes.sort();
|
||||
|
||||
console.log(`[getClassExportInfo] Completed for ${className}:`, {
|
||||
subclasses: exportInfo.subclasses.length,
|
||||
mixinUsers: exportInfo.mixinUsers.length,
|
||||
slotsWithThisRange: exportInfo.slotsWithThisRange.length,
|
||||
classesReferencingInSlotUsage: exportInfo.classesReferencingInSlotUsage.length,
|
||||
classesUsingSlotWithThisRange: exportInfo.classesUsingSlotWithThisRange.length,
|
||||
linkedCollectionTypes: exportInfo.linkedCollectionTypes.length,
|
||||
});
|
||||
|
||||
return exportInfo;
|
||||
}
|
||||
|
||||
|
|
@ -1740,7 +1753,7 @@ class LinkMLSchemaService {
|
|||
if (classDef.slot_usage) {
|
||||
debugLog(`[LinkMLSchemaService] Checking ${Object.keys(classDef.slot_usage).length} slot_usage entries for ${className}`);
|
||||
for (const [slotName, slotUsage] of Object.entries(classDef.slot_usage)) {
|
||||
if (slotUsage.range) {
|
||||
if (slotUsage && slotUsage.range) {
|
||||
// Check if range is a class or enum
|
||||
const isClass = this.classSchemas.has(slotUsage.range);
|
||||
const isEnum = this.enumSchemas.has(slotUsage.range);
|
||||
|
|
@ -2018,7 +2031,7 @@ class LinkMLSchemaService {
|
|||
// Slot usage ranges
|
||||
if (classDef.slot_usage) {
|
||||
for (const [_slotName, slotUsage] of Object.entries(classDef.slot_usage)) {
|
||||
if (slotUsage.range && !primitiveTypes.has(slotUsage.range.toLowerCase())) {
|
||||
if (slotUsage && slotUsage.range && !primitiveTypes.has(slotUsage.range.toLowerCase())) {
|
||||
if (!slotRanges.has(slotUsage.range)) {
|
||||
classCount.importCount += 1;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1478,52 +1478,69 @@ const LinkMLViewerPage: React.FC = () => {
|
|||
// Toggle UML diagram section for a class
|
||||
// Loads both exports AND imports data since UML diagram can show both directions
|
||||
const toggleUML = useCallback(async (className: string) => {
|
||||
console.log(`[toggleUML] Called for class: ${className}`);
|
||||
console.log(`[toggleUML] State: isSchemaServiceComplete=${isSchemaServiceComplete}, hasExports=${!!classExports[className]}, hasImports=${!!classImports[className]}`);
|
||||
console.log(`[toggleUML] Loading state: loadingExports=${loadingExports.has(className)}, loadingImports=${loadingImports.has(className)}`);
|
||||
|
||||
setExpandedUML(prev => {
|
||||
const next = new Set(prev);
|
||||
if (next.has(className)) {
|
||||
next.delete(className);
|
||||
console.log(`[toggleUML] Collapsing UML for ${className}`);
|
||||
} else {
|
||||
next.add(className);
|
||||
console.log(`[toggleUML] Expanding UML for ${className}`);
|
||||
}
|
||||
return next;
|
||||
});
|
||||
|
||||
// Load exports data if not already loaded (for "Show Exports" checkbox)
|
||||
if (!classExports[className] && !loadingExports.has(className) && isSchemaServiceComplete) {
|
||||
console.log(`[toggleUML] Starting to load exports for ${className}`);
|
||||
setLoadingExports(prev => new Set(prev).add(className));
|
||||
try {
|
||||
const exportInfo = await linkmlSchemaService.getClassExportInfo(className);
|
||||
console.log(`[toggleUML] Loaded exports for ${className}:`, exportInfo);
|
||||
setClassExports(prev => ({ ...prev, [className]: exportInfo }));
|
||||
} catch (error) {
|
||||
console.error(`Error loading export info for ${className}:`, error);
|
||||
console.error(`[toggleUML] Error loading export info for ${className}:`, error);
|
||||
} finally {
|
||||
setLoadingExports(prev => {
|
||||
const next = new Set(prev);
|
||||
next.delete(className);
|
||||
return next;
|
||||
});
|
||||
console.log(`[toggleUML] Finished loading exports for ${className}`);
|
||||
}
|
||||
} else {
|
||||
console.log(`[toggleUML] Skipping exports load: hasExports=${!!classExports[className]}, isLoading=${loadingExports.has(className)}, serviceComplete=${isSchemaServiceComplete}`);
|
||||
}
|
||||
|
||||
// Load imports data if not already loaded (for "Show Imports" checkbox)
|
||||
if (!classImports[className] && !loadingImports.has(className) && isSchemaServiceComplete) {
|
||||
console.log(`[toggleUML] Starting to load imports for ${className}`);
|
||||
setLoadingImports(prev => new Set(prev).add(className));
|
||||
try {
|
||||
const importInfo = await linkmlSchemaService.getClassImportInfo(className);
|
||||
console.log(`[toggleUML] Loaded imports for ${className}:`, importInfo);
|
||||
setClassImports(prev => ({ ...prev, [className]: importInfo }));
|
||||
|
||||
// Also load primitive slots for UML attributes
|
||||
const primitiveSlots = await linkmlSchemaService.getClassPrimitiveSlots(className);
|
||||
console.log(`[toggleUML] Loaded primitive slots for ${className}:`, primitiveSlots);
|
||||
setClassPrimitiveSlots(prev => ({ ...prev, [className]: primitiveSlots }));
|
||||
} catch (error) {
|
||||
console.error(`Error loading import info for ${className}:`, error);
|
||||
console.error(`[toggleUML] Error loading import info for ${className}:`, error);
|
||||
} finally {
|
||||
setLoadingImports(prev => {
|
||||
const next = new Set(prev);
|
||||
next.delete(className);
|
||||
return next;
|
||||
});
|
||||
console.log(`[toggleUML] Finished loading imports for ${className}`);
|
||||
}
|
||||
} else {
|
||||
console.log(`[toggleUML] Skipping imports load: hasImports=${!!classImports[className]}, isLoading=${loadingImports.has(className)}, serviceComplete=${isSchemaServiceComplete}`);
|
||||
}
|
||||
}, [classExports, classImports, loadingExports, loadingImports, isSchemaServiceComplete]);
|
||||
|
||||
|
|
|
|||
|
|
@ -1,12 +1,12 @@
|
|||
{
|
||||
"generated": "2026-01-24T12:14:38.489Z",
|
||||
"generated": "2026-01-24T16:41:07.363Z",
|
||||
"schemaRoot": "/schemas/20251121/linkml",
|
||||
"totalFiles": 3035,
|
||||
"totalFiles": 3044,
|
||||
"categoryCounts": {
|
||||
"main": 4,
|
||||
"class": 982,
|
||||
"enum": 155,
|
||||
"slot": 1890,
|
||||
"class": 1004,
|
||||
"enum": 154,
|
||||
"slot": 1878,
|
||||
"module": 4
|
||||
},
|
||||
"categories": [
|
||||
|
|
@ -325,6 +325,11 @@
|
|||
"path": "modules/classes/ArtArchiveRecordSetTypes.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "ArtDealer",
|
||||
"path": "modules/classes/ArtDealer.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "ArticlesOfAssociation",
|
||||
"path": "modules/classes/ArticlesOfAssociation.yaml",
|
||||
|
|
@ -610,6 +615,21 @@
|
|||
"path": "modules/classes/CareerEntry.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "Carrier",
|
||||
"path": "modules/classes/Carrier.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "CarrierType",
|
||||
"path": "modules/classes/CarrierType.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "CarrierTypes",
|
||||
"path": "modules/classes/CarrierTypes.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "CastCollection",
|
||||
"path": "modules/classes/CastCollection.yaml",
|
||||
|
|
@ -620,11 +640,31 @@
|
|||
"path": "modules/classes/CatalogingStandard.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "CatalogSystem",
|
||||
"path": "modules/classes/CatalogSystem.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "CatalogSystemType",
|
||||
"path": "modules/classes/CatalogSystemType.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "CatalogSystemTypes",
|
||||
"path": "modules/classes/CatalogSystemTypes.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "Category",
|
||||
"path": "modules/classes/Category.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "CategoryStatus",
|
||||
"path": "modules/classes/CategoryStatus.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "CateringPlace",
|
||||
"path": "modules/classes/CateringPlace.yaml",
|
||||
|
|
@ -1110,6 +1150,16 @@
|
|||
"path": "modules/classes/Content.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "ContentType",
|
||||
"path": "modules/classes/ContentType.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "ContentTypes",
|
||||
"path": "modules/classes/ContentTypes.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "ContributingAgency",
|
||||
"path": "modules/classes/ContributingAgency.yaml",
|
||||
|
|
@ -1155,6 +1205,11 @@
|
|||
"path": "modules/classes/CourtRecords.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "CreationEvent",
|
||||
"path": "modules/classes/CreationEvent.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "CulturalInstitution",
|
||||
"path": "modules/classes/CulturalInstitution.yaml",
|
||||
|
|
@ -1330,6 +1385,11 @@
|
|||
"path": "modules/classes/DataTierSummary.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "DatePrecision",
|
||||
"path": "modules/classes/DatePrecision.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "DeceasedStatus",
|
||||
"path": "modules/classes/DeceasedStatus.yaml",
|
||||
|
|
@ -2075,16 +2135,36 @@
|
|||
"path": "modules/classes/IconographicArchivesRecordSetTypes.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "IdentificationEvent",
|
||||
"path": "modules/classes/IdentificationEvent.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "Identifier",
|
||||
"path": "modules/classes/Identifier.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "IdentifierType",
|
||||
"path": "modules/classes/IdentifierType.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "IdentifierTypes",
|
||||
"path": "modules/classes/IdentifierTypes.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "IIPImageServer",
|
||||
"path": "modules/classes/IIPImageServer.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "Image",
|
||||
"path": "modules/classes/Image.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "Index",
|
||||
"path": "modules/classes/Index.yaml",
|
||||
|
|
@ -2470,6 +2550,21 @@
|
|||
"path": "modules/classes/MaterialTypes.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "Measurement",
|
||||
"path": "modules/classes/Measurement.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "MeasurementType",
|
||||
"path": "modules/classes/MeasurementType.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "MeasurementTypes",
|
||||
"path": "modules/classes/MeasurementTypes.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "MeasurementUnit",
|
||||
"path": "modules/classes/MeasurementUnit.yaml",
|
||||
|
|
@ -3310,6 +3405,11 @@
|
|||
"path": "modules/classes/PublicArchivesInFranceRecordSetTypes.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "Publication",
|
||||
"path": "modules/classes/Publication.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "PublicationEntry",
|
||||
"path": "modules/classes/PublicationEntry.yaml",
|
||||
|
|
@ -4065,6 +4165,16 @@
|
|||
"path": "modules/classes/TaxDeductibility.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "TaxDeductibilityType",
|
||||
"path": "modules/classes/TaxDeductibilityType.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "TaxDeductibilityTypes",
|
||||
"path": "modules/classes/TaxDeductibilityTypes.yaml",
|
||||
"category": "class"
|
||||
},
|
||||
{
|
||||
"name": "Taxon",
|
||||
"path": "modules/classes/Taxon.yaml",
|
||||
|
|
@ -5126,11 +5236,6 @@
|
|||
"path": "modules/enums/DatePrecisionEnum.yaml",
|
||||
"category": "enum"
|
||||
},
|
||||
{
|
||||
"name": "DeductibilityStatusEnum",
|
||||
"path": "modules/enums/DeductibilityStatusEnum.yaml",
|
||||
"category": "enum"
|
||||
},
|
||||
{
|
||||
"name": "DetectionLevelEnum",
|
||||
"path": "modules/enums/DetectionLevelEnum.yaml",
|
||||
|
|
@ -5797,56 +5902,6 @@
|
|||
"path": "modules/slots/begin_of_the_end.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "card_image_url",
|
||||
"path": "modules/slots/card_image_url.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "card_title",
|
||||
"path": "modules/slots/card_title.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "card_title_en",
|
||||
"path": "modules/slots/card_title_en.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "card_url",
|
||||
"path": "modules/slots/card_url.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "carrier_type",
|
||||
"path": "modules/slots/carrier_type.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "carries_information",
|
||||
"path": "modules/slots/carries_information.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "catalog_raisonne_number",
|
||||
"path": "modules/slots/catalog_raisonne_number.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "catalog_system",
|
||||
"path": "modules/slots/catalog_system.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "category_measurement",
|
||||
"path": "modules/slots/category_measurement.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "category_status",
|
||||
"path": "modules/slots/category_status.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "catering_price_range",
|
||||
"path": "modules/slots/catering_price_range.yaml",
|
||||
|
|
@ -6527,66 +6582,6 @@
|
|||
"path": "modules/slots/date.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "date_created",
|
||||
"path": "modules/slots/date_created.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "date_identified",
|
||||
"path": "modules/slots/date_identified.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "date_of_death",
|
||||
"path": "modules/slots/date_of_death.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "date_of_publication",
|
||||
"path": "modules/slots/date_of_publication.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "date_precision",
|
||||
"path": "modules/slots/date_precision.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "dealer_name",
|
||||
"path": "modules/slots/dealer_name.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "death_place",
|
||||
"path": "modules/slots/death_place.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "deceased",
|
||||
"path": "modules/slots/deceased.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "decommission_date",
|
||||
"path": "modules/slots/decommission_date.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "deductibility_conditions",
|
||||
"path": "modules/slots/deductibility_conditions.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "deductibility_status",
|
||||
"path": "modules/slots/deductibility_status.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "deductible_percentage",
|
||||
"path": "modules/slots/deductible_percentage.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "deduction_percentage",
|
||||
"path": "modules/slots/deduction_percentage.yaml",
|
||||
|
|
@ -6627,6 +6622,11 @@
|
|||
"path": "modules/slots/degree_name.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "degree_of_certainty",
|
||||
"path": "modules/slots/degree_of_certainty.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "deliverable",
|
||||
"path": "modules/slots/deliverable.yaml",
|
||||
|
|
@ -9037,6 +9037,11 @@
|
|||
"path": "modules/slots/has_or_had_caption.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "has_or_had_carrier",
|
||||
"path": "modules/slots/has_or_had_carrier.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "has_or_had_category",
|
||||
"path": "modules/slots/has_or_had_category.yaml",
|
||||
|
|
@ -9387,6 +9392,11 @@
|
|||
"path": "modules/slots/has_or_had_identify.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "has_or_had_image",
|
||||
"path": "modules/slots/has_or_had_image.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "has_or_had_implementing_organisation",
|
||||
"path": "modules/slots/has_or_had_implementing_organisation.yaml",
|
||||
|
|
@ -9482,6 +9492,16 @@
|
|||
"path": "modules/slots/has_or_had_manages_collection.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "has_or_had_measurement",
|
||||
"path": "modules/slots/has_or_had_measurement.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "has_or_had_measurement_type",
|
||||
"path": "modules/slots/has_or_had_measurement_type.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "has_or_had_measurement_unit",
|
||||
"path": "modules/slots/has_or_had_measurement_unit.yaml",
|
||||
|
|
@ -10952,6 +10972,11 @@
|
|||
"path": "modules/slots/is_or_was_created_through.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "is_or_was_decommissioned_at",
|
||||
"path": "modules/slots/is_or_was_decommissioned_at.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "is_or_was_derived_from",
|
||||
"path": "modules/slots/is_or_was_derived_from.yaml",
|
||||
|
|
@ -10982,6 +11007,11 @@
|
|||
"path": "modules/slots/is_or_was_generated_by.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "is_or_was_identified_through",
|
||||
"path": "modules/slots/is_or_was_identified_through.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "is_or_was_included_in",
|
||||
"path": "modules/slots/is_or_was_included_in.yaml",
|
||||
|
|
@ -11047,6 +11077,11 @@
|
|||
"path": "modules/slots/is_or_was_platform_of.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "is_or_was_published",
|
||||
"path": "modules/slots/is_or_was_published.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "is_or_was_published_at",
|
||||
"path": "modules/slots/is_or_was_published_at.yaml",
|
||||
|
|
@ -12462,6 +12497,11 @@
|
|||
"path": "modules/slots/occupation.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "occurs_or_occurred_at",
|
||||
"path": "modules/slots/occurs_or_occurred_at.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "oclc_number",
|
||||
"path": "modules/slots/oclc_number.yaml",
|
||||
|
|
@ -15127,6 +15167,11 @@
|
|||
"path": "modules/slots/use_cases.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "uses_or_used",
|
||||
"path": "modules/slots/uses_or_used.yaml",
|
||||
"category": "slot"
|
||||
},
|
||||
{
|
||||
"name": "uses_or_used_technique",
|
||||
"path": "modules/slots/uses_or_used_technique.yaml",
|
||||
|
|
|
|||
111
schemas/20251121/linkml/modules/classes/ArtDealer.yaml
Normal file
111
schemas/20251121/linkml/modules/classes/ArtDealer.yaml
Normal file
|
|
@ -0,0 +1,111 @@
|
|||
# ArtDealer class
|
||||
# Created per slot_fixes.yaml revision for: dealer_name
|
||||
#
|
||||
# MIGRATION NOTE (2026-01-24): Created as part of dealer_name migration per Rule 53.
|
||||
# Provides structured representation of art dealers in provenance events.
|
||||
|
||||
id: https://nde.nl/ontology/hc/class/ArtDealer
|
||||
name: art_dealer_class
|
||||
title: Art Dealer Class
|
||||
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
schema: http://schema.org/
|
||||
foaf: http://xmlns.com/foaf/0.1/
|
||||
crm: http://www.cidoc-crm.org/cidoc-crm/
|
||||
|
||||
imports:
|
||||
- linkml:types
|
||||
- ../slots/has_or_had_name
|
||||
- ./Name
|
||||
|
||||
default_prefix: hc
|
||||
|
||||
classes:
|
||||
ArtDealer:
|
||||
class_uri: crm:E39_Actor
|
||||
description: |
|
||||
An art dealer or gallery involved in the sale or transfer of art objects.
|
||||
|
||||
**MIGRATION NOTE** (2026-01-24):
|
||||
Created per slot_fixes.yaml migration from `dealer_name` string
|
||||
to structured ArtDealer class per Rule 53.
|
||||
|
||||
**Purpose**:
|
||||
Provides structured representation for art dealers including:
|
||||
- The dealer's name (via has_or_had_name)
|
||||
- Future extensibility for dealer location, active dates, etc.
|
||||
|
||||
**Ontological Alignment**:
|
||||
- **Primary** (`class_uri`): `crm:E39_Actor` - CIDOC-CRM Actor class
|
||||
- **Close**: `foaf:Agent`, `schema:Organization` - Agent/organization classes
|
||||
|
||||
**Use Cases**:
|
||||
- Provenance events involving art sales (DEALER_SALE type)
|
||||
- Tracking art market participants in heritage provenance research
|
||||
- Linking objects to dealers who handled them
|
||||
|
||||
**Pattern**:
|
||||
```yaml
|
||||
is_or_was_associated_with:
|
||||
- has_or_had_name:
|
||||
has_or_had_label: "Duveen Brothers"
|
||||
```
|
||||
|
||||
slots:
|
||||
- has_or_had_name
|
||||
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
description: The name of the art dealer or gallery.
|
||||
range: Name
|
||||
inlined: true
|
||||
required: false
|
||||
examples:
|
||||
- value:
|
||||
has_or_had_label: "Duveen Brothers"
|
||||
description: Famous art dealer firm
|
||||
|
||||
exact_mappings:
|
||||
- crm:E39_Actor
|
||||
close_mappings:
|
||||
- foaf:Agent
|
||||
- schema:Organization
|
||||
|
||||
annotations:
|
||||
custodian_types: '["M", "G"]'
|
||||
custodian_types_rationale: Art dealers primarily relevant to museums and galleries with provenance research.
|
||||
custodian_types_primary: M
|
||||
specificity_score: 0.75
|
||||
specificity_rationale: >-
|
||||
Highly specific to art market provenance research - primarily used in
|
||||
museum and gallery contexts for tracking object ownership history.
|
||||
template_specificity:
|
||||
collection_discovery: 0.80
|
||||
museum_search: 0.85
|
||||
general_heritage: 0.60
|
||||
migration_info:
|
||||
source_slot: dealer_name
|
||||
migration_date: "2026-01-24"
|
||||
rule: "Rule 53"
|
||||
|
||||
comments:
|
||||
- "Structured art dealer representation for provenance events"
|
||||
- "Replaces simple string-valued dealer_name slot"
|
||||
- "Extensible for dealer location, active dates, gallery affiliation"
|
||||
- "Created 2026-01-24 from dealer_name migration (Rule 53)"
|
||||
|
||||
examples:
|
||||
- value:
|
||||
has_or_had_name:
|
||||
has_or_had_label: "Duveen Brothers"
|
||||
description: Famous art dealer firm (early 20th century)
|
||||
- value:
|
||||
has_or_had_name:
|
||||
has_or_had_label: "Paul Cassirer"
|
||||
description: German art dealer (Impressionism specialist)
|
||||
- value:
|
||||
has_or_had_name:
|
||||
has_or_had_label: "Jacques Goudstikker"
|
||||
description: Dutch art dealer (notable Nazi-looted art case)
|
||||
89
schemas/20251121/linkml/modules/classes/CatalogSystem.yaml
Normal file
89
schemas/20251121/linkml/modules/classes/CatalogSystem.yaml
Normal file
|
|
@ -0,0 +1,89 @@
|
|||
id: https://nde.nl/ontology/hc/class/CatalogSystem
|
||||
name: CatalogSystem
|
||||
title: Catalog System
|
||||
description: |
|
||||
Represents an integrated library system (ILS), library management system (LMS),
|
||||
or catalog system used by heritage institutions for managing collections.
|
||||
|
||||
This class captures metadata about catalog/management systems including:
|
||||
- System name and vendor
|
||||
- System type (ILS, LMS, DAM, CMS, etc.)
|
||||
- Temporal usage (when adopted, when deprecated)
|
||||
|
||||
Created per slot_fixes.yaml revision for catalog_system migration (Rule 53/56).
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
schema: http://schema.org/
|
||||
prov: http://www.w3.org/ns/prov#
|
||||
imports:
|
||||
- linkml:types
|
||||
- ../slots/has_or_had_name
|
||||
- ../slots/has_or_had_type
|
||||
- ../slots/has_or_had_description
|
||||
- ../slots/has_or_had_url
|
||||
- ./CatalogSystemType
|
||||
default_prefix: hc
|
||||
classes:
|
||||
CatalogSystem:
|
||||
class_uri: schema:SoftwareApplication
|
||||
description: |
|
||||
An integrated library system, catalog system, or collection management system
|
||||
used by a heritage institution.
|
||||
|
||||
Common systems include:
|
||||
- ALMA (Ex Libris) - Cloud-based library services platform
|
||||
- Koha - Open-source ILS
|
||||
- Sierra (Innovative Interfaces) - ILS for academic/public libraries
|
||||
- Aleph (Ex Libris) - Legacy ILS
|
||||
- FOLIO - Open-source library platform
|
||||
- OCLC WorldShare - Cloud-based library management
|
||||
- Adlib/Axiell Collections - Museum collection management
|
||||
- The Museum System (TMS) - Art museum collections
|
||||
- CollectiveAccess - Open-source collections management
|
||||
slots:
|
||||
- has_or_had_name
|
||||
- has_or_had_type
|
||||
- has_or_had_description
|
||||
- has_or_had_url
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
description: The name of the catalog or collection management system.
|
||||
required: true
|
||||
examples:
|
||||
- value: ALMA
|
||||
- value: Koha
|
||||
- value: Sierra
|
||||
- value: Adlib
|
||||
has_or_had_type:
|
||||
description: The type of catalog system (ILS, CMS, DAM, etc.).
|
||||
range: CatalogSystemType
|
||||
inlined: true
|
||||
has_or_had_url:
|
||||
description: URL to the system vendor or documentation.
|
||||
exact_mappings:
|
||||
- schema:SoftwareApplication
|
||||
close_mappings:
|
||||
- prov:SoftwareAgent
|
||||
examples:
|
||||
- value:
|
||||
has_or_had_name: ALMA
|
||||
has_or_had_type:
|
||||
has_or_had_name: Integrated Library System
|
||||
has_or_had_description: Ex Libris ALMA cloud-based library services platform
|
||||
has_or_had_url: https://exlibrisgroup.com/products/alma-library-services-platform/
|
||||
description: Ex Libris ALMA library platform
|
||||
- value:
|
||||
has_or_had_name: Koha
|
||||
has_or_had_type:
|
||||
has_or_had_name: Integrated Library System
|
||||
has_or_had_description: Open-source integrated library system
|
||||
has_or_had_url: https://koha-community.org/
|
||||
description: Koha open-source ILS
|
||||
- value:
|
||||
has_or_had_name: Adlib
|
||||
has_or_had_type:
|
||||
has_or_had_name: Collection Management System
|
||||
has_or_had_description: Axiell Adlib museum collection management system
|
||||
has_or_had_url: https://www.axiell.com/solutions/product/axiell-collections/
|
||||
description: Adlib/Axiell Collections for museums
|
||||
|
|
@ -0,0 +1,49 @@
|
|||
id: https://nde.nl/ontology/hc/class/CatalogSystemType
|
||||
name: CatalogSystemType
|
||||
title: Catalog System Type (Abstract Base)
|
||||
description: |
|
||||
Abstract base class for catalog and collection management system types.
|
||||
|
||||
This class defines the taxonomy of system types used by heritage institutions
|
||||
for managing their collections and catalogs. Concrete subclasses are defined
|
||||
in CatalogSystemTypes.yaml following the Type/Types naming convention (Rule 0b).
|
||||
|
||||
Created per slot_fixes.yaml revision for catalog_system migration (Rule 53/56).
|
||||
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_name
|
||||
- ../slots/has_or_had_description
|
||||
default_prefix: hc
|
||||
classes:
|
||||
CatalogSystemType:
|
||||
class_uri: skos:Concept
|
||||
abstract: true
|
||||
description: |
|
||||
Abstract base class for types of catalog and collection management systems.
|
||||
|
||||
System type categories include:
|
||||
- Integrated Library Systems (ILS)
|
||||
- Library Management Systems (LMS)
|
||||
- Collection Management Systems (CMS)
|
||||
- Digital Asset Management (DAM)
|
||||
- Archives Management Systems
|
||||
- Discovery Platforms
|
||||
- Repository Systems
|
||||
slots:
|
||||
- has_or_had_name
|
||||
- has_or_had_description
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
description: The name of this catalog system type category.
|
||||
required: true
|
||||
has_or_had_description:
|
||||
description: Description of this catalog system type and its typical use cases.
|
||||
exact_mappings:
|
||||
- skos:Concept
|
||||
close_mappings:
|
||||
- schema:SoftwareApplicationCategory
|
||||
210
schemas/20251121/linkml/modules/classes/CatalogSystemTypes.yaml
Normal file
210
schemas/20251121/linkml/modules/classes/CatalogSystemTypes.yaml
Normal file
|
|
@ -0,0 +1,210 @@
|
|||
id: https://nde.nl/ontology/hc/class/CatalogSystemTypes
|
||||
name: CatalogSystemTypes
|
||||
title: Catalog System Types (Concrete Subclasses)
|
||||
description: |
|
||||
Concrete subclasses of CatalogSystemType representing specific categories of
|
||||
catalog and collection management systems used by heritage institutions.
|
||||
|
||||
Follows the Type/Types naming convention (Rule 0b):
|
||||
- CatalogSystemType.yaml: Abstract base class
|
||||
- CatalogSystemTypes.yaml: This file with concrete subclasses
|
||||
|
||||
Created per slot_fixes.yaml revision for catalog_system migration (Rule 53/56).
|
||||
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
|
||||
- ./CatalogSystemType
|
||||
default_prefix: hc
|
||||
classes:
|
||||
# === Library Systems ===
|
||||
IntegratedLibrarySystemType:
|
||||
is_a: CatalogSystemType
|
||||
class_uri: hc:IntegratedLibrarySystemType
|
||||
description: |
|
||||
Integrated Library System (ILS) - comprehensive software for library operations
|
||||
including cataloging, circulation, acquisitions, and patron management.
|
||||
|
||||
Examples: ALMA, Koha, Sierra, Aleph, Voyager, Symphony, Millennium
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Integrated Library System
|
||||
aliases:
|
||||
- ILS
|
||||
- Library Automation System
|
||||
|
||||
LibraryServicesPlattformType:
|
||||
is_a: CatalogSystemType
|
||||
class_uri: hc:LibraryServicesPlatformType
|
||||
description: |
|
||||
Library Services Platform (LSP) - next-generation cloud-based library management
|
||||
combining ILS functionality with electronic resource management.
|
||||
|
||||
Examples: ALMA, FOLIO, OCLC WorldShare, Sierra DNA
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Library Services Platform
|
||||
aliases:
|
||||
- LSP
|
||||
- Next-Generation ILS
|
||||
|
||||
DiscoverySystemType:
|
||||
is_a: CatalogSystemType
|
||||
class_uri: hc:DiscoverySystemType
|
||||
description: |
|
||||
Discovery system or discovery layer providing unified search across
|
||||
library catalogs, databases, and digital collections.
|
||||
|
||||
Examples: Primo, Summon, EDS, VuFind, Blacklight
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Discovery System
|
||||
aliases:
|
||||
- Discovery Layer
|
||||
- Discovery Platform
|
||||
- OPAC
|
||||
|
||||
# === Museum/Collection Systems ===
|
||||
CollectionManagementSystemType:
|
||||
is_a: CatalogSystemType
|
||||
class_uri: hc:CollectionManagementSystemType
|
||||
description: |
|
||||
Collection Management System (CMS) for museums and cultural heritage
|
||||
institutions to manage object records, provenance, exhibitions, and loans.
|
||||
|
||||
Examples: Adlib/Axiell Collections, TMS, CollectiveAccess, PastPerfect, EMu
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Collection Management System
|
||||
aliases:
|
||||
- CMS
|
||||
- Collections Database
|
||||
- Museum Management System
|
||||
|
||||
DigitalAssetManagementType:
|
||||
is_a: CatalogSystemType
|
||||
class_uri: hc:DigitalAssetManagementType
|
||||
description: |
|
||||
Digital Asset Management (DAM) system for organizing, storing, and
|
||||
retrieving digital media files (images, video, audio, documents).
|
||||
|
||||
Examples: ResourceSpace, NetX, Bynder, Canto, Portfolio
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Digital Asset Management
|
||||
aliases:
|
||||
- DAM
|
||||
- Media Asset Management
|
||||
- Digital Media Library
|
||||
|
||||
# === Archive Systems ===
|
||||
ArchivesManagementSystemType:
|
||||
is_a: CatalogSystemType
|
||||
class_uri: hc:ArchivesManagementSystemType
|
||||
description: |
|
||||
Archives Management System for managing archival collections following
|
||||
archival standards (ISAD(G), EAD, DACS).
|
||||
|
||||
Examples: ArchivesSpace, Atom (Access to Memory), Archivematica, CALM
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Archives Management System
|
||||
aliases:
|
||||
- AMS
|
||||
- Archival Management System
|
||||
|
||||
DigitalPreservationSystemType:
|
||||
is_a: CatalogSystemType
|
||||
class_uri: hc:DigitalPreservationSystemType
|
||||
description: |
|
||||
Digital Preservation System for long-term preservation of digital objects
|
||||
following standards like OAIS (Open Archival Information System).
|
||||
|
||||
Examples: Archivematica, Preservica, Rosetta, DSpace (preservation mode)
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Digital Preservation System
|
||||
aliases:
|
||||
- Preservation Repository
|
||||
- OAIS Repository
|
||||
|
||||
# === Repository Systems ===
|
||||
InstitutionalRepositoryType:
|
||||
is_a: CatalogSystemType
|
||||
class_uri: hc:InstitutionalRepositoryType
|
||||
description: |
|
||||
Institutional Repository for managing and providing access to scholarly
|
||||
outputs, research data, and institutional publications.
|
||||
|
||||
Examples: DSpace, EPrints, Fedora, Islandora, Samvera
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Institutional Repository
|
||||
aliases:
|
||||
- IR
|
||||
- Digital Repository
|
||||
- Research Repository
|
||||
|
||||
ContentManagementSystemType:
|
||||
is_a: CatalogSystemType
|
||||
class_uri: hc:ContentManagementSystemType
|
||||
description: |
|
||||
Content Management System for managing website content and digital
|
||||
publishing, often integrated with collection systems.
|
||||
|
||||
Examples: Drupal, WordPress, Omeka, CollectiveAccess
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Content Management System
|
||||
aliases:
|
||||
- CMS
|
||||
- Web CMS
|
||||
|
||||
# === Specialized Systems ===
|
||||
LinkedDataPlatformType:
|
||||
is_a: CatalogSystemType
|
||||
class_uri: hc:LinkedDataPlatformType
|
||||
description: |
|
||||
Linked Data Platform for publishing and managing linked open data
|
||||
about collections, using semantic web technologies.
|
||||
|
||||
Examples: Wikibase, ResearchSpace, Metaphacts, Neptune
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Linked Data Platform
|
||||
aliases:
|
||||
- Knowledge Graph Platform
|
||||
- Semantic Platform
|
||||
|
||||
ExhibitionManagementSystemType:
|
||||
is_a: CatalogSystemType
|
||||
class_uri: hc:ExhibitionManagementSystemType
|
||||
description: |
|
||||
Exhibition Management System for planning, organizing, and tracking
|
||||
museum exhibitions, loans, and installation.
|
||||
|
||||
Examples: Gallery Systems, ExhibitDay, MuseumPlus
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Exhibition Management System
|
||||
aliases:
|
||||
- EMS
|
||||
- Gallery Management
|
||||
|
||||
RegistrationSystemType:
|
||||
is_a: CatalogSystemType
|
||||
class_uri: hc:RegistrationSystemType
|
||||
description: |
|
||||
Registration System for tracking object movement, conditions,
|
||||
and custody within a museum or archive.
|
||||
|
||||
Examples: TMS Registration module, CollectionSpace
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Registration System
|
||||
aliases:
|
||||
- Object Tracking System
|
||||
- Movement Control
|
||||
64
schemas/20251121/linkml/modules/classes/CategoryStatus.yaml
Normal file
64
schemas/20251121/linkml/modules/classes/CategoryStatus.yaml
Normal file
|
|
@ -0,0 +1,64 @@
|
|||
id: https://nde.nl/ontology/hc/class/CategoryStatus
|
||||
name: CategoryStatus
|
||||
title: Category Status
|
||||
description: |
|
||||
Represents the status of a storage condition category assessment.
|
||||
|
||||
This class wraps the StorageConditionStatusEnum with additional metadata
|
||||
capabilities such as notes, timestamps, and assessor information.
|
||||
|
||||
Created per slot_fixes.yaml revision for category_status migration (Rule 53/56).
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
skos: http://www.w3.org/2004/02/skos/core#
|
||||
crm: http://www.cidoc-crm.org/cidoc-crm/
|
||||
imports:
|
||||
- linkml:types
|
||||
- ../enums/StorageConditionStatusEnum
|
||||
- ../slots/has_or_had_name
|
||||
- ../slots/has_or_had_description
|
||||
- ../slots/has_or_had_value
|
||||
default_prefix: hc
|
||||
classes:
|
||||
CategoryStatus:
|
||||
class_uri: crm:E55_Type
|
||||
description: |
|
||||
The status classification for a storage condition category assessment.
|
||||
|
||||
Status values follow the StorageConditionStatusEnum:
|
||||
- EXCELLENT: Optimal conditions, no concerns
|
||||
- GOOD: Acceptable conditions, minor issues
|
||||
- FAIR: Some concerns requiring attention
|
||||
- POOR: Significant issues requiring remediation
|
||||
- CRITICAL: Immediate action required
|
||||
- NOT_ASSESSED: Category not evaluated
|
||||
- NOT_APPLICABLE: Category does not apply to this storage
|
||||
slots:
|
||||
- has_or_had_name
|
||||
- has_or_had_description
|
||||
- has_or_had_value
|
||||
slot_usage:
|
||||
has_or_had_value:
|
||||
description: The status value from StorageConditionStatusEnum.
|
||||
range: StorageConditionStatusEnum
|
||||
required: true
|
||||
has_or_had_name:
|
||||
description: Human-readable name for this status (e.g., "Good", "Poor").
|
||||
has_or_had_description:
|
||||
description: Additional context or notes about this status assessment.
|
||||
exact_mappings:
|
||||
- crm:E55_Type
|
||||
close_mappings:
|
||||
- skos:Concept
|
||||
examples:
|
||||
- value:
|
||||
has_or_had_value: GOOD
|
||||
has_or_had_name: Good
|
||||
has_or_had_description: Acceptable temperature control with minor fluctuations
|
||||
description: Good status with explanatory note
|
||||
- value:
|
||||
has_or_had_value: CRITICAL
|
||||
has_or_had_name: Critical
|
||||
has_or_had_description: Immediate pest treatment required
|
||||
description: Critical status requiring action
|
||||
|
|
@ -15,7 +15,9 @@ imports:
|
|||
- ./Label
|
||||
- ./Description
|
||||
# Domain-specific slots (kept)
|
||||
- ../slots/catering_type
|
||||
# - ../slots/catering_type # ARCHIVED 2026-01-24: migrated to has_or_had_type + CateringType per Rule 53/56
|
||||
- ./CateringType
|
||||
- ./CateringTypes
|
||||
- ../slots/heritage_type_classification
|
||||
- ../slots/cuisine_type
|
||||
- ../slots/seating_capacity
|
||||
|
|
@ -27,7 +29,10 @@ imports:
|
|||
- ../slots/reservation_required
|
||||
- ../slots/has_michelin_star
|
||||
- ../slots/michelin_star
|
||||
- ../slots/catering_price_range
|
||||
# - ../slots/catering_price_range # ARCHIVED 2026-01-24: migrated to has_or_had_price + Price per Rule 53/56
|
||||
- ../slots/has_or_had_price
|
||||
- ./Price
|
||||
- ./PriceRange
|
||||
- ../slots/has_or_had_accessibility_feature
|
||||
- ../slots/operator
|
||||
# MIGRATED 2026-01-22: founded_year → is_or_was_founded_through + FoundingEvent (Rule 53)
|
||||
|
|
@ -91,7 +96,7 @@ classes:
|
|||
- has_or_had_description # was: has_or_had_description - migrated per Rule 55 (2026-01-16) # was: catering_place_description - migrated per Rule 53
|
||||
- has_or_had_identifier # was: catering_place_id - migrated per Rule 53
|
||||
- has_or_had_label # was: catering_place_name - migrated per Rule 53
|
||||
- catering_price_range
|
||||
- has_or_had_price # was: catering_price_range - migrated per Rule 53/56 (2026-01-24)
|
||||
- catering_type
|
||||
- cuisine_type
|
||||
- is_or_was_founded_through # was: founded_year - migrated per Rule 53 (2026-01-22)
|
||||
|
|
@ -216,15 +221,29 @@ classes:
|
|||
examples:
|
||||
- value: 1
|
||||
description: One Michelin star
|
||||
catering_price_range:
|
||||
range: string
|
||||
has_or_had_price: # was: catering_price_range - migrated per Rule 53/56 (2026-01-24)
|
||||
description: |
|
||||
MIGRATED from catering_price_range per Rule 53/56 (2026-01-24).
|
||||
Price range or pricing information for the catering place.
|
||||
range: Price
|
||||
inlined: true
|
||||
examples:
|
||||
- value: €€€€
|
||||
description: Fine dining price
|
||||
- value: €€
|
||||
description: Moderate
|
||||
- value: €
|
||||
description: Budget-friendly
|
||||
- value:
|
||||
has_or_had_value: "€€€€"
|
||||
has_or_had_type:
|
||||
has_or_had_name: Luxury
|
||||
has_or_had_description: Over €60 per person
|
||||
description: Fine dining price range
|
||||
- value:
|
||||
has_or_had_value: "€€"
|
||||
has_or_had_type:
|
||||
has_or_had_name: Moderate
|
||||
description: Moderate price range
|
||||
- value:
|
||||
has_or_had_value: "€"
|
||||
has_or_had_type:
|
||||
has_or_had_name: Budget
|
||||
description: Budget-friendly price range
|
||||
has_or_had_accessibility_feature:
|
||||
range: string
|
||||
multivalued: true
|
||||
|
|
@ -288,7 +307,10 @@ classes:
|
|||
reservation_required: true
|
||||
has_michelin_star: true
|
||||
michelin_star: 1
|
||||
catering_price_range: €€€€
|
||||
has_or_had_price: # was: catering_price_range
|
||||
has_or_had_value: "€€€€"
|
||||
has_or_had_type:
|
||||
has_or_had_name: Luxury
|
||||
operator: Vermaat Groep
|
||||
description: Michelin-starred museum restaurant
|
||||
- value:
|
||||
|
|
@ -303,7 +325,10 @@ classes:
|
|||
opening_hour: Tu-Fr 09:30-16:30
|
||||
serves_visitors_only: true
|
||||
reservation_required: false
|
||||
catering_price_range: €
|
||||
has_or_had_price: # was: catering_price_range
|
||||
has_or_had_value: "€"
|
||||
has_or_had_type:
|
||||
has_or_had_name: Budget
|
||||
has_or_had_accessibility_feature:
|
||||
- Wheelchair accessible
|
||||
description: Archive visitor café
|
||||
|
|
@ -325,5 +350,8 @@ classes:
|
|||
begin_of_the_begin: "1902-01-01"
|
||||
end_of_the_begin: "1902-12-31"
|
||||
founding_description: "Historic art deco café established in 1902"
|
||||
catering_price_range: €€€
|
||||
has_or_had_price: # was: catering_price_range
|
||||
has_or_had_value: "€€€"
|
||||
has_or_had_type:
|
||||
has_or_had_name: Upscale
|
||||
description: Historic heritage café
|
||||
|
|
|
|||
50
schemas/20251121/linkml/modules/classes/CateringType.yaml
Normal file
50
schemas/20251121/linkml/modules/classes/CateringType.yaml
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
id: https://nde.nl/ontology/hc/class/CateringType
|
||||
name: CateringType
|
||||
title: Catering Type (Abstract Base)
|
||||
description: |
|
||||
Abstract base class for types of catering facilities at heritage venues.
|
||||
|
||||
This class defines the taxonomy of catering establishment types found at
|
||||
museums, archives, libraries, and other heritage institutions.
|
||||
Concrete subclasses are defined in CateringTypes.yaml following the
|
||||
Type/Types naming convention (Rule 0b).
|
||||
|
||||
Created per slot_fixes.yaml revision for catering_type migration (Rule 53/56).
|
||||
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_name
|
||||
- ../slots/has_or_had_description
|
||||
default_prefix: hc
|
||||
classes:
|
||||
CateringType:
|
||||
class_uri: skos:Concept
|
||||
abstract: true
|
||||
description: |
|
||||
Abstract base class for types of catering facilities.
|
||||
|
||||
Catering type categories:
|
||||
- Café/Coffee Shop
|
||||
- Restaurant
|
||||
- Tea Room
|
||||
- Canteen/Cafeteria
|
||||
- Terrace/Garden Café
|
||||
- Historic Café
|
||||
- Event Catering
|
||||
slots:
|
||||
- has_or_had_name
|
||||
- has_or_had_description
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
description: The name of this catering type category.
|
||||
required: true
|
||||
has_or_had_description:
|
||||
description: Description of this catering type and typical characteristics.
|
||||
exact_mappings:
|
||||
- skos:Concept
|
||||
close_mappings:
|
||||
- schema:FoodEstablishment
|
||||
123
schemas/20251121/linkml/modules/classes/CateringTypes.yaml
Normal file
123
schemas/20251121/linkml/modules/classes/CateringTypes.yaml
Normal file
|
|
@ -0,0 +1,123 @@
|
|||
id: https://nde.nl/ontology/hc/class/CateringTypes
|
||||
name: CateringTypes
|
||||
title: Catering Types (Concrete Subclasses)
|
||||
description: |
|
||||
Concrete subclasses of CateringType representing specific categories of
|
||||
catering facilities at heritage venues.
|
||||
|
||||
Follows the Type/Types naming convention (Rule 0b):
|
||||
- CateringType.yaml: Abstract base class
|
||||
- CateringTypes.yaml: This file with concrete subclasses
|
||||
|
||||
Created per slot_fixes.yaml revision for catering_type migration (Rule 53/56).
|
||||
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
|
||||
- ./CateringType
|
||||
default_prefix: hc
|
||||
classes:
|
||||
CafeCateringType:
|
||||
is_a: CateringType
|
||||
class_uri: hc:CafeCateringType
|
||||
description: |
|
||||
Casual café or coffee shop offering beverages, light snacks, and pastries.
|
||||
Typically self-service or counter-service with informal seating.
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Café
|
||||
exact_mappings:
|
||||
- schema:CafeOrCoffeeShop
|
||||
aliases:
|
||||
- Coffee Shop
|
||||
- Koffiehuis
|
||||
- Coffeebar
|
||||
|
||||
RestaurantCateringType:
|
||||
is_a: CateringType
|
||||
class_uri: hc:RestaurantCateringType
|
||||
description: |
|
||||
Full-service restaurant with table service, complete meals, and formal dining.
|
||||
May range from casual dining to fine dining establishments.
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Restaurant
|
||||
exact_mappings:
|
||||
- schema:Restaurant
|
||||
aliases:
|
||||
- Dining Room
|
||||
- Eatery
|
||||
|
||||
TeaRoomCateringType:
|
||||
is_a: CateringType
|
||||
class_uri: hc:TeaRoomCateringType
|
||||
description: |
|
||||
Tea room or tea salon specializing in tea service, often with afternoon tea,
|
||||
scones, sandwiches, and pastries.
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Tea Room
|
||||
aliases:
|
||||
- Tea Salon
|
||||
- Theehuis
|
||||
- Salon de Thé
|
||||
|
||||
CanteenCateringType:
|
||||
is_a: CateringType
|
||||
class_uri: hc:CanteenCateringType
|
||||
description: |
|
||||
Staff cafeteria or canteen primarily serving employees and staff.
|
||||
May be open to visitors or restricted to staff only.
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Canteen
|
||||
aliases:
|
||||
- Cafeteria
|
||||
- Staff Restaurant
|
||||
- Kantine
|
||||
|
||||
TerraceCateringType:
|
||||
is_a: CateringType
|
||||
class_uri: hc:TerraceCateringType
|
||||
description: |
|
||||
Outdoor or garden café, typically seasonal, offering refreshments
|
||||
in a garden, courtyard, or terrace setting.
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Terrace
|
||||
aliases:
|
||||
- Garden Café
|
||||
- Outdoor Café
|
||||
- Terras
|
||||
|
||||
HistoricCafeCateringType:
|
||||
is_a: CateringType
|
||||
class_uri: hc:HistoricCafeCateringType
|
||||
description: |
|
||||
Heritage café with cultural or historical significance.
|
||||
Often a protected monument or literary landmark in its own right.
|
||||
Examples: Café Americain, Café de Flore, Café Central.
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Historic Café
|
||||
aliases:
|
||||
- Heritage Café
|
||||
- Literary Café
|
||||
- Grand Café
|
||||
|
||||
EventCateringType:
|
||||
is_a: CateringType
|
||||
class_uri: hc:EventCateringType
|
||||
description: |
|
||||
Function and event catering space for private events, receptions,
|
||||
corporate functions, and special occasions.
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Event Catering
|
||||
aliases:
|
||||
- Function Catering
|
||||
- Banquet Hall
|
||||
- Reception Venue
|
||||
|
|
@ -25,8 +25,11 @@ imports:
|
|||
- ../slots/is_or_was_caused_by
|
||||
- ../slots/temporal_extent
|
||||
- ../slots/has_or_had_description
|
||||
# ADDED 2026-01-24: occurs_or_occurred_at for death_place migration (Rule 53)
|
||||
- ../slots/occurs_or_occurred_at
|
||||
- ./CauseOfDeath
|
||||
- ./TimeSpan
|
||||
- ./Place
|
||||
|
||||
classes:
|
||||
DeceasedStatus:
|
||||
|
|
@ -91,6 +94,8 @@ classes:
|
|||
- is_or_was_caused_by
|
||||
- temporal_extent
|
||||
- has_or_had_description
|
||||
# ADDED 2026-01-24: For death_place migration (Rule 53)
|
||||
- occurs_or_occurred_at
|
||||
|
||||
slot_usage:
|
||||
is_or_was_caused_by:
|
||||
|
|
@ -111,6 +116,24 @@ classes:
|
|||
description: |
|
||||
Additional narrative description of the death circumstances,
|
||||
commemorative information, or source documentation.
|
||||
# ADDED 2026-01-24: For death_place migration (Rule 53)
|
||||
occurs_or_occurred_at:
|
||||
range: Place
|
||||
inlined: true
|
||||
description: |
|
||||
The place where the death occurred.
|
||||
Replaces the simple death_place string slot.
|
||||
Use Place class for structured location with coordinates, GeoNames ID, etc.
|
||||
examples:
|
||||
- value:
|
||||
place_name: Auschwitz concentration camp
|
||||
country: PL
|
||||
description: Historical location
|
||||
- value:
|
||||
place_name: Gaza City
|
||||
country: PS
|
||||
geonames_id: "281133"
|
||||
description: Conflict zone death with GeoNames link
|
||||
|
||||
comments:
|
||||
- "Structured death information for heritage workers"
|
||||
|
|
|
|||
|
|
@ -33,7 +33,9 @@ imports:
|
|||
- ../slots/has_or_had_provenance # was: provenance_text - migrated per Rule 53/56 (2026-01-18)
|
||||
- ./Provenance
|
||||
- ./Description
|
||||
- ../slots/catalog_raisonne_number
|
||||
# REMOVED 2026-01-23: catalog_raisonne_number - migrated to has_or_had_identifier per Rule 53/F26
|
||||
- ./IdentifierType
|
||||
- ./IdentifierTypes
|
||||
- ../slots/has_or_had_condition_note
|
||||
- ../slots/conservation_history
|
||||
- ../slots/has_or_had_conservation_record
|
||||
|
|
@ -125,7 +127,7 @@ classes:
|
|||
- has_accession_number
|
||||
- has_acquisition_date
|
||||
- has_acquisition_method
|
||||
- catalog_raisonne_number
|
||||
# REMOVED 2026-01-23: catalog_raisonne_number - migrated to has_or_had_identifier per Rule 53/F26
|
||||
- has_or_had_condition_note
|
||||
- conservation_history
|
||||
- has_or_had_conservation_record
|
||||
|
|
@ -407,25 +409,46 @@ classes:
|
|||
multivalued: true
|
||||
examples:
|
||||
- value: https://www.mauritshuis.nl/media/670-large.jpg
|
||||
# MIGRATED 2026-01-15: wikidata_id → has_or_had_identifier + WikiDataIdentifier (Rule 53)
|
||||
# MIGRATED 2026-01-15: wikidata_id → has_or_had_identifier (Rule 53)
|
||||
# MIGRATED 2026-01-23: catalog_raisonne_number → has_or_had_identifier (Rule 53/F26)
|
||||
has_or_had_identifier:
|
||||
description: |
|
||||
Wikidata entity identifier (Q-number) for this exhibited object.
|
||||
External identifiers for this exhibited object.
|
||||
|
||||
MIGRATED 2026-01-15: Replaces wikidata_id slot per Rule 53.
|
||||
MIGRATED 2026-01-23: Also includes catalog raisonné numbers per Rule 53/F26.
|
||||
|
||||
Use has_or_had_type with IdentifierType subclasses to specify identifier type.
|
||||
required: false
|
||||
range: WikiDataIdentifier
|
||||
range: Identifier
|
||||
multivalued: true
|
||||
inlined: true
|
||||
inlined_as_list: true
|
||||
examples:
|
||||
- value:
|
||||
qid: "Q81858"
|
||||
label: "Girl with a Pearl Earring"
|
||||
identifier_value: "Q81858"
|
||||
has_or_had_type:
|
||||
has_or_had_code: WIKIDATA
|
||||
has_or_had_label: Wikidata ID
|
||||
description: Girl with a Pearl Earring Wikidata identifier
|
||||
- value:
|
||||
qid: "Q219831"
|
||||
label: "The Night Watch"
|
||||
identifier_value: "Q219831"
|
||||
has_or_had_type:
|
||||
has_or_had_code: WIKIDATA
|
||||
has_or_had_label: Wikidata ID
|
||||
description: The Night Watch Wikidata identifier
|
||||
- value:
|
||||
identifier_value: "Hofstede de Groot 1907, no. 44"
|
||||
has_or_had_type:
|
||||
has_or_had_code: CATALOG_RAISONNE
|
||||
has_or_had_label: Catalogue Raisonné Number
|
||||
description: Catalog raisonné reference (was catalog_raisonne_number)
|
||||
- value:
|
||||
identifier_value: "Bredius 410"
|
||||
has_or_had_type:
|
||||
has_or_had_code: CATALOG_RAISONNE
|
||||
has_or_had_label: Catalogue Raisonné Number
|
||||
description: Bredius catalog reference
|
||||
external_identifier:
|
||||
required: false
|
||||
range: string
|
||||
|
|
@ -433,12 +456,7 @@ classes:
|
|||
examples:
|
||||
- value: rkdimages:23903
|
||||
- value: getty_ulan:500121212
|
||||
catalog_raisonne_number:
|
||||
required: false
|
||||
range: string
|
||||
examples:
|
||||
- value: Hofstede de Groot 1907, no. 44
|
||||
- value: Bredius 410
|
||||
# REMOVED 2026-01-23: catalog_raisonne_number - migrated to has_or_had_identifier per Rule 53/F26
|
||||
has_or_had_conservation_record:
|
||||
required: false
|
||||
range: ConservationRecord
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
id: https://nde.nl/ontology/hc/class/Identifier
|
||||
name: identifier_classes
|
||||
title: Identifier Classes (Generic and Custodian-Specific)
|
||||
# Updated: 2026-01-23 - Added has_or_had_type for IdentifierType per F26 migration
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
|
|
@ -22,6 +23,10 @@ imports:
|
|||
# MIGRATED 2026-01-22: canonical_value → has_or_had_canonical_form + CanonicalForm per slot_fixes.yaml feedback
|
||||
- ../slots/has_or_had_canonical_form
|
||||
- ./CanonicalForm
|
||||
# ADDED 2026-01-23: has_or_had_type for IdentifierType per F26 migration
|
||||
- ../slots/has_or_had_type
|
||||
- ./IdentifierType
|
||||
- ./IdentifierTypes
|
||||
- ../slots/has_or_had_secondary_label
|
||||
- ../slots/has_allocation_date
|
||||
- ../slots/specificity_annotation
|
||||
|
|
@ -65,12 +70,33 @@ classes:
|
|||
slots:
|
||||
- identifier_scheme
|
||||
- identifier_value
|
||||
- has_or_had_type
|
||||
slot_usage:
|
||||
has_or_had_type:
|
||||
description: >-
|
||||
The type of identifier from IdentifierType taxonomy.
|
||||
Uses IdentifierType subclasses per Rule 0b (Type/Types pattern).
|
||||
Added 2026-01-23 per F26 migration.
|
||||
|
||||
Provides structured alternative to string-based identifier_scheme.
|
||||
Prefer has_or_had_type for new data; identifier_scheme retained for compatibility.
|
||||
range: IdentifierType
|
||||
required: false
|
||||
examples:
|
||||
- value:
|
||||
has_or_had_code: CATALOG_RAISONNE
|
||||
has_or_had_label: Catalogue Raisonné Number
|
||||
description: Art catalog reference
|
||||
- value:
|
||||
has_or_had_code: ISIL
|
||||
has_or_had_label: ISIL Code
|
||||
description: Library identifier
|
||||
identifier_scheme:
|
||||
range: string
|
||||
required: true
|
||||
required: false
|
||||
description: |
|
||||
The identifier scheme or namespace (e.g., ISIL, Wikidata, URI, INTERNAL_CODE).
|
||||
Note: Prefer has_or_had_type for new data (structured IdentifierType).
|
||||
examples:
|
||||
- value: ISIL
|
||||
description: ISIL identifier scheme
|
||||
|
|
|
|||
76
schemas/20251121/linkml/modules/classes/IdentifierType.yaml
Normal file
76
schemas/20251121/linkml/modules/classes/IdentifierType.yaml
Normal file
|
|
@ -0,0 +1,76 @@
|
|||
# IdentifierType class (abstract base)
|
||||
# Type taxonomy for identifier schemes and types
|
||||
#
|
||||
# Created: 2026-01-23 per slot_fixes.yaml F26 (catalog_raisonne_number migration)
|
||||
# Rule compliance: 0b (Type/Types pattern - this is the Type file)
|
||||
|
||||
id: https://nde.nl/ontology/hc/class/IdentifierType
|
||||
name: IdentifierType
|
||||
title: Identifier Type Class (Abstract Base)
|
||||
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
adms: http://www.w3.org/ns/adms#
|
||||
dcterms: http://purl.org/dc/terms/
|
||||
skos: http://www.w3.org/2004/02/skos/core#
|
||||
|
||||
default_prefix: hc
|
||||
|
||||
imports:
|
||||
- linkml:types
|
||||
- ../metadata
|
||||
- ../slots/has_or_had_code
|
||||
- ../slots/has_or_had_label
|
||||
- ../slots/has_or_had_description
|
||||
|
||||
classes:
|
||||
IdentifierType:
|
||||
class_uri: adms:Identifier
|
||||
abstract: true
|
||||
description: >-
|
||||
Abstract base class for identifier type taxonomy.
|
||||
|
||||
**Rule 0b Compliance**: This is the abstract TYPE file.
|
||||
Concrete identifier types are defined in IdentifierTypes.yaml (plural).
|
||||
|
||||
Categories of identifiers:
|
||||
- **Authority identifiers**: ISIL, VIAF, ISNI, ROR, ORCID
|
||||
- **Cultural heritage identifiers**: Wikidata, GND, ULAN
|
||||
- **Registration identifiers**: KvK, EU VAT, Legal Entity
|
||||
- **Bibliographic identifiers**: ISBN, ISSN, DOI
|
||||
- **Art/Museum identifiers**: Catalog Raisonné, Inventory Number
|
||||
- **Archival identifiers**: Finding Aid ID, Fonds Number
|
||||
- **Internal identifiers**: Local codes, System IDs
|
||||
|
||||
This taxonomy replaces string-based identifier_scheme with
|
||||
structured class-based typing per Rule 53.
|
||||
exact_mappings:
|
||||
- adms:Identifier
|
||||
close_mappings:
|
||||
- dcterms:identifier
|
||||
- skos:Concept
|
||||
slots:
|
||||
- has_or_had_code
|
||||
- has_or_had_label
|
||||
- has_or_had_description
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
description: Short code for the identifier type (e.g., ISIL, VIAF, CATALOG_RAISONNE).
|
||||
range: string
|
||||
required: true
|
||||
identifier: true
|
||||
pattern: '^[A-Z][A-Z0-9_]*$'
|
||||
has_or_had_label:
|
||||
description: Human-readable label for the identifier type.
|
||||
range: string
|
||||
required: true
|
||||
has_or_had_description:
|
||||
description: Definition and scope of this identifier type.
|
||||
range: string
|
||||
required: false
|
||||
comments:
|
||||
- "Abstract base class - use concrete subclasses from IdentifierTypes.yaml"
|
||||
see_also:
|
||||
- https://www.w3.org/ns/adms
|
||||
- https://www.iso.org/standard/77849.html
|
||||
307
schemas/20251121/linkml/modules/classes/IdentifierTypes.yaml
Normal file
307
schemas/20251121/linkml/modules/classes/IdentifierTypes.yaml
Normal file
|
|
@ -0,0 +1,307 @@
|
|||
# IdentifierTypes class (concrete subclasses)
|
||||
# Concrete identifier type subclasses per Rule 0b (Type/Types pattern)
|
||||
#
|
||||
# Created: 2026-01-23 per slot_fixes.yaml F26 (catalog_raisonne_number migration)
|
||||
# Rule compliance: 0b (Type/Types pattern - this is the Types file)
|
||||
|
||||
id: https://nde.nl/ontology/hc/class/IdentifierTypes
|
||||
name: IdentifierTypes
|
||||
title: Identifier Types (Concrete Subclasses)
|
||||
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
|
||||
default_prefix: hc
|
||||
|
||||
imports:
|
||||
- linkml:types
|
||||
- ../metadata
|
||||
- ./IdentifierType
|
||||
|
||||
classes:
|
||||
# === AUTHORITY IDENTIFIERS ===
|
||||
|
||||
ISILIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:ISILIdentifierType
|
||||
description: International Standard Identifier for Libraries and Related Organizations (ISO 15511).
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: ISIL
|
||||
has_or_had_label:
|
||||
equals_string: ISIL Code
|
||||
|
||||
VIAFIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:VIAFIdentifierType
|
||||
description: Virtual International Authority File identifier.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: VIAF
|
||||
has_or_had_label:
|
||||
equals_string: VIAF ID
|
||||
|
||||
ISNIIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:ISNIIdentifierType
|
||||
description: International Standard Name Identifier (ISO 27729).
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: ISNI
|
||||
has_or_had_label:
|
||||
equals_string: ISNI
|
||||
|
||||
RORIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:RORIdentifierType
|
||||
description: Research Organization Registry identifier.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: ROR
|
||||
has_or_had_label:
|
||||
equals_string: ROR ID
|
||||
|
||||
ORCIDIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:ORCIDIdentifierType
|
||||
description: Open Researcher and Contributor ID.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: ORCID
|
||||
has_or_had_label:
|
||||
equals_string: ORCID
|
||||
|
||||
# === CULTURAL HERITAGE IDENTIFIERS ===
|
||||
|
||||
WikidataIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:WikidataIdentifierType
|
||||
description: Wikidata entity identifier (Q-number).
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: WIKIDATA
|
||||
has_or_had_label:
|
||||
equals_string: Wikidata ID
|
||||
|
||||
GNDIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:GNDIdentifierType
|
||||
description: Gemeinsame Normdatei (German authority file).
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: GND
|
||||
has_or_had_label:
|
||||
equals_string: GND ID
|
||||
|
||||
ULANIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:ULANIdentifierType
|
||||
description: Union List of Artist Names (Getty).
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: ULAN
|
||||
has_or_had_label:
|
||||
equals_string: ULAN ID
|
||||
|
||||
AATIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:AATIdentifierType
|
||||
description: Art & Architecture Thesaurus (Getty).
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: AAT
|
||||
has_or_had_label:
|
||||
equals_string: AAT ID
|
||||
|
||||
TGNIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:TGNIdentifierType
|
||||
description: Thesaurus of Geographic Names (Getty).
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: TGN
|
||||
has_or_had_label:
|
||||
equals_string: TGN ID
|
||||
|
||||
# === REGISTRATION IDENTIFIERS ===
|
||||
|
||||
KvKIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:KvKIdentifierType
|
||||
description: Dutch Chamber of Commerce (Kamer van Koophandel) registration number.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: KVK
|
||||
has_or_had_label:
|
||||
equals_string: KvK Number
|
||||
|
||||
LEIIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:LEIIdentifierType
|
||||
description: Legal Entity Identifier (ISO 17442).
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: LEI
|
||||
has_or_had_label:
|
||||
equals_string: LEI
|
||||
|
||||
VATIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:VATIdentifierType
|
||||
description: VAT registration number.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: VAT
|
||||
has_or_had_label:
|
||||
equals_string: VAT Number
|
||||
|
||||
# === BIBLIOGRAPHIC IDENTIFIERS ===
|
||||
|
||||
ISBNIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:ISBNIdentifierType
|
||||
description: International Standard Book Number (ISO 2108).
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: ISBN
|
||||
has_or_had_label:
|
||||
equals_string: ISBN
|
||||
|
||||
ISSNIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:ISSNIdentifierType
|
||||
description: International Standard Serial Number (ISO 3297).
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: ISSN
|
||||
has_or_had_label:
|
||||
equals_string: ISSN
|
||||
|
||||
DOIIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:DOIIdentifierType
|
||||
description: Digital Object Identifier (ISO 26324).
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: DOI
|
||||
has_or_had_label:
|
||||
equals_string: DOI
|
||||
|
||||
OCLCIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:OCLCIdentifierType
|
||||
description: OCLC WorldCat record number.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: OCLC
|
||||
has_or_had_label:
|
||||
equals_string: OCLC Number
|
||||
|
||||
# === ART/MUSEUM IDENTIFIERS ===
|
||||
|
||||
CatalogRaisonneIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:CatalogRaisonneIdentifierType
|
||||
description: >-
|
||||
Reference number in a catalogue raisonné (comprehensive catalog of an artist's work).
|
||||
MIGRATED from catalog_raisonne_number slot (2026-01-23) per Rule 53/F26.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: CATALOG_RAISONNE
|
||||
has_or_had_label:
|
||||
equals_string: Catalogue Raisonné Number
|
||||
|
||||
InventoryNumberIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:InventoryNumberIdentifierType
|
||||
description: Museum or collection inventory number.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: INVENTORY_NUMBER
|
||||
has_or_had_label:
|
||||
equals_string: Inventory Number
|
||||
|
||||
AccessionNumberIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:AccessionNumberIdentifierType
|
||||
description: Accession number assigned upon acquisition.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: ACCESSION_NUMBER
|
||||
has_or_had_label:
|
||||
equals_string: Accession Number
|
||||
|
||||
# === ARCHIVAL IDENTIFIERS ===
|
||||
|
||||
FindingAidIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:FindingAidIdentifierType
|
||||
description: Finding aid or archival guide identifier.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: FINDING_AID_ID
|
||||
has_or_had_label:
|
||||
equals_string: Finding Aid ID
|
||||
|
||||
FondsNumberIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:FondsNumberIdentifierType
|
||||
description: Archival fonds or collection number.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: FONDS_NUMBER
|
||||
has_or_had_label:
|
||||
equals_string: Fonds Number
|
||||
|
||||
EADIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:EADIdentifierType
|
||||
description: Encoded Archival Description identifier.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: EAD_ID
|
||||
has_or_had_label:
|
||||
equals_string: EAD ID
|
||||
|
||||
# === INTERNAL/LOCAL IDENTIFIERS ===
|
||||
|
||||
LocalCollectionIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:LocalCollectionIdentifierType
|
||||
description: Local collection or institutional identifier.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: LOCAL_COLLECTION
|
||||
has_or_had_label:
|
||||
equals_string: Local Collection ID
|
||||
|
||||
InternalCodeIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:InternalCodeIdentifierType
|
||||
description: Internal system code or database ID.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: INTERNAL_CODE
|
||||
has_or_had_label:
|
||||
equals_string: Internal Code
|
||||
|
||||
URIIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:URIIdentifierType
|
||||
description: Uniform Resource Identifier.
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: URI
|
||||
has_or_had_label:
|
||||
equals_string: URI
|
||||
|
||||
URLIdentifierType:
|
||||
is_a: IdentifierType
|
||||
class_uri: hc:URLIdentifierType
|
||||
description: Uniform Resource Locator (web address).
|
||||
slot_usage:
|
||||
has_or_had_code:
|
||||
equals_string: URL
|
||||
has_or_had_label:
|
||||
equals_string: URL
|
||||
|
|
@ -49,7 +49,9 @@ imports:
|
|||
- ../slots/copy_number
|
||||
- ../slots/cover_material
|
||||
- ../slots/has_or_had_custodian_type
|
||||
- ../slots/date_of_publication
|
||||
# REMOVED 2026-01-24: date_of_publication - migrated to is_or_was_published (Rule 53)
|
||||
- ../slots/is_or_was_published
|
||||
- ./Publication
|
||||
- ../slots/doi
|
||||
- ../slots/duration
|
||||
- ../slots/edition_statement
|
||||
|
|
@ -144,7 +146,8 @@ classes:
|
|||
- copy_number
|
||||
- cover_material
|
||||
- has_or_had_custodian_type
|
||||
- date_of_publication
|
||||
# REMOVED 2026-01-24: date_of_publication - migrated to is_or_was_published (Rule 53)
|
||||
- is_or_was_published
|
||||
- doi
|
||||
- duration
|
||||
- edition_statement
|
||||
|
|
@ -350,12 +353,26 @@ classes:
|
|||
- value:
|
||||
place_name: Mainz
|
||||
country: DE
|
||||
date_of_publication:
|
||||
# REMOVED 2026-01-24: date_of_publication - migrated to is_or_was_published (Rule 53)
|
||||
is_or_was_published:
|
||||
required: false
|
||||
range: string
|
||||
range: Publication
|
||||
inlined: true
|
||||
multivalued: true
|
||||
description: >-
|
||||
Publication event(s) for this information carrier.
|
||||
Use publication_date_string for approximate dates (c. 1455, 16th century).
|
||||
examples:
|
||||
- value: c. 1455
|
||||
- value: '1623'
|
||||
- value:
|
||||
publication_date_string: "c. 1455"
|
||||
publisher: "Johannes Gutenberg"
|
||||
publication_place: "Mainz"
|
||||
description: Approximate date with publisher info
|
||||
- value:
|
||||
temporal_extent:
|
||||
begin_of_the_begin: "1623-01-01"
|
||||
publication_date_string: "1623"
|
||||
description: Year-level precision
|
||||
edition_statement:
|
||||
required: false
|
||||
range: string
|
||||
|
|
@ -602,7 +619,11 @@ classes:
|
|||
place_of_publication:
|
||||
place_name: Mainz
|
||||
country: DE
|
||||
date_of_publication: c. 1455
|
||||
# MIGRATED 2026-01-24: date_of_publication → is_or_was_published (Rule 53)
|
||||
is_or_was_published:
|
||||
- publication_date_string: "c. 1455"
|
||||
publisher: "Johannes Gutenberg"
|
||||
publication_place: "Mainz"
|
||||
script_type: PRINTED
|
||||
has_or_had_writing_system:
|
||||
has_or_had_code: "Latn"
|
||||
|
|
@ -650,7 +671,9 @@ classes:
|
|||
script_name: "Greek uncial"
|
||||
content_language:
|
||||
- grc
|
||||
date_of_publication: 4th century CE
|
||||
# MIGRATED 2026-01-24: date_of_publication → is_or_was_published (Rule 53)
|
||||
is_or_was_published:
|
||||
- publication_date_string: "4th century CE"
|
||||
# MIGRATED 2026-01-23: carries_information → has_or_had_content (Rule 53/F25)
|
||||
has_or_had_content:
|
||||
has_or_had_label: Septuagint and Greek New Testament
|
||||
|
|
@ -683,7 +706,13 @@ classes:
|
|||
script_name: "Latin"
|
||||
content_language:
|
||||
- eng
|
||||
date_of_publication: '1776-08-02'
|
||||
# MIGRATED 2026-01-24: date_of_publication → is_or_was_published (Rule 53)
|
||||
is_or_was_published:
|
||||
- temporal_extent:
|
||||
begin_of_the_begin: "1776-08-02"
|
||||
end_of_the_end: "1776-08-02"
|
||||
publisher: "John Dunlap"
|
||||
publication_place: "Philadelphia"
|
||||
archival_reference: NARA 1419
|
||||
fonds: Records of the Continental and Confederation Congresses
|
||||
arrangement_level: ITEM
|
||||
|
|
|
|||
|
|
@ -8,7 +8,11 @@ imports:
|
|||
- ../slots/complies_or_complied_with
|
||||
- ./CatalogingStandard
|
||||
- ../enums/LibraryTypeEnum
|
||||
- ../slots/catalog_system
|
||||
# - ../slots/catalog_system # ARCHIVED 2026-01-24: migrated to uses_or_used + CatalogSystem per Rule 53/56
|
||||
- ../slots/uses_or_used
|
||||
- ./CatalogSystem
|
||||
- ./CatalogSystemType
|
||||
- ./CatalogSystemTypes
|
||||
- ../slots/has_or_had_custodian_type
|
||||
- ../slots/interlibrary_loan
|
||||
- ../slots/lending_policy
|
||||
|
|
@ -105,10 +109,10 @@ classes:
|
|||
\ org:classification :LibraryType_NationalLibrary_Q22806 .\n\n:LibraryType_NationalLibrary_Q22806\n a glamtype:LibraryType,\
|
||||
\ crm:E55_Type, skos:Concept ;\n skos:prefLabel \"National Library\"@en, \"nationale bibliotheek\"@nl ;\n skos:broader\
|
||||
\ :LibraryType_Library_Q7075 ;\n schema:additionalType <http://www.wikidata.org/entity/Q22806> ;\n glamtype:glamorcubesfixphdnt_code\
|
||||
\ \"LIBRARY\" ;\n glamtype:lending_policy \"reference-only\" ;\n glamtype:catalog_system \"ALMA\" ;\n glamtype:special_collections\
|
||||
\ \"LIBRARY\" ;\n glamtype:lending_policy \"reference-only\" ;\n glamtype:uses_or_used [ a glamtype:CatalogSystem ; glamtype:has_or_had_name \"ALMA\" ] ;\n glamtype:special_collections\
|
||||
\ [\"incunabula\", \"manuscripts\", \"maps\"] ;\n glamtype:interlibrary_loan true ;\n glamtype:cataloging_standard\
|
||||
\ \"RDA\" .\n```\n\n**Domain-Specific Properties**:\nThis class adds library-specific metadata beyond base CustodianType:\n\
|
||||
- `lending_policy` - Circulation rules (open, restricted, reference-only, digital-only, membership-required)\n- `catalog_system`\
|
||||
- `lending_policy` - Circulation rules (open, restricted, reference-only, digital-only, membership-required)\n- `uses_or_used` (was: catalog_system)\
|
||||
\ - Integrated library system (ALMA, Sierra, Koha, Aleph, etc.)\n- `special_collections` - Notable collections (rare\
|
||||
\ books, manuscripts, archives, maps, music)\n- `membership_required` - Whether library requires membership for access\n\
|
||||
- `interlibrary_loan` - Whether participates in interlibrary loan networks\n- `cataloging_standard` - Metadata standards\
|
||||
|
|
@ -123,7 +127,7 @@ classes:
|
|||
- Information literacy instruction - User education programs\n\n**Data Population**:\nLibrary subtypes extracted from\
|
||||
\ 60 Wikidata entities with type='L'\nin `data/wikidata/GLAMORCUBEPSXHFN/hyponyms_curated_full.yaml`.\n"
|
||||
slots:
|
||||
- catalog_system
|
||||
- uses_or_used # was: catalog_system - migrated per Rule 53/56 (2026-01-24)
|
||||
- complies_or_complied_with # was: cataloging_standard - migrated per Rule 53/56 (2026-01-17)
|
||||
- has_or_had_custodian_type
|
||||
- interlibrary_loan
|
||||
|
|
@ -135,6 +139,14 @@ classes:
|
|||
- has_or_had_score # was: template_specificity - migrated per Rule 53 (2026-01-17)
|
||||
- has_or_had_identifier # was: wikidata_entity - migrated per Rule 53 (2026-01-16)
|
||||
slot_usage:
|
||||
uses_or_used: # was: catalog_system - migrated per Rule 53/56 (2026-01-24)
|
||||
description: |
|
||||
The catalog system or integrated library system (ILS) used by this library.
|
||||
MIGRATED from catalog_system per Rule 53/56 (2026-01-24).
|
||||
Common systems: ALMA, Koha, Sierra, Aleph, FOLIO, OCLC WorldShare.
|
||||
range: CatalogSystem
|
||||
inlined: true
|
||||
multivalued: true
|
||||
has_or_had_identifier: # was: wikidata_entity - migrated per Rule 53 (2026-01-16)
|
||||
pattern: ^Q[0-9]+$
|
||||
required: true
|
||||
|
|
@ -182,7 +194,10 @@ classes:
|
|||
has_or_had_description: library specifically established by the government of a country # was: type_description - migrated per Rule 53/56 (2026-01-16)
|
||||
has_or_had_hypernym: https://nde.nl/ontology/hc/type/library/Q7075 # was: broader_type - migrated per Rule 53 (2026-01-17)
|
||||
lending_policy: reference-only
|
||||
catalog_system: ALMA
|
||||
uses_or_used: # was: catalog_system - migrated per Rule 53/56 (2026-01-24)
|
||||
- has_or_had_name: ALMA
|
||||
has_or_had_type:
|
||||
has_or_had_name: Library Services Platform
|
||||
special_collection:
|
||||
- incunabula
|
||||
- manuscripts
|
||||
|
|
@ -206,7 +221,10 @@ classes:
|
|||
has_or_had_description: public library in the Netherlands with a secondary research function (Wetenschappelijke en Speciale Functies) # was: type_description - migrated per Rule 53/56 (2026-01-16)
|
||||
has_or_had_hypernym: https://nde.nl/ontology/hc/type/library/Q7075 # was: broader_type - migrated per Rule 53 (2026-01-17)
|
||||
lending_policy: open
|
||||
catalog_system: OCLC
|
||||
uses_or_used: # was: catalog_system - migrated per Rule 53/56 (2026-01-24)
|
||||
- has_or_had_name: OCLC WorldShare
|
||||
has_or_had_type:
|
||||
has_or_had_name: Library Services Platform
|
||||
special_collection:
|
||||
- local history
|
||||
- genealogy
|
||||
|
|
|
|||
82
schemas/20251121/linkml/modules/classes/Measurement.yaml
Normal file
82
schemas/20251121/linkml/modules/classes/Measurement.yaml
Normal file
|
|
@ -0,0 +1,82 @@
|
|||
id: https://nde.nl/ontology/hc/class/Measurement
|
||||
name: Measurement
|
||||
title: Measurement
|
||||
description: |
|
||||
Represents a measurement observation with value, type, unit, and timestamp.
|
||||
|
||||
This class captures environmental and condition measurements for heritage
|
||||
storage monitoring, including temperature, humidity, light levels, etc.
|
||||
|
||||
Created per slot_fixes.yaml revision for category_measurement migration (Rule 53/56).
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
qudt: http://qudt.org/schema/qudt/
|
||||
crm: http://www.cidoc-crm.org/cidoc-crm/
|
||||
sosa: http://www.w3.org/ns/sosa/
|
||||
imports:
|
||||
- linkml:types
|
||||
- ../slots/has_or_had_value
|
||||
- ../slots/has_or_had_measurement_type
|
||||
- ../slots/has_or_had_measurement_unit
|
||||
- ./MeasurementType
|
||||
- ./MeasureUnit
|
||||
default_prefix: hc
|
||||
classes:
|
||||
Measurement:
|
||||
class_uri: sosa:Observation
|
||||
description: |
|
||||
A measurement observation capturing a specific value, its type, and unit.
|
||||
|
||||
Used for:
|
||||
- Storage condition monitoring (temperature, humidity)
|
||||
- Environmental assessments (light levels, UV radiation)
|
||||
- Conservation observations (pest counts, air quality)
|
||||
slots:
|
||||
- has_or_had_value
|
||||
- has_or_had_measurement_type
|
||||
- has_or_had_measurement_unit
|
||||
slot_usage:
|
||||
has_or_had_value:
|
||||
description: |
|
||||
The measured value as a string (e.g., "19.5", "48", "250").
|
||||
String type allows for special notation (±, <, >, ranges).
|
||||
required: true
|
||||
has_or_had_measurement_type:
|
||||
description: The type/category of measurement (temperature, humidity, etc.).
|
||||
range: MeasurementType
|
||||
inlined: true
|
||||
has_or_had_measurement_unit:
|
||||
description: The unit of measurement (°C, % RH, lux, etc.).
|
||||
range: MeasureUnit
|
||||
inlined: true
|
||||
exact_mappings:
|
||||
- sosa:Observation
|
||||
- qudt:QuantityValue
|
||||
close_mappings:
|
||||
- crm:E16_Measurement
|
||||
examples:
|
||||
- value:
|
||||
has_or_had_value: "19.5"
|
||||
has_or_had_measurement_type:
|
||||
has_or_had_name: Temperature
|
||||
has_or_had_measurement_unit:
|
||||
has_or_had_name: Degree Celsius
|
||||
has_or_had_symbol: "°C"
|
||||
description: Temperature measurement of 19.5°C
|
||||
- value:
|
||||
has_or_had_value: "48"
|
||||
has_or_had_measurement_type:
|
||||
has_or_had_name: Relative Humidity
|
||||
has_or_had_measurement_unit:
|
||||
has_or_had_name: Percent
|
||||
has_or_had_symbol: "%"
|
||||
description: Humidity measurement of 48% RH
|
||||
- value:
|
||||
has_or_had_value: "250"
|
||||
has_or_had_measurement_type:
|
||||
has_or_had_name: Light Level
|
||||
has_or_had_measurement_unit:
|
||||
has_or_had_name: Lux
|
||||
has_or_had_symbol: "lx"
|
||||
description: Light level measurement of 250 lux
|
||||
58
schemas/20251121/linkml/modules/classes/MeasurementType.yaml
Normal file
58
schemas/20251121/linkml/modules/classes/MeasurementType.yaml
Normal file
|
|
@ -0,0 +1,58 @@
|
|||
id: https://nde.nl/ontology/hc/class/MeasurementType
|
||||
name: MeasurementType
|
||||
title: Measurement Type (Abstract Base)
|
||||
description: |
|
||||
Abstract base class for types of measurements relevant to heritage conservation
|
||||
and storage conditions.
|
||||
|
||||
This class defines the taxonomy of measurement categories used for monitoring
|
||||
storage environments and conservation conditions. Concrete subclasses are
|
||||
defined in MeasurementTypes.yaml following the Type/Types naming convention (Rule 0b).
|
||||
|
||||
Created per slot_fixes.yaml revision for category_measurement migration (Rule 53/56).
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
skos: http://www.w3.org/2004/02/skos/core#
|
||||
qudt: http://qudt.org/schema/qudt/
|
||||
crm: http://www.cidoc-crm.org/cidoc-crm/
|
||||
imports:
|
||||
- linkml:types
|
||||
- ../slots/has_or_had_name
|
||||
- ../slots/has_or_had_description
|
||||
- ../slots/has_or_had_measurement_unit
|
||||
- ./MeasureUnit
|
||||
default_prefix: hc
|
||||
classes:
|
||||
MeasurementType:
|
||||
class_uri: skos:Concept
|
||||
abstract: true
|
||||
description: |
|
||||
Abstract base class for types of measurements in heritage conservation contexts.
|
||||
|
||||
Common measurement type categories:
|
||||
- Temperature measurements (°C, °F)
|
||||
- Humidity measurements (% RH)
|
||||
- Light level measurements (lux)
|
||||
- UV radiation measurements
|
||||
- Air quality measurements
|
||||
- Vibration measurements
|
||||
- Pest monitoring counts
|
||||
slots:
|
||||
- has_or_had_name
|
||||
- has_or_had_description
|
||||
- has_or_had_measurement_unit
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
description: The name of this measurement type category.
|
||||
required: true
|
||||
has_or_had_description:
|
||||
description: Description of this measurement type and what it measures.
|
||||
has_or_had_measurement_unit:
|
||||
description: The standard unit(s) of measurement for this type.
|
||||
range: MeasureUnit
|
||||
exact_mappings:
|
||||
- skos:Concept
|
||||
close_mappings:
|
||||
- qudt:QuantityKind
|
||||
- crm:E55_Type
|
||||
202
schemas/20251121/linkml/modules/classes/MeasurementTypes.yaml
Normal file
202
schemas/20251121/linkml/modules/classes/MeasurementTypes.yaml
Normal file
|
|
@ -0,0 +1,202 @@
|
|||
id: https://nde.nl/ontology/hc/class/MeasurementTypes
|
||||
name: MeasurementTypes
|
||||
title: Measurement Types (Concrete Subclasses)
|
||||
description: |
|
||||
Concrete subclasses of MeasurementType representing specific categories of
|
||||
measurements used in heritage conservation and storage monitoring.
|
||||
|
||||
Follows the Type/Types naming convention (Rule 0b):
|
||||
- MeasurementType.yaml: Abstract base class
|
||||
- MeasurementTypes.yaml: This file with concrete subclasses
|
||||
|
||||
Created per slot_fixes.yaml revision for category_measurement migration (Rule 53/56).
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
skos: http://www.w3.org/2004/02/skos/core#
|
||||
qudt: http://qudt.org/schema/qudt/
|
||||
imports:
|
||||
- linkml:types
|
||||
- ./MeasurementType
|
||||
default_prefix: hc
|
||||
classes:
|
||||
# === Environmental Measurements ===
|
||||
TemperatureMeasurementType:
|
||||
is_a: MeasurementType
|
||||
class_uri: hc:TemperatureMeasurementType
|
||||
description: |
|
||||
Temperature measurement type for monitoring storage and display environments.
|
||||
Standard units: degrees Celsius (°C) or Fahrenheit (°F).
|
||||
|
||||
Typical conservation ranges:
|
||||
- Archives/libraries: 18-22°C
|
||||
- Museums (general): 18-22°C
|
||||
- Cold storage (photographs): 2-8°C
|
||||
- Freezer storage (textiles): -20°C
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Temperature
|
||||
exact_mappings:
|
||||
- qudt:Temperature
|
||||
aliases:
|
||||
- Temp
|
||||
- Air Temperature
|
||||
|
||||
HumidityMeasurementType:
|
||||
is_a: MeasurementType
|
||||
class_uri: hc:HumidityMeasurementType
|
||||
description: |
|
||||
Relative humidity measurement type for monitoring moisture in storage environments.
|
||||
Standard unit: percentage relative humidity (% RH).
|
||||
|
||||
Typical conservation ranges:
|
||||
- Archives/libraries: 45-55% RH
|
||||
- Museums (general): 45-55% RH
|
||||
- Metals: 30-40% RH
|
||||
- Photographs: 30-40% RH
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Relative Humidity
|
||||
exact_mappings:
|
||||
- qudt:RelativeHumidity
|
||||
aliases:
|
||||
- RH
|
||||
- Humidity
|
||||
- Moisture
|
||||
|
||||
LightLevelMeasurementType:
|
||||
is_a: MeasurementType
|
||||
class_uri: hc:LightLevelMeasurementType
|
||||
description: |
|
||||
Light level measurement type for monitoring illumination in display and storage areas.
|
||||
Standard unit: lux (lx).
|
||||
|
||||
Typical conservation limits:
|
||||
- Light-sensitive materials (textiles, works on paper): 50 lux max
|
||||
- Medium sensitivity (oil paintings): 150-200 lux max
|
||||
- Low sensitivity (stone, ceramics): 300 lux max
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Light Level
|
||||
exact_mappings:
|
||||
- qudt:Illuminance
|
||||
aliases:
|
||||
- Illuminance
|
||||
- Lux
|
||||
|
||||
UVRadiationMeasurementType:
|
||||
is_a: MeasurementType
|
||||
class_uri: hc:UVRadiationMeasurementType
|
||||
description: |
|
||||
Ultraviolet radiation measurement type for monitoring harmful UV exposure.
|
||||
Standard unit: microwatts per lumen (µW/lm).
|
||||
|
||||
Conservation standard: UV should be below 75 µW/lm for most materials.
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: UV Radiation
|
||||
aliases:
|
||||
- UV Level
|
||||
- Ultraviolet
|
||||
|
||||
# === Air Quality Measurements ===
|
||||
AirQualityMeasurementType:
|
||||
is_a: MeasurementType
|
||||
class_uri: hc:AirQualityMeasurementType
|
||||
description: |
|
||||
General air quality measurement type for monitoring pollutants and particulates.
|
||||
May include PM2.5, PM10, or composite air quality indices.
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Air Quality
|
||||
aliases:
|
||||
- AQI
|
||||
- Particulate Matter
|
||||
|
||||
CO2MeasurementType:
|
||||
is_a: MeasurementType
|
||||
class_uri: hc:CO2MeasurementType
|
||||
description: |
|
||||
Carbon dioxide measurement type for monitoring air quality and ventilation.
|
||||
Standard unit: parts per million (ppm).
|
||||
|
||||
Typical thresholds:
|
||||
- Good: <800 ppm
|
||||
- Acceptable: 800-1000 ppm
|
||||
- Poor: >1000 ppm
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Carbon Dioxide
|
||||
aliases:
|
||||
- CO2
|
||||
- Carbon Dioxide Level
|
||||
|
||||
VOCMeasurementType:
|
||||
is_a: MeasurementType
|
||||
class_uri: hc:VOCMeasurementType
|
||||
description: |
|
||||
Volatile organic compounds measurement type for monitoring off-gassing
|
||||
from materials, paints, adhesives, and storage materials.
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Volatile Organic Compounds
|
||||
aliases:
|
||||
- VOC
|
||||
- Off-gassing
|
||||
|
||||
# === Structural Measurements ===
|
||||
VibrationMeasurementType:
|
||||
is_a: MeasurementType
|
||||
class_uri: hc:VibrationMeasurementType
|
||||
description: |
|
||||
Vibration measurement type for monitoring mechanical disturbances
|
||||
that may affect fragile objects.
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Vibration
|
||||
aliases:
|
||||
- Shock
|
||||
- Mechanical Disturbance
|
||||
|
||||
# === Pest Monitoring ===
|
||||
PestCountMeasurementType:
|
||||
is_a: MeasurementType
|
||||
class_uri: hc:PestCountMeasurementType
|
||||
description: |
|
||||
Pest monitoring measurement type for tracking insect and rodent activity.
|
||||
Typically recorded as count per trap per time period.
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Pest Count
|
||||
aliases:
|
||||
- Insect Count
|
||||
- Trap Count
|
||||
- IPM Reading
|
||||
|
||||
# === Water/Moisture ===
|
||||
WaterActivityMeasurementType:
|
||||
is_a: MeasurementType
|
||||
class_uri: hc:WaterActivityMeasurementType
|
||||
description: |
|
||||
Water activity (aw) measurement type for monitoring moisture content
|
||||
in materials, particularly important for organic materials.
|
||||
Scale: 0 to 1 (dimensionless).
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Water Activity
|
||||
aliases:
|
||||
- aw
|
||||
- Moisture Content
|
||||
|
||||
# === Other ===
|
||||
DewPointMeasurementType:
|
||||
is_a: MeasurementType
|
||||
class_uri: hc:DewPointMeasurementType
|
||||
description: |
|
||||
Dew point temperature measurement type for assessing condensation risk.
|
||||
Standard unit: degrees Celsius (°C).
|
||||
slot_usage:
|
||||
has_or_had_name:
|
||||
equals_string: Dew Point
|
||||
aliases:
|
||||
- Dew Point Temperature
|
||||
|
|
@ -25,7 +25,7 @@ imports:
|
|||
# - ../slots/birth_place
|
||||
- ../slots/has_or_had_place_of_birth
|
||||
- ./BirthPlace
|
||||
- ../slots/death_place
|
||||
# REMOVED 2026-01-24: ../slots/death_place - migrated to is_deceased.occurs_or_occurred_at (Rule 53)
|
||||
# REMOVED 2026-01-23: ../slots/date_of_death - migrated to is_deceased.temporal_extent (Rule 53)
|
||||
- ../slots/is_deceased # was: deceased - migrated per Rule 53/56/57 (2026-01-23)
|
||||
- ./DeceasedStatus
|
||||
|
|
@ -121,7 +121,7 @@ classes:
|
|||
- contact_email
|
||||
- created
|
||||
# REMOVED 2026-01-23: date_of_death - migrated to is_deceased.temporal_extent (Rule 53)
|
||||
- death_place
|
||||
# REMOVED 2026-01-24: death_place - migrated to is_deceased.occurs_or_occurred_at (Rule 53)
|
||||
- is_deceased # was: deceased - migrated per Rule 53/56/57 (2026-01-23)
|
||||
- expertise_area
|
||||
- extraction_metadata
|
||||
|
|
@ -213,9 +213,7 @@ classes:
|
|||
modern_place_name: Jakarta
|
||||
country_code: ID
|
||||
description: Historical place name
|
||||
death_place:
|
||||
range: string
|
||||
required: false
|
||||
# REMOVED 2026-01-24: death_place - migrated to is_deceased.occurs_or_occurred_at (Rule 53)
|
||||
# REMOVED 2026-01-23: date_of_death - migrated to is_deceased.temporal_extent (Rule 53)
|
||||
is_deceased: # was: deceased - migrated per Rule 53/56/57 (2026-01-23)
|
||||
range: DeceasedStatus
|
||||
|
|
|
|||
77
schemas/20251121/linkml/modules/classes/Price.yaml
Normal file
77
schemas/20251121/linkml/modules/classes/Price.yaml
Normal file
|
|
@ -0,0 +1,77 @@
|
|||
id: https://nde.nl/ontology/hc/class/Price
|
||||
name: Price
|
||||
title: Price
|
||||
description: |
|
||||
Represents price or pricing information with value, currency, and optional range.
|
||||
|
||||
This class supports:
|
||||
- Exact prices (e.g., €15.00 admission)
|
||||
- Price ranges (e.g., € to €€€€ for restaurants)
|
||||
- Price categories (budget, moderate, premium)
|
||||
|
||||
Created per slot_fixes.yaml revision for catering_price_range migration (Rule 53/56).
|
||||
prefixes:
|
||||
linkml: https://w3id.org/linkml/
|
||||
hc: https://nde.nl/ontology/hc/
|
||||
schema: http://schema.org/
|
||||
gr: http://purl.org/goodrelations/v1#
|
||||
imports:
|
||||
- linkml:types
|
||||
- ../slots/has_or_had_value
|
||||
- ../slots/has_or_had_currency
|
||||
- ../slots/has_or_had_type
|
||||
- ./Currency
|
||||
- ./PriceRange
|
||||
default_prefix: hc
|
||||
classes:
|
||||
Price:
|
||||
class_uri: schema:PriceSpecification
|
||||
description: |
|
||||
Price information including value, currency, and optional range/category.
|
||||
|
||||
For catering and services, price ranges use symbolic notation:
|
||||
- € (budget): Under €15 per person
|
||||
- €€ (moderate): €15-30 per person
|
||||
- €€€ (upscale): €30-60 per person
|
||||
- €€€€ (luxury): Over €60 per person
|
||||
slots:
|
||||
- has_or_had_value
|
||||
- has_or_had_currency
|
||||
- has_or_had_type
|
||||
slot_usage:
|
||||
has_or_had_value:
|
||||
description: |
|
||||
The price value. Can be:
|
||||
- Numeric (e.g., "15.00")
|
||||
- Symbolic (e.g., "€€€")
|
||||
- Descriptive (e.g., "free", "donation suggested")
|
||||
has_or_had_currency:
|
||||
description: The currency for this price (e.g., EUR, USD, GBP).
|
||||
range: Currency
|
||||
inlined: true
|
||||
has_or_had_type:
|
||||
description: Price range classification (budget, moderate, premium, luxury).
|
||||
range: PriceRange
|
||||
inlined: true
|
||||
exact_mappings:
|
||||
- schema:PriceSpecification
|
||||
- gr:PriceSpecification
|
||||
examples:
|
||||
- value:
|
||||
has_or_had_value: "€€€€"
|
||||
has_or_had_type:
|
||||
has_or_had_name: Luxury
|
||||
has_or_had_description: Over €60 per person
|
||||
description: Luxury restaurant price range
|
||||
- value:
|
||||
has_or_had_value: "€"
|
||||
has_or_had_type:
|
||||
has_or_had_name: Budget
|
||||
has_or_had_description: Under €15 per person
|
||||
description: Budget cafe price range
|
||||
- value:
|
||||
has_or_had_value: "15.00"
|
||||
has_or_had_currency:
|
||||
has_or_had_code: EUR
|
||||
has_or_had_symbol: €
|
||||
description: Exact admission price
|
||||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue