glam/schemas/20251121/linkml/modules/classes/StorageUnit.yaml
kempersc 6c3fa6b5a3 Remove deprecated slots and add new slot definitions for enhanced data modeling
- Deleted obsolete slot definitions for work_location and workshop_space.
- Introduced new TaxonName class to represent scientific taxonomic names with detailed attributes.
- Archived existing slots related to surname_prefix, target_name, taxon_name, terminal_count, text_region_count, title, title_proper, total_chapter, total_characters_extracted, total_connections_extracted, track_name, transcript_format, traveling_venue, type_label, type_status, typical_responsibility, unesco_domain, unesco_inscription_year, unesco_list_status, uniform_title, unit_name, used_by_custodian, uv_filtered_required, valid_from_geo, valid_to_geo, validation_status, variant_of_name, verification_date, viability_status, within_auxiliary_place, and within_place.
- Updated slot descriptions and structures to improve clarity and compliance with standards.
2026-01-15 11:42:35 +01:00

235 lines
10 KiB
YAML

id: https://nde.nl/ontology/hc/class/StorageUnit
name: storage_unit_class
title: Storage Unit Class
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
crm: http://www.cidoc-crm.org/cidoc-crm/
schema: http://schema.org/
dcterms: http://purl.org/dc/terms/
wd: http://www.wikidata.org/entity/
aat: http://vocab.getty.edu/aat/
default_prefix: hc
imports:
- linkml:types
- ./Storage
- ../enums/StorageUnitTypeEnum
- ../slots/has_or_had_label # was: unit_name - migrated per Rule 53
- ../slots/unit_type
- ../slots/capacity_item
# REMOVED - migrated to has_or_had_identifier with range BayNumber (Rule 53)
# - ../slots/bay_number
# REMOVED - migrated to has_or_had_identifier with range BoxNumber (Rule 53)
# - ../slots/box_number
# REMOVED - migrated to has_or_had_identifier (2026-01-14, Rule 53)
# - ../slots/unit_id
# - ../slots/unit_identifier
- ../slots/has_or_had_identifier
- ./BayNumber
- ./BoxNumber
- ./UnitIdentifier # Added for unit_id/unit_identifier migration (2026-01-14)
- ../slots/current_item_count
- ../slots/drawer_number
- ../slots/part_of_storage
- ../slots/part_of_zone
- ../slots/row_number
- ../slots/shelf_number
- ../slots/specificity_annotation
- ../slots/stores_object
- ../slots/template_specificity
- ../slots/unit_description
# REMOVED - migrated to has_or_had_identifier (2026-01-14, Rule 53)
# - ../slots/unit_id
# - ../slots/unit_identifier
- ../slots/temporal_extent # was: valid_from + valid_to - migrated per Rule 53
- ./TimeSpan
# REMOVED 2026-01-14: valid_from + valid_to - migrated to temporal_extent (Rule 53)
- ./EnvironmentalZone
- ./SpecificityAnnotation
- ./TemplateSpecificityScores
classes:
StorageUnit:
class_uri: hc:StorageUnit
description: "An individual storage compartment, shelf, cabinet, drawer, or other\ndiscrete unit where heritage objects\
\ are physically placed.\n\n**DEFINITION**:\n\nStorageUnit represents the lowest level of spatial organization for\n\
object storage within a heritage institution. This is where physical\nobjects are actually located. Examples include:\n\
- Archive boxes on shelves\n- Flat file drawers for maps/prints\n- Museum storage cabinets\n- Hanging racks for textiles\n\
- Specimen cabinets for natural history\n\n**Wikidata Alignment**:\n- Q1186447 (storage unit)\n- Q854619 (archive box)\n\
\n**HC Ontology Extension (hc-storage.ttl)**:\n\nPrimary class: `hc:StorageUnit` (subclass of `crm:E27_Site`)\n\nThe\
\ HC ontology provides:\n- Named individuals for common storage unit types:\n - `hc:ArchiveBox` - Acid-free boxes for\
\ archival materials\n - `hc:FlatFileDrawer` - Drawers for oversized flat materials\n - `hc:HangingRack` - Racks for\
\ textiles/paintings\n - `hc:CompactShelving` - Mobile shelving systems\n - `hc:SpecimenCabinet` - Cabinets for specimens/artifacts\n\
\ - `hc:ColdStorageVault` - Refrigerated storage\n\nKey HC properties for storage units:\n- `hc:storageUnitIdentifier`\
\ - Local ID/barcode\n- `hc:storageUnitType` - Type classification\n- `hc:rowNumber` - Row/aisle identifier\n- `hc:bayNumber`\
\ - Bay/section within row\n- `hc:shelfNumber` - Shelf level within bay\n- `hc:isStorageSectionOf` - Link to parent\
\ facility/zone\n- `hc:currentlyStores` - Objects in this unit\n\nSee: `frontend/public/ontology/hc-storage.ttl`\n\n\
**CIDOC-CRM Alignment (v7.1.3)**:\n\nBase class: `crm:E27_Site` - Storage units are physical locations.\n\nHierarchy:\
\ Uses P59 has section / P59i is located on or within\nto model the containment relationship:\n```\nStorageFacility\n\
\ └── P59 has_section → EnvironmentalZone\n └── P59 has_section → StorageUnit (row/bay/shelf)\n \
\ └── P55 currently_holds → E18_Physical_Thing\n```\n\n**RELATIONSHIP TO OTHER CLASSES**:\n\n```\nStorage (facility)\n\
\ │\n ├── has_section → EnvironmentalZone[]\n │ └── has_section → StorageUnit[] (THIS CLASS)\n │ ├──\
\ unit_type (StorageUnitTypeEnum)\n │ ├── row_number, bay_number, shelf_number\n │ ├── stores_objects\
\ → HeritageObject[]\n │ └── part_of → EnvironmentalZone | Storage\n │\n └── stores_collections → CustodianCollection[]\n\
```\n\n**USE CASES**:\n\n1. **Archive Box Location**:\n - unit_type: ARCHIVE_BOX\n - row_number: \"A\", bay_number:\
\ \"12\", shelf_number: 3\n - stores_objects: [document_123, document_456]\n \n2. **Flat File Drawer**:\n - unit_type:\
\ FLAT_FILE_DRAWER\n - unit_identifier: \"FF-MAP-0042\"\n - stores_objects: [map_1890_netherlands, blueprint_123]\n\
\ \n3. **Mobile Shelving Bay**:\n - unit_type: COMPACT_SHELVING\n - row_number: \"12\", bay_number: \"C\"\n \
\ - part_of: [depot_a_zone_1]\n"
exact_mappings:
- hc:StorageUnit
- crm:E27_Site
- wikidata:Q1186447
close_mappings:
- aat:300038892
related_mappings:
- hc:StorageFacility
- hc:EnvironmentalZone
- schema:Place
slots:
# MIGRATED from bay_number and box_number to has_or_had_identifier (Rule 53)
# - bay_number
# - box_number
- has_or_had_identifier
- capacity_item
- current_item_count
- drawer_number
- part_of_storage
- part_of_zone
- row_number
- shelf_number
- specificity_annotation
- stores_object
- template_specificity
- unit_description
# REMOVED - migrated to has_or_had_identifier (2026-01-14, Rule 53)
# - unit_id
# - unit_identifier
- has_or_had_label # was: unit_name
- unit_type
- temporal_extent # was: valid_from + valid_to - migrated per Rule 53
slot_usage:
# MIGRATED from unit_id and unit_identifier (2026-01-14, Rule 53)
# unit_id:
# range: uriorcurie
# required: true
# identifier: true
# examples:
# - value: https://nde.nl/ontology/hc/unit/na-depot-a-r12-b3-s4
# description: National Archives Depot A, Row 12, Bay 3, Shelf 4
# unit_identifier:
# range: string
# examples:
# - value: BOX-2024-00145
# - value: FF-MAPS-042
# - value: RACK-TEXT-A12
has_or_had_label: # was: unit_name
range: string
examples:
- value: Archive Box 145 - WWII Correspondence
- value: Map Drawer 42 - Netherlands 19th Century
unit_type:
range: StorageUnitTypeEnum
required: true
unit_description:
range: string
row_number:
range: string
examples:
- value: A
- value: '12'
- value: North-3
has_or_had_identifier:
description: |
Storage unit identifiers including unit IDs, bay numbers, and box numbers.
MIGRATED from bay_number, box_number, unit_id, unit_identifier (Rule 53).
Use UnitIdentifier for storage unit identifiers, BayNumber for bay/section
identifiers, BoxNumber for box positions.
range: uriorcurie
multivalued: true
required: true
identifier: true
examples:
- value: 'https://nde.nl/ontology/hc/unit/na-depot-a-r12-b3-s4'
description: Storage unit URI identifier
- value: '{"type": "UnitIdentifier", "value": "BOX-2024-00145"}'
description: Local box identifier
- value: '{"type": "BayNumber", "value": "3"}'
description: Bay 3 identifier
# DEPRECATED - use has_or_had_identifier with range BayNumber
# bay_number:
# range: string
# examples:
# - value: '3'
# - value: C
shelf_number:
range: integer
examples:
- value: 4
description: Fourth shelf from bottom
drawer_number:
range: integer
examples:
- value: 3
# DEPRECATED - use has_or_had_identifier with range BoxNumber
# box_number:
# range: integer
# examples:
# - value: 12
capacity_item:
range: integer
current_item_count:
range: integer
part_of_storage:
range: Storage
part_of_zone:
range: EnvironmentalZone
stores_object:
range: string
multivalued: true
inlined_as_list: true
comments:
- Range should be HeritageObject when that class is defined
temporal_extent: # was: valid_from + valid_to - migrated per Rule 53
description: |
Validity period using CIDOC-CRM TimeSpan.
MIGRATED from valid_from + valid_to per slot_fixes.yaml (Rule 53).
range: TimeSpan
inlined: true
required: false
comments:
- StorageUnit is the lowest level of spatial organization
- Objects are stored IN units, which are IN zones, which are IN facilities
- 'Use hc: ontology properties for precise semantic mapping'
- Row/bay/shelf numbers follow institution's internal conventions
see_also:
- https://nde.nl/ontology/hc/StorageUnit
- http://vocab.getty.edu/aat/300038892
- https://www.wikidata.org/wiki/Q1186447
examples:
- value:
unit_id: https://nde.nl/ontology/hc/unit/na-depot-a-r12-b3-s4
unit_identifier: NA-2024-BOX-00145
unit_name: Archive Box 145 - WWII Ministry Records
unit_type: ARCHIVE_BOX
unit_description: 'Acid-free archive box containing Ministry of Defense
correspondence from 1940-1945. Handle with care.'
row_number: '12'
has_or_had_identifier:
- value: '3'
_type: BayNumber
shelf_number: 4
part_of_zone: https://nde.nl/ontology/hc/zone/na-depot-a-standard
valid_from: '2020-03-15'
description: Archive box in National Archives depot
- value:
unit_id: https://nde.nl/ontology/hc/unit/rm-depot-ff-042
unit_identifier: FF-MAPS-042
unit_name: Flat File Drawer 42 - Netherlands Maps
unit_type: FLAT_FILE_DRAWER
unit_description: 'Flat file drawer containing oversized maps of the
Netherlands, 1850-1920. Climate-controlled environment.'
drawer_number: 42
capacity_items: 50
current_item_count: 38
part_of_storage: https://nde.nl/ontology/hc/storage/rm-depot-prints
description: Flat file drawer for maps