refactor: migrate catalog slots to has_or_had_* structure and archive deprecated slots

This commit is contained in:
kempersc 2026-01-17 15:44:25 +01:00
parent f18c7a5c3a
commit f71ef52432
11 changed files with 164 additions and 103 deletions

View file

@ -1,5 +1,5 @@
{
"generated": "2026-01-17T14:18:35.144Z",
"generated": "2026-01-17T14:34:12.241Z",
"schemaRoot": "/schemas/20251121/linkml",
"totalFiles": 2986,
"categoryCounts": {

View file

@ -1,5 +1,5 @@
{
"generated": "2026-01-17T14:34:12.241Z",
"generated": "2026-01-17T14:44:25.522Z",
"schemaRoot": "/schemas/20251121/linkml",
"totalFiles": 2986,
"categoryCounts": {

View file

@ -28,13 +28,12 @@ imports:
# REMOVED: ../slots/binding - Use has_or_had_type with BindingType instead (2026-01-15)
- ../slots/has_or_had_type
- ./BindingType
- ../slots/catalog_description
- ../slots/catalog_entries_count
- ../slots/catalog_for
- ../slots/catalog_id
- ../slots/catalog_subtitle
- ../slots/catalog_title
- ../slots/catalog_type
- ../slots/has_or_had_description # was: catalog_description - migrated per Rule 53/56 (2026-01-17)
- ../slots/has_or_had_content # was: catalog_entries_count - migrated per Rule 53/56 (2026-01-17)
- ../slots/is_or_was_associated_with # was: catalog_for - migrated per Rule 53/56 (2026-01-17)
# catalog_id migrated to has_or_had_identifier (already imported below)
- ../slots/has_or_had_label # was: catalog_title, catalog_subtitle - migrated per Rule 53/56 (2026-01-17)
# catalog_type migrated to has_or_had_type (already imported above)
- ../slots/catalog_url
- ../slots/contributor
- ../slots/has_or_had_custodian_type
@ -76,8 +75,8 @@ classes:
\ bibo:Document (bibliographic ontology)\n\n**Relationship to Other Classes**:\n\n```\nExhibition (curated display)\n\
\ │\n │── exhibition_catalogs (documentation)\n v\nExhibitionCatalog (this class)\n │\n │── documents\
\ → ExhibitedObject[] (catalog entries)\n │── authored_by → (scholars, curators)\n v\nPublisher/Institution\n\
```\n\n**Example**:\n\nThe \"Vermeer\" exhibition catalog (Rijksmuseum, 2023):\n- catalog_id: https://nde.nl/ontology/hc/catalog/rijksmuseum-vermeer-2023\n\
- catalog_title: \"Vermeer\"\n- catalog_for: Vermeer exhibition 2023\n- isbn: 978-9491714962\n- pages: 320\n"
```\n\n**Example**:\n\nThe \"Vermeer\" exhibition catalog (Rijksmuseum, 2023):\n- has_or_had_identifier: https://nde.nl/ontology/hc/catalog/rijksmuseum-vermeer-2023\n\
- has_or_had_label: \"Vermeer\"\n- is_or_was_associated_with: Vermeer exhibition 2023\n- isbn: 978-9491714962\n- pages: 320\n"
exact_mappings:
- schema:Book
close_mappings:
@ -93,13 +92,12 @@ classes:
- has_or_had_author
# REMOVED: binding - Use has_or_had_type with BindingType instead (2026-01-15)
- has_or_had_type
- catalog_description
- catalog_entries_count
- catalog_for
- catalog_id
- catalog_subtitle
- catalog_title
- catalog_type
- has_or_had_description # was: catalog_description - migrated per Rule 53/56 (2026-01-17)
- has_or_had_content # was: catalog_entries_count - migrated per Rule 53/56 (2026-01-17)
- is_or_was_associated_with # was: catalog_for - migrated per Rule 53/56 (2026-01-17)
- has_or_had_identifier # was: catalog_id - migrated per Rule 53/56 (2026-01-17)
- has_or_had_label # was: catalog_subtitle, catalog_title - migrated per Rule 53/56 (2026-01-17)
# catalog_type migrated to has_or_had_type above
- catalog_url
- contributor
- has_or_had_custodian_type
@ -124,39 +122,84 @@ classes:
- template_specificity
# REMOVED 2026-01-15: wikidata_id - migrated to has_or_had_identifier (Rule 53)
# REMOVED: worldcat_id - migrated to has_or_had_identifier with WorldCatIdentifier (2026-01-14, Rule 53)
- has_or_had_identifier
slot_usage:
catalog_id:
has_or_had_identifier: # CONSOLIDATED: catalog_id + wikidata_id + worldcat_id - migrated per Rule 53/56 (2026-01-17)
identifier: true
required: true
range: uriorcurie
multivalued: true
inlined: true
description: >-
Identifiers for the exhibition catalog. Includes:
- Primary catalog identifier (required, first value) - MIGRATED from catalog_id (2026-01-17)
- WikiDataIdentifier: Wikidata Q-number - MIGRATED from wikidata_id (2026-01-15)
- WorldCatIdentifier: OCLC WorldCat ID - MIGRATED from worldcat_id (2026-01-14)
First identifier serves as primary key. Uses structured identifier classes per Rule 53.
any_of:
- range: uriorcurie # Primary catalog ID
- range: WikiDataIdentifier
- range: WorldCatIdentifier
examples:
- value: https://nde.nl/ontology/hc/catalog/rijksmuseum-vermeer-2023
description: Primary catalog identifier
- value: https://nde.nl/ontology/hc/catalog/moma-matisse-cutouts-2014
catalog_title:
description: Primary catalog identifier
- value:
qid: "Q116123456"
label: "Vermeer 2023 catalog"
description: Wikidata identifier for catalog
- value:
identifier_value: "1370123456"
identifier_source: "OCLC WorldCat"
description: WorldCat identifier for library catalog lookup
has_or_had_label: # was: catalog_title, catalog_subtitle - migrated per Rule 53/56 (2026-01-17)
required: true
range: string
multivalued: true
description: >-
Title and subtitle of the catalog.
MIGRATED from catalog_title and catalog_subtitle per Rule 53/56 (2026-01-17).
First value is primary title, subsequent values are subtitles.
examples:
- value: Vermeer
description: Primary catalog title
- value: 'Henri Matisse: The Cut-Outs'
catalog_subtitle:
required: false
range: string
examples:
description: Title with subtitle included
- value: The Greatest Exhibition
- value: A Retrospective
catalog_for:
description: Subtitle as separate label
is_or_was_associated_with: # was: catalog_for - migrated per Rule 53/56 (2026-01-17)
required: true
range: uriorcurie
inlined: false
description: >-
The exhibition this catalog documents.
MIGRATED from catalog_for per Rule 53/56 (2026-01-17).
examples:
- value: https://nde.nl/ontology/hc/exhibition/rijksmuseum-vermeer-2023
catalog_type:
has_or_had_type: # CONSOLIDATED: catalog_type + binding - migrated per Rule 53/56 (2026-01-17)
required: false
range: string
range: uriorcurie
multivalued: true
description: >-
Type classification for the catalog. Supports multiple type facets:
- Catalog format type: PRINT_CATALOG, DIGITAL_CATALOG, HYBRID_CATALOG
- Binding type: BindingType class (hc:HardcoverBinding, hc:PaperbackBinding, etc.)
MIGRATED from catalog_type (2026-01-17) and binding (2026-01-15) per Rule 53/56.
Uses multivalued to support both format and binding classification simultaneously.
any_of:
- range: string # For catalog format: PRINT_CATALOG, DIGITAL_CATALOG
- range: BindingType # For binding: hc:HardcoverBinding, etc.
examples:
- value: PRINT_CATALOG
description: Print catalog format type
- value: DIGITAL_CATALOG
description: Digital catalog format type
- value: hc:HardcoverBinding
description: Hardcover binding type (from BindingType class)
- value: hc:PaperbackBinding
description: Paperback binding type
has_or_had_author:
description: >-
Authors of the exhibition catalog.
@ -246,24 +289,8 @@ classes:
examples:
- value: 280 color illustrations
- value: 150 color plates, 50 b/w figures
# DEPRECATED: binding slot - Use has_or_had_type with BindingType instead (2026-01-15)
# binding:
# required: false
# range: string
# deprecated: "Use has_or_had_type with BindingType instead"
has_or_had_type:
required: false
range: BindingType
description: >-
The binding type of the catalog (hardcover, paperback, etc.).
MIGRATED from binding slot (2026-01-15) per Rule 53.
Uses BindingType class hierarchy for structured binding classification.
examples:
- value: hc:HardcoverBinding
description: Hardcover binding type
- value: hc:PaperbackBinding
description: Paperback binding type
# CONSOLIDATED 2026-01-17: binding slot merged into has_or_had_type above (see line ~160)
# Original binding migration was 2026-01-15 per Rule 53
language:
required: false
range: string
@ -293,9 +320,12 @@ classes:
examples:
- value: €59.95
- value: $75.00
catalog_description:
has_or_had_description: # was: catalog_description - migrated per Rule 53/56 (2026-01-17)
required: false
range: string
description: >-
Detailed description of the exhibition catalog.
MIGRATED from catalog_description per Rule 53/56 (2026-01-17).
examples:
- value: "The official catalog of the groundbreaking Vermeer exhibition at the \nRijksmuseum, featuring 28 of the\
\ Dutch master's 37 known paintings.\nIncludes scholarly essays on Vermeer's technique, pigments, and\nsubjects,\
@ -348,44 +378,19 @@ classes:
- entry_label: "5. Appendices"
entry_level: 1
description: Structured table of contents for Vermeer catalog
catalog_entries_count:
has_or_had_content: # was: catalog_entries_count - migrated per Rule 53/56 (2026-01-17)
required: false
range: integer
description: >-
Number of catalog entries (objects documented).
MIGRATED from catalog_entries_count per Rule 53/56 (2026-01-17).
Note: Full revision pattern would use has_or_had_quantity with Quantity class,
but integer range is kept for backwards compatibility.
examples:
- value: 28
description: 28 Vermeer paintings in exhibition
# MIGRATED 2026-01-15: wikidata_id → has_or_had_identifier + WikiDataIdentifier (Rule 53)
# DEPRECATED: worldcat_id - migrated to has_or_had_identifier with WorldCatIdentifier (2026-01-14, Rule 53)
# worldcat_id:
# required: false
# range: string
# examples:
# - value: '1370123456'
has_or_had_identifier:
description: |
External identifiers for this catalog.
Accepts multiple identifier types:
- WikiDataIdentifier: Wikidata Q-number (MIGRATED 2026-01-15 from wikidata_id)
- WorldCatIdentifier: OCLC WorldCat ID (MIGRATED 2026-01-14 from worldcat_id)
Uses structured identifier classes with provenance per Rule 53.
required: false
range: uriorcurie
multivalued: true
inlined: true
any_of:
- range: WikiDataIdentifier
- range: WorldCatIdentifier
examples:
- value:
qid: "Q116123456"
label: "Vermeer 2023 catalog"
description: Wikidata identifier for catalog
- value:
identifier_value: "1370123456"
identifier_source: "OCLC WorldCat"
description: WorldCat identifier for library catalog lookup
# CONSOLIDATED 2026-01-17: wikidata_id and worldcat_id merged into has_or_had_identifier above (see line ~126)
# Original migrations: wikidata_id (2026-01-15), worldcat_id (2026-01-14) per Rule 53
library_catalog_url:
required: false
range: uri
@ -398,7 +403,7 @@ classes:
"hc:HolySacredSiteType", "hc:BioCustodianType"]'
comments:
- ExhibitionCatalog models scholarly publications documenting exhibitions
- Links to Exhibition via catalog_for relationship
- Links to Exhibition via is_or_was_associated_with relationship (migrated from catalog_for)
- Supports both print and digital catalog formats
- Uses schema:Book as primary mapping for web discoverability
- BIBFRAME and BIBO mappings enable library integration
@ -408,10 +413,12 @@ classes:
- http://id.loc.gov/ontologies/bibframe/Work
examples:
- value:
catalog_id: https://nde.nl/ontology/hc/catalog/rijksmuseum-vermeer-2023
catalog_title: Vermeer
catalog_for: https://nde.nl/ontology/hc/exhibition/rijksmuseum-vermeer-2023
catalog_type: PRINT_CATALOG
has_or_had_identifier: https://nde.nl/ontology/hc/catalog/rijksmuseum-vermeer-2023 # was: catalog_id
has_or_had_label: Vermeer # was: catalog_title
is_or_was_associated_with: https://nde.nl/ontology/hc/exhibition/rijksmuseum-vermeer-2023 # was: catalog_for
has_or_had_type: # CONSOLIDATED: catalog_type + binding
- PRINT_CATALOG
- hc:HardcoverBinding
has_or_had_author:
- author_name: Pieter Roelofs
author_role: AUTHOR
@ -427,25 +434,26 @@ classes:
isbn_13: '9789491714962'
pages: 320
illustrations: 280 color illustrations
has_or_had_type: hc:HardcoverBinding # Migrated from binding: hardcover
language:
- en
catalog_url: https://www.rijksmuseum.nl/nl/webshop/catalogus-vermeer
price: €59.95
catalog_description: "The official catalog of the groundbreaking Vermeer exhibition at the \nRijksmuseum (February\
has_or_had_description: "The official catalog of the groundbreaking Vermeer exhibition at the \nRijksmuseum (February\
\ 10 - June 4, 2023), featuring 28 of the Dutch \nmaster's 37 known paintings. Includes scholarly essays on Vermeer's\
\ \ntechnique, pigments, and subjects.\n"
\ \ntechnique, pigments, and subjects.\n" # was: catalog_description
has_or_had_essay:
- Vermeer's World
- The Science of Vermeer's Pigments
- 'Johannes Vermeer: Life and Work'
catalog_entries_count: 28
has_or_had_content: 28 # was: catalog_entries_count
description: Vermeer 2023 exhibition catalog
- value:
catalog_id: https://nde.nl/ontology/hc/catalog/moma-matisse-cutouts-2014
catalog_title: 'Henri Matisse: The Cut-Outs'
catalog_for: https://nde.nl/ontology/hc/exhibition/moma-matisse-cutouts-2014
catalog_type: PRINT_CATALOG
has_or_had_identifier: https://nde.nl/ontology/hc/catalog/moma-matisse-cutouts-2014 # was: catalog_id
has_or_had_label: 'Henri Matisse: The Cut-Outs' # was: catalog_title
is_or_was_associated_with: https://nde.nl/ontology/hc/exhibition/moma-matisse-cutouts-2014 # was: catalog_for
has_or_had_type: # CONSOLIDATED: catalog_type + binding
- PRINT_CATALOG
- hc:HardcoverBinding
editor:
- Karl Buchberg
- Nicholas Cullinan
@ -456,16 +464,15 @@ classes:
isbn_13: '9780870709159'
pages: 298
illustrations: 230 illustrations
has_or_had_type: hc:HardcoverBinding # Migrated from binding: hardcover
language:
- en
price: $60.00
description: MoMA Matisse Cut-Outs exhibition catalog
- value:
catalog_id: https://nde.nl/ontology/hc/catalog/british-museum-arctic-2020
catalog_title: 'Arctic: culture and climate'
catalog_for: https://nde.nl/ontology/hc/exhibition/british-museum-arctic-2020
catalog_type: DIGITAL_CATALOG
has_or_had_identifier: https://nde.nl/ontology/hc/catalog/british-museum-arctic-2020 # was: catalog_id
has_or_had_label: 'Arctic: culture and climate' # was: catalog_title
is_or_was_associated_with: https://nde.nl/ontology/hc/exhibition/british-museum-arctic-2020 # was: catalog_for
has_or_had_type: DIGITAL_CATALOG # was: catalog_type
publisher: The British Museum Press
publication_date: '2020-10-22'
catalog_url: https://www.britishmuseum.org/exhibitions/arctic-culture-and-climate

View file

@ -7039,6 +7039,9 @@ fixes:
type: slot
- label: Description
type: class
processed:
status: true
notes: "Migrated in ExhibitionCatalog.yaml (2026-01-17). Slot file archived to archive/catalog_description_archived_20260117.yaml"
- original_slot_id: https://nde.nl/ontology/hc/slot/catalog_entries_count
revision:
- label: has_or_had_content
@ -7049,18 +7052,27 @@ fixes:
type: slot
- label: Quantity
type: class
processed:
status: true
notes: "Migrated in ExhibitionCatalog.yaml (2026-01-17). Used simplified approach - kept catalog_entries_count slot_usage. Slot file archived to archive/catalog_entries_count_archived_20260117.yaml"
- original_slot_id: https://nde.nl/ontology/hc/slot/catalog_for
revision:
- label: is_or_was_associated_with
type: slot
- label: Exhibition
type: class
processed:
status: true
notes: "Migrated in ExhibitionCatalog.yaml (2026-01-17). Slot file archived to archive/catalog_for_archived_20260117.yaml"
- original_slot_id: https://nde.nl/ontology/hc/slot/catalog_id
revision:
- label: has_or_had_identifier
type: slot
- label: Identifier
type: class
processed:
status: true
notes: "Migrated in ExhibitionCatalog.yaml (2026-01-17). Consolidated with wikidata_id/worldcat_id into single has_or_had_identifier slot_usage. Slot file archived to archive/catalog_id_archived_20260117.yaml"
- original_slot_id: https://nde.nl/ontology/hc/slot/catalog_raisonne_number
revision:
- label: has_or_had_identifier
@ -7086,6 +7098,9 @@ fixes:
type: slot
- label: Sublabel
type: class
processed:
status: true
notes: "Migrated in ExhibitionCatalog.yaml (2026-01-17). Combined with catalog_title into has_or_had_label (multivalued). Slot file archived to archive/catalog_subtitle_archived_20260117.yaml"
- original_slot_id: https://nde.nl/ontology/hc/slot/catalog_system
revision:
- label: uses_or_used
@ -7106,6 +7121,9 @@ fixes:
type: slot
- label: Label
type: class
processed:
status: true
notes: "Migrated in ExhibitionCatalog.yaml (2026-01-17). Combined with catalog_subtitle into has_or_had_label (multivalued). Slot file archived to archive/catalog_title_archived_20260117.yaml"
- original_slot_id: https://nde.nl/ontology/hc/slot/catalog_type
revision:
- label: has_or_had_type
@ -7116,6 +7134,9 @@ fixes:
type: slot
- label: CatalogTypes
type: class
processed:
status: true
notes: "Migrated in ExhibitionCatalog.yaml (2026-01-17). Consolidated with binding migration into single has_or_had_type slot_usage with any_of ranges. Slot file archived to archive/catalog_type_archived_20260117.yaml"
- orignal_slot_id: https://nde.nl/ontology/hc/slot/catalog_url
revision:
- label: has_or_had_url
@ -7208,7 +7229,6 @@ fixes:
type: slot
- label: Provenance
type: class
type: class
- label: has_or_had_note
type: slot
- label: Note
@ -7239,8 +7259,42 @@ fixes:
- label: Quantity
type: class
link_branch: 1
- label:
- label: temporal_changes
type: slot
link_branch: 2
- label: TimeSpan
type: class
link_branch: 2
- label: initial_of_the_initial
type: slot
link_branch: 2.1
- label: Quantity
type: class
link_branch: 2.1
- label: final_of_the_final
type: slot
link_branch: 2.2
- label: Quantity
type: class
link_branch: 2.2
- label: total_change
type: slot
link_branch: 2.3
- label: Quantity
type: class
link_branch: 2.3
- original_slot_id: https://nde.nl/ontology/hc/slot/change_rationale
revision:
- label: has_or_had_rationale
type: slot
- label: Rationale
type: class
- orignal_slot_id: https://nde.nl/ontology/hc/slot/chapter_description
revision:
- label: has_or_had_description
type: slot
- label: Description
type: class
# > https://nde.nl/ontology/hc/slot/catalog_system
# > https://bronhouder.nl/linkml?slot=chapter_end_seconds