id: https://nde.nl/ontology/hc/class/StorageCondition name: storage_condition_class title: Storage Condition Observation Class prefixes: linkml: https://w3id.org/linkml/ hc: https://nde.nl/ontology/hc/ crm: http://www.cidoc-crm.org/cidoc-crm/ premis: http://www.loc.gov/premis/rdf/v3/ prov: http://www.w3.org/ns/prov# schema: http://schema.org/ dcterms: http://purl.org/dc/terms/ pico: https://personsincontext.org/model# default_prefix: hc imports: - linkml:types - ./Storage - ./TimeSpan - ../enums/StorageConditionStatusEnum - ../enums/StorageObserverTypeEnum - ../slots/supersede_condition # was: supersede - migrated to class-specific slot 2026-01-16 - ../slots/confidence_score - ../slots/observation_date - ../slots/follow_up_date - ../slots/has_assessment_category - ../slots/has_or_had_category_assessment - ../slots/category_measurement - ../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/compliance_status # REMOVED 2026-01-18: ../slots/condition_id - migrated to has_or_had_identifier + Identifier (Rule 53) - ../slots/has_or_had_identifier # was: condition_id - migrated per Rule 53 (2026-01-18) - ./Identifier - ../slots/evidence_documentation - ../slots/is_official_assessment - ../slots/measurement_data - ../slots/observation_note - ../slots/observation_period - ../slots/observer_affiliation - ../slots/observer_name - ../slots/observer_type - ../slots/overall_status - ../slots/refers_to_storage - ../slots/remediation_note - ../slots/remediation_required - ../slots/specificity_annotation - ../slots/has_or_had_score # was: template_specificity - migrated per Rule 53 (2026-01-17) - ./SpecificityAnnotation - ./TemplateSpecificityScore # was: TemplateSpecificityScores - migrated per Rule 53 (2026-01-17) - ./TemplateSpecificityType - ./TemplateSpecificityTypes classes: StorageCondition: class_uri: hc:StorageConditionAssessment description: "An observation-based report of actual storage conditions.\n\n**DEFINITION**:\n\nStorageCondition represents\ \ a specific assessment or observation of\na storage facility's actual state at a point in time. Multiple\nobservations\ \ can exist for the same storage facility, from different\nobservers with potentially different findings.\n\n**CRITICAL\ \ DISTINCTION**:\n\n- **StorageCondition** (THIS CLASS): What IS - actual observed state\n- **StorageConditionPolicy**:\ \ What SHOULD BE - designed/intended conditions\n\nThe gap between policy and observed condition is often significant\n\ and represents a critical transparency concern.\n\n**PiCo OBSERVATION PATTERN**:\n\nFollowing the Person in Context\ \ (PiCo) ontology pattern, observations\nare NOT assertions of truth but reports from specific observers with\ntheir\ \ own perspectives and potential biases.\n\nA journalist discovering white ants in a storage facility creates an\nobservation\ \ with:\n- observer_type: JOURNALIST\n- condition_status: CRITICAL\n- category: PEST_CONTROL\n- observation_notes: \"\ White ants discovered in main document depot\"\n\nThis observation exists ALONGSIDE any official self-assessment, without\n\ requiring reconciliation of conflicting reports.\n\n**PROV-O ALIGNMENT**:\n\n`prov:Activity` - \"An activity is something\ \ that occurs over a period\nof time and acts upon or with entities; it may include consuming,\nprocessing, transforming,\ \ modifying, relocating, using, or generating\nentities.\"\n\nThe observation activity:\n- `prov:wasAssociatedWith`\ \ → observer (prov:Agent)\n- `prov:used` → storage facility being observed\n- `prov:atTime` → observation timestamp\n\ - `prov:generated` → this condition report\n\n**RELATIONSHIP TO STORAGE CLASS**:\n\n```\nStorage\n │\n ├── storage_conditions[]\ \ → StorageCondition (THIS CLASS)\n │ ├── Observation 1: Internal staff, 2024-06 → GOOD\n │ ├── Observation\ \ 2: Journalist, 2024-09 → CRITICAL (pest issue)\n │ └── Observation 3: Government inspector, 2024-10 → POOR\n\ \ │\n └── condition_policy → StorageConditionPolicy (what SHOULD be)\n```\n\n**USE CASES**:\n\n1. **Regular Internal\ \ Assessment**:\n - observer_type: INTERNAL_STAFF\n - is_official_assessment: true\n - category_assessments: Temperature=GOOD,\ \ Humidity=GOOD\n \n2. **Investigative Journalism**:\n - observer_type: JOURNALIST\n - is_official_assessment:\ \ false\n - observation_notes: \"Photographs show water damage in basement storage\"\n - evidence_documentation:\ \ [URLs to published article]\n \n3. **Government Inspection**:\n - observer_type: GOVERNMENT_INSPECTOR\n - is_official_assessment:\ \ true (regulatory authority)\n - compliance_status: \"NON_COMPLIANT\"\n - remediation_required: true\n \n4. **Automated\ \ Monitoring**:\n - observer_type: AUTOMATED_SYSTEM\n - category: TEMPERATURE\n - measurement_value: \"23.5°C\"\ \n - threshold_exceeded: true\n" exact_mappings: - hc:StorageConditionAssessment - crm:E14_Condition_Assessment - prov:Activity close_mappings: - crm:E7_Activity - premis:Event - pico:Observation - hc:StorageEnvironmentObservation slots: - has_or_had_category_assessment - compliance_status - has_or_had_identifier # was: condition_id - migrated per Rule 53 (2026-01-18) - confidence_score - evidence_documentation - follow_up_date - is_official_assessment - measurement_data - observation_date - observation_note - observation_period - observer_affiliation - observer_name - observer_type - overall_status - refers_to_storage - remediation_note - remediation_required - specificity_annotation - supersede_condition - has_or_had_score # was: template_specificity - migrated per Rule 53 (2026-01-17) slot_usage: has_or_had_identifier: # was: condition_id - migrated per Rule 53 (2026-01-18) description: | MIGRATED from condition_id per slot_fixes.yaml (Rule 53, 2026-01-18). Unique identifier for this condition observation. Uses dcterms:identifier semantics. Uses Identifier class with identifier_scheme for type discrimination. Format: URI following NDE Heritage Custodian ontology conventions. range: Identifier inlined: true required: true identifier: true examples: - value: identifier_scheme: CONDITION_URI identifier_value: "https://nde.nl/ontology/hc/condition/rijksmuseum-depot-2024-q2" description: Q2 2024 assessment of Rijksmuseum depot refers_to_storage: range: Storage required: true examples: - value: https://nde.nl/ontology/hc/storage/rijksmuseum-depot-amersfoort observation_date: range: date required: true examples: - value: '2024-09-15' observation_period: range: TimeSpan examples: - value: Q2 2024 (April-June) observer_type: range: StorageObserverTypeEnum required: true examples: - value: JOURNALIST - value: INTERNAL_STAFF - value: GOVERNMENT_INSPECTOR observer_name: range: string examples: - value: Maria van der Berg - value: Collections Management Team - value: Anonymous (confidential source) observer_affiliation: range: string examples: - value: De Volkskrant - value: Rijksdienst voor het Cultureel Erfgoed - value: ABC Conservation Consultants is_official_assessment: range: boolean required: true examples: - value: true description: Official annual condition survey - value: false description: Journalist investigation overall_status: range: StorageConditionStatusEnum required: true examples: - value: CRITICAL description: White ant infestation discovered - value: GOOD description: All parameters within acceptable ranges has_or_had_category_assessment: range: StorageConditionCategoryAssessment multivalued: true inlined_as_list: true examples: - value: - category: TEMPERATURE status: GOOD measurement: 19.5°C - category: PEST_CONTROL status: CRITICAL has_or_had_note: # was: note - migrated per Rule 53/56 (2026-01-18) - note_type: category note_content: White ants discovered in main depot area observation_note: range: string examples: - value: During routine inspection, white ant damage discovered in south wall of main document storage. Approximately 50 linear meters of shelving affected. Evidence of active infestation - live insects observed. Immediate treatment recommended. evidence_documentation: range: uriorcurie multivalued: true examples: - value: - https://www.volkskrant.nl/archive-pest-investigation-2024 - https://archive.org/evidence/photos/depot-damage-20240915.zip measurement_data: range: string examples: - value: '{"temperature_celsius": 23.5, "humidity_percent": 58, "threshold_exceeded": true}' compliance_status: range: string examples: - value: NON_COMPLIANT description: Does not meet EN 16893:2018 requirements remediation_required: range: boolean examples: - value: true description: Pest treatment required immediately remediation_note: range: string examples: - value: 1. Engage licensed pest control immediately 2. Quarantine affected materials 3. Survey adjacent storage areas 4. Install additional monitoring traps 5. Report to Heritage Inspectorate within 48 hours follow_up_date: range: date examples: - value: '2024-12-01' description: Post-treatment verification inspection confidence_score: range: float minimum_value: 0.0 maximum_value: 1.0 examples: - value: 0.95 description: Government inspector with full access - value: 0.75 description: Journalist with limited access # supersede migrated to supersede_condition # This domain-specific slot has explicit StorageCondition range # to avoid OWL type ambiguity (DatatypeProperty vs ObjectProperty conflict) comments: - Observations are NOT assertions of truth - they are reports from specific observers - Multiple observations may exist for same storage with conflicting findings - Gap between observed conditions and policy conditions is critical transparency metric - External observations (journalists, researchers) may reveal unreported issues - Official assessments vs external investigations treated equally as data - Automated system observations provide objective measurements but require calibration see_also: - http://www.w3.org/ns/prov#Activity - https://www.loc.gov/premis/rdf/v3/Event examples: - value: has_or_had_identifier: # was: condition_id - migrated per Rule 53 (2026-01-18) identifier_scheme: CONDITION_URI identifier_value: "https://nde.nl/ontology/hc/condition/depot-pest-investigation-2024" refers_to_storage: https://nde.nl/ontology/hc/storage/national-archive-depot-b observation_date: '2024-09-15' observer_type: JOURNALIST observer_name: Jan de Vries observer_affiliation: De Volkskrant is_official_assessment: false overall_status: CRITICAL has_or_had_category_assessment: - category: PEST_CONTROL status: CRITICAL has_or_had_note: # was: note - migrated per Rule 53/56 (2026-01-18) - note_type: category note_content: White ants discovered in main document depot observation_notes: Investigative visit revealed active termite infestation in south section of Document Depot B. Approximately 50 linear meters of historical documents at risk. Institution was unaware of extent of damage until contacted for comment. evidence_documentation: - https://www.volkskrant.nl/archive-pest-crisis-2024 remediation_required: true confidence_score: 0.85 description: Journalist investigation discovering unreported pest infestation - value: has_or_had_identifier: # was: condition_id - migrated per Rule 53 (2026-01-18) identifier_scheme: CONDITION_URI identifier_value: "https://nde.nl/ontology/hc/condition/rijksmuseum-q2-2024" refers_to_storage: https://nde.nl/ontology/hc/storage/rijksmuseum-depot-amersfoort observation_date: '2024-06-30' observation_period: start_date: '2024-04-01' end_date: '2024-06-30' observer_type: INTERNAL_STAFF observer_name: Collections Management Team observer_affiliation: Rijksmuseum is_official_assessment: true overall_status: GOOD has_or_had_category_assessment: - category: TEMPERATURE status: EXCELLENT measurement: 18.5°C average - category: HUMIDITY status: GOOD measurement: 48% RH average - category: PEST_CONTROL status: GOOD has_or_had_note: # was: note - migrated per Rule 53/56 (2026-01-18) - note_type: category note_content: No pest activity detected in monitoring traps - category: SECURITY status: EXCELLENT observation_notes: Quarterly facilities review. All parameters within policy ranges. compliance_status: COMPLIANT remediation_required: false confidence_score: 0.9 description: Official quarterly internal assessment StorageConditionCategoryAssessment: class_uri: hc:StorageConditionCategoryAssessment description: 'Individual category assessment within a StorageCondition observation. Allows granular reporting of different condition categories with independent status levels. ' slots: - has_assessment_category - category_measurement - has_or_had_note # was: category_note - migrated per Rule 53/56 (2026-01-18) - category_status - 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 required: true category_measurement: range: string 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). Notes specific to this category assessment. Use note_type: "category" for category-specific notes. range: Note multivalued: true inlined: true inlined_as_list: true examples: - value: - note_type: category note_content: "White ants discovered in main depot area" description: Pest control observation note