glam/schemas/20251121/linkml/modules/classes/InternetOfThings.yaml
kempersc fc405445c6 Refactor and update schema definitions
- Removed obsolete slots: `has_or_had_custodian_observation`, `provider`, and `specificity_annotation`.
- Updated `has_or_had_score` slot to use `SpecificityScore` class and modified its description and examples.
- Added new slots: `end_seconds`, `end_time`, `has_archive_path`, `has_or_had_custodian_name`, `protocol_name`, and `protocol_version`.
- Introduced a script `check_annotation_types.py` to validate the presence and structure of `custodian_types` in YAML files.
- Added a script `update_specificity.py` to automate updates related to `SpecificityAnnotation` to `SpecificityScore`.
2026-02-01 19:55:38 +01:00

325 lines
14 KiB
YAML

id: https://nde.nl/ontology/hc/class/InternetOfThings
name: internet_of_things_class
title: InternetOfThings Class
imports:
- linkml:types
- ../slots/connectivity_type
- ../slots/coverage_area
- ../slots/has_or_had_endpoint
- ../slots/has_or_had_frequency
- ../slots/has_or_had_identifier
- ../slots/has_or_had_label
- ../slots/has_or_had_model
- ../slots/has_or_had_output
- ../slots/has_or_had_quantity
- ../slots/has_or_had_score
- ../slots/has_or_had_specification
- ../slots/has_or_had_unit
- ../slots/installation_date
- ../slots/installed_at_place
- ../slots/is_or_was_created_by
- ../slots/is_or_was_decommissioned_at
- ../slots/is_or_was_derived_from
- ../slots/is_or_was_generated_by
- ../slots/is_or_was_instantiated_by
- ../slots/maintenance_schedule
- ../slots/operational_status
- ../slots/power_source
- ../slots/refers_to_custodian
- ../slots/temporal_extent
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
schema: http://schema.org/
sosa: http://www.w3.org/ns/sosa/
ssn: http://www.w3.org/ns/ssn/
dcterms: http://purl.org/dc/terms/
prov: http://www.w3.org/ns/prov#
crm: http://www.cidoc-crm.org/cidoc-crm/
geosparql: http://www.opengis.net/ont/geosparql#
wd: http://www.wikidata.org/entity/
skos: http://www.w3.org/2004/02/skos/core#
rdfs: http://www.w3.org/2000/01/rdf-schema#
org: http://www.w3.org/ns/org#
xsd: http://www.w3.org/2001/XMLSchema#
default_prefix: hc
classes:
InternetOfThings:
is_a: ReconstructedEntity
class_uri: sosa:Platform
description: "Physical device with digital connectivity used by a heritage custodian\nto enhance visitor experience, monitor conditions, or provide services.\n\n**WHY IOT CLASS?**\n\nModern heritage institutions increasingly deploy IoT devices:\n- **Beacons**: Location-based triggers for mobile apps\n- **Kiosks**: Interactive information terminals\n- **Sensors**: Environmental monitoring (climate, light, visitor counts)\n- **Displays**: Digital signage, interactive screens\n\nThese are a form of DIGITAL PRESENCE that bridges physical and digital worlds.\n\n**RELATIONSHIP TO OTHER DIGITAL PRESENCE TYPES**:\n\n```\nDigital Presence Hierarchy:\n\nDigitalPlatform (PRIMARY - websites)\n \u2502\n \u2514\u2500\u2500 AuxiliaryDigitalPlatform (SECONDARY - project sites)\n\nSocialMediaProfile (THIRD-PARTY - external platforms)\n\nInternetOfThings (PHYSICAL-DIGITAL - in-venue devices) \u2190 THIS CLASS\n```\n\n**SOSA/SSN ALIGNMENT**:\n\nW3C Semantic Sensor Network (SSN) and Sensor, Observation,\
\ Sample, \nand Actuator (SOSA) ontologies provide the semantic foundation:\n\n- `sosa:Platform` - Entity hosting sensors/systems (building, room, beacon)\n- `sosa:Sensor` - Device that observes properties\n- `sosa:Observation` - Act of observing a property\n- `ssn:System` - System comprising multiple components\n\n**USE CASES**:\n\n1. **Visitor Experience Enhancement**:\n - Bluetooth beacons trigger app content near artworks\n - NFC tags on object labels for detailed information\n - Interactive kiosks for self-guided exploration\n \n2. **Environmental Monitoring**:\n - Climate sensors (temperature, humidity) for conservation\n - Light level sensors to protect sensitive materials\n - Air quality monitoring in storage areas\n \n3. **Visitor Analytics**:\n - People counters at entrances\n - Heat maps of gallery traffic\n - Dwell time sensors near exhibits\n \n4. **Digital Signage**:\n - Rotating information displays\n - Exhibition schedules\n - Wayfinding\
\ screens\n\n**EXAMPLE - Museum with IoT Devices**:\n\n```yaml\nCustodian:\n has_or_had_identifier: \"https://nde.nl/ontology/hc/nl-nh-ams-m-rm-q190804\"\n preferred_label: \"Rijksmuseum\"\n iot_devices:\n - device_id: \".../iot/rijksmuseum-beacon-gallery-1\"\n device_name: \"Gallery of Honour Beacon Network\"\n device_type: IOT_BEACON\n device_count: 24\n coverage_area: \"Gallery of Honour (main wing)\"\n purpose: \"Proximity triggers for mobile app content\"\n \n - device_id: \".../iot/rijksmuseum-climate-monitor\"\n device_name: \"Conservation Climate Monitoring\"\n device_type: IOT_SENSOR\n device_count: 150\n coverage_area: \"All galleries and storage\"\n purpose: \"Temperature and humidity monitoring for preservation\"\n publishes_to: \"https://dashboard.rijksmuseum.nl/climate\"\n```\n\n**TEMPORAL CONSIDERATIONS**:\n\nIoT devices have installation/decommissioning dates:\n- Beacons may be temporary for exhibitions\n- Sensors\
\ may be upgraded/replaced\n- Kiosks may be moved between venues\n\n**NOT INCLUDED**:\n\n- Smartphones/tablets (user devices, not custodian-owned)\n- Standard IT infrastructure (servers, networking)\n- Security cameras (unless part of heritage experience)\n"
exact_mappings:
- sosa:Platform
- ssn:System
close_mappings:
- schema:Thing
- crm:E22_Human-Made_Object
related_mappings:
- sosa:Sensor
- sosa:Actuator
- schema:Product
slots:
- has_or_had_endpoint
- connectivity_type
- coverage_area
- has_or_had_output
- is_or_was_decommissioned_at
- has_or_had_quantity
- has_or_had_identifier
- is_or_was_created_by
- has_or_had_model
- has_or_had_label
- is_or_was_instantiated_by
- installation_date
- installed_at_place
- maintenance_schedule
- operational_status
- power_source
- refers_to_custodian
- has_or_had_specification
- has_or_had_score
- temporal_extent
- has_or_had_frequency
- is_or_was_derived_from
- is_or_was_generated_by
slot_usage:
has_or_had_identifier:
range: uriorcurie
required: true
identifier: true
examples:
- value: https://nde.nl/ontology/hc/iot/rijksmuseum-beacon-gallery-1
has_or_had_label:
range: Label
inlined: true
required: true
examples:
- value:
label_value: Gallery of Honour Beacon Network
- value:
label_value: Depot Climate Monitoring System
is_or_was_instantiated_by:
range: IoTDevice
inlined: true
required: true
examples:
- value:
has_or_had_type:
has_or_had_label: Bluetooth Beacon
- value:
has_or_had_type:
has_or_had_label: Climate Sensor
- value:
has_or_had_type:
has_or_had_label: Information Kiosk
has_or_had_model:
range: string
inlined: true
required: false
examples:
- value:
has_or_had_label: Estimote Proximity Beacon
- value:
has_or_had_label: Sensirion SHT45
is_or_was_created_by:
range: Manufacturer
inlined: true
required: false
examples:
- value:
has_or_had_label: Estimote
- value:
has_or_had_label: Samsung
has_or_had_quantity:
range: integer
inlined: true
required: false
examples:
- value:
has_or_had_unit:
- value:
has_or_had_unit:
- value:
has_or_had_unit:
coverage_area:
range: string
examples:
- value: Gallery of Honour (main wing)
- value: All galleries and storage areas
- value: Main entrance lobby
- value: Temperature and humidity monitoring for preservation
- value: Self-service collection search for visitors
has_or_had_specification:
range: string
examples:
- value: BLE 5.0, 50m range, 5-year battery, IP67 rated
connectivity_type:
range: string
multivalued: true
examples:
- value: BLUETOOTH_LE
- value: WIFI
power_source:
range: string
examples:
- value: BATTERY
- value: MAINS
- value: https://analytics.museum.nl/beacons
has_or_had_endpoint:
range: APIEndpoint
inlined: true
examples:
- value:
has_or_had_url: https://api.museum.nl/sensors/v1/
has_or_had_description: Sensor data API
has_or_had_output:
range: OutputData
inlined: true
examples:
- value:
has_or_had_format:
has_or_had_type: JsonFormat
has_or_had_description: Sensor readings in JSON format
has_or_had_frequency:
range: UpdateFrequency
inlined: true
examples:
- value: "has_or_had_frequency:\n frequency_description: \"Every 5 minutes\"\n has_or_had_quantity:\n numeric_value: 5\n has_or_had_time_interval:\n duration_value: \"PT1M\"\n"
- value: "has_or_had_frequency:\n frequency_description: \"On proximity trigger\"\n is_event_driven: true\n trigger_type: \"proximity\"\n"
installed_at_place:
range: CustodianPlace
examples:
- value: https://nde.nl/ontology/hc/place/rijksmuseum-gallery-of-honour
installation_date:
range: date
examples:
- value: '2023-06-15'
is_or_was_decommissioned_at:
range: Timestamp
inlined: true
examples:
- value:
has_or_had_timestamp: '2028-12-31'
has_or_had_level: day
temporal_extent:
range: TimeSpan
examples:
- value:
begin_of_the_begin: '2023-06-15'
operational_status:
range: string
examples:
- value: ACTIVE
- value: MAINTENANCE
maintenance_schedule:
range: string
examples:
- value: Monthly battery check
is_or_was_derived_from:
range: CustodianObservation
multivalued: true
required: false
is_or_was_generated_by:
range: ReconstructionActivity
required: false
refers_to_custodian:
range: Custodian
required: true
examples:
- value: https://nde.nl/ontology/hc/nl-nh-ams-m-rm-q190804
comments:
- Models physical devices with digital connectivity (beacons, kiosks, sensors)
- SOSA/SSN ontology alignment for semantic sensor data
- Bridges physical and digital presence of heritage custodians
- Supports environmental monitoring, visitor experience, analytics use cases
- Temporal validity tracks installation and decommission dates
- Links to CustodianPlace for location context
see_also:
- https://www.w3.org/TR/vocab-ssn/
- https://www.w3.org/TR/vocab-sosa/
- https://schema.org/Thing
examples:
- value:
has_or_had_identifier: https://nde.nl/ontology/hc/iot/rijksmuseum-beacon-gallery-honour
has_or_had_label:
has_or_had_label: Gallery of Honour Beacon Network
is_or_was_instantiated_by:
has_or_had_type:
has_or_had_label: Bluetooth Beacon
has_or_had_model:
has_or_had_label: Estimote Proximity Beacon
is_or_was_created_by:
has_or_had_label: Estimote
has_or_had_quantity:
has_or_had_unit:
coverage_area: Gallery of Honour (main wing)
connectivity_type:
- BLUETOOTH_LE
power_source: BATTERY
publishes_to: https://analytics.rijksmuseum.nl/beacons
installation_date: '2019-03-01'
operational_status: ACTIVE
maintenance_schedule: Monthly battery check
refers_to_custodian: https://nde.nl/ontology/hc/nl-nh-ams-m-rm-q190804
- value:
has_or_had_identifier: https://nde.nl/ontology/hc/iot/rijksmuseum-climate-monitoring
has_or_had_label:
has_or_had_label: Conservation Climate Monitoring System
is_or_was_instantiated_by:
has_or_had_type:
has_or_had_label: Climate Sensor
has_or_had_model:
has_or_had_label: Sensirion SHT45
is_or_was_created_by:
has_or_had_label: Sensirion
has_or_had_quantity:
has_or_had_unit:
coverage_area: All galleries and storage areas
connectivity_type:
- WIFI
- LORAWAN
power_source: BATTERY
publishes_to: https://dashboard.rijksmuseum.nl/climate
has_or_had_endpoint:
has_or_had_url: https://api.rijksmuseum.nl/climate/v1/
has_or_had_output:
has_or_had_format:
has_or_had_type: JsonFormat
has_or_had_description: Climate sensor data
has_or_had_frequency:
has_or_had_quantity:
numeric_value: 5
has_or_had_time_interval:
installation_date: '2020-01-15'
operational_status: ACTIVE
maintenance_schedule: Quarterly calibration
refers_to_custodian: https://nde.nl/ontology/hc/nl-nh-ams-m-rm-q190804
- value:
has_or_had_identifier: https://nde.nl/ontology/hc/iot/rijksmuseum-entrance-kiosk
has_or_had_label:
has_or_had_label: Main Entrance Information Kiosks
is_or_was_instantiated_by:
has_or_had_type:
has_or_had_label: Information Kiosk
has_or_had_model:
has_or_had_label: Samsung Kiosk 24 Touch
is_or_was_created_by:
has_or_had_label: Samsung
has_or_had_quantity:
has_or_had_unit:
coverage_area: Main entrance lobby
has_or_had_specification: 24-inch touchscreen, 1920x1080 resolution, wheelchair accessible
connectivity_type:
- ETHERNET
power_source: MAINS
installation_date: '2021-09-01'
operational_status: ACTIVE
maintenance_schedule: Weekly software updates, monthly hardware inspection
refers_to_custodian: https://nde.nl/ontology/hc/nl-nh-ams-m-rm-q190804
annotations:
specificity_score: 0.1
specificity_rationale: Generic utility class/slot created during migration
custodian_types: "['*']"