- Updated WorldCatIdentifier.yaml to remove unnecessary description and ensure consistent formatting. - Enhanced WorldHeritageSite.yaml by breaking long description into multiple lines for better readability and removed unused attributes. - Simplified WritingSystem.yaml by removing redundant attributes and ensuring consistent formatting. - Cleaned up XPathScore.yaml by removing unnecessary attributes and ensuring consistent formatting. - Improved YoutubeChannel.yaml by breaking long description into multiple lines for better readability. - Enhanced YoutubeEnrichment.yaml by breaking long description into multiple lines for better readability. - Updated YoutubeVideo.yaml to break long description into multiple lines and removed legacy field name. - Refined has_or_had_affiliation.yaml by removing unnecessary comments and ensuring clarity. - Cleaned up is_or_was_retrieved_at.yaml by removing unnecessary comments and ensuring clarity. - Added rules for generic slots and avoiding rough edits in schema files to maintain structural integrity. - Introduced changes_or_changed_through.yaml to define a new slot for linking entities to change events.
76 lines
4.3 KiB
YAML
76 lines
4.3 KiB
YAML
id: https://nde.nl/ontology/hc/classes/UpdateFrequency
|
|
name: UpdateFrequency
|
|
title: UpdateFrequency
|
|
prefixes:
|
|
linkml: https://w3id.org/linkml/
|
|
hc: https://nde.nl/ontology/hc/
|
|
dcterms: http://purl.org/dc/terms/
|
|
dcat: http://www.w3.org/ns/dcat#
|
|
schema: http://schema.org/
|
|
time: http://www.w3.org/2006/time#
|
|
prov: http://www.w3.org/ns/prov#
|
|
crm: http://www.cidoc-crm.org/cidoc-crm/
|
|
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#
|
|
imports:
|
|
- linkml:types
|
|
- ../slots/has_or_had_quantity
|
|
- ../slots/has_or_had_time_interval
|
|
- ./Quantity
|
|
- ./TimeInterval
|
|
default_range: string
|
|
classes:
|
|
UpdateFrequency:
|
|
description: "Structured representation of how often a device, system, or data source sends updates or refreshes data.\n**WHY A DEDICATED CLASS?**\nUpdate frequency is more than a simple string - it has: - **Quantity**: How many updates (e.g., \"5\" in \"every 5 minutes\") - **Time Interval**: The period (e.g., \"minutes\" in \"every 5 minutes\") - **Trigger-based**: Some updates are event-driven, not time-based\n**SLOT_FIXES.YAML REVISION** (lines 1893-1910): - Branch 1: has_or_had_quantity \u2192 Quantity (numeric value) - Branch 2: has_or_had_time_interval \u2192 TimeInterval (duration)\n**ONTOLOGY MAPPING**: - class_uri: dcterms:Frequency (Dublin Core) - Dublin Core `accrualPeriodicity` uses Frequency for collection update rates\n**USE CASES**: - IoT sensors: \"Every 5 minutes\", \"Hourly\", \"Real-time\" - Data feeds: \"Daily\", \"Weekly\", \"Monthly\" - Event-driven: \"On proximity trigger\", \"On change\"\n**EXAMPLES**: - Climate sensor: 5 updates per minute - Beacon: On proximity\
|
|
\ trigger (no time interval) - Database sync: Daily at midnight"
|
|
class_uri: dcterms:Frequency
|
|
exact_mappings:
|
|
- dcterms:Frequency
|
|
- dcat:frequency
|
|
close_mappings:
|
|
- schema:Schedule
|
|
related_mappings:
|
|
- time:TemporalEntity
|
|
slots:
|
|
- has_or_had_quantity
|
|
- has_or_had_time_interval
|
|
attributes:
|
|
frequency_description:
|
|
range: string
|
|
description: 'Human-readable description of the update frequency. Examples: "Every 5 minutes", "Hourly", "Real-time", "On proximity trigger"'
|
|
is_event_driven:
|
|
range: boolean
|
|
description: 'True if updates are triggered by events rather than time intervals. Examples: beacon proximity triggers, change detection, user actions.'
|
|
ifabsent: 'false'
|
|
trigger_type:
|
|
range: string
|
|
description: 'Type of event that triggers updates (when is_event_driven is true). Examples: "proximity", "change", "request", "threshold"'
|
|
slot_usage:
|
|
has_or_had_quantity:
|
|
range: integer
|
|
inlined: true
|
|
examples:
|
|
- value: "has_or_had_quantity:\n numeric_value: 5\n has_or_had_measurement_unit:\n has_or_had_symbol: \"updates\"\n"
|
|
has_or_had_time_interval:
|
|
range: TimeInterval
|
|
inlined: true
|
|
examples:
|
|
- value: "has_or_had_time_interval:\n duration_value: \"PT1M\"\n duration_description: \"per minute\"\n"
|
|
annotations:
|
|
custodian_types: '["*"]'
|
|
custodian_types_rationale: Update frequency applicable to all custodian types with IoT or data systems.
|
|
custodian_types_primary: '*'
|
|
specificity_score: 0.35
|
|
specificity_rationale: Moderate specificity - relevant to custodians with digital/IoT infrastructure.
|
|
examples:
|
|
- value: "UpdateFrequency:\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 duration_description: \"minute\"\n"
|
|
- value: "UpdateFrequency:\n frequency_description: \"Hourly\"\n has_or_had_quantity:\n numeric_value: 1\n has_or_had_time_interval:\n duration_value: \"PT1H\"\n duration_description: \"hour\"\n"
|
|
- value: "UpdateFrequency:\n frequency_description: \"On proximity trigger\"\n is_event_driven: true\n trigger_type: \"proximity\"\n"
|
|
- value: "UpdateFrequency:\n frequency_description: \"Real-time\"\n is_event_driven: true\n trigger_type: \"continuous\"\n"
|
|
comments:
|
|
- Created from slot_fixes.yaml migration (2026-01-14)
|
|
- Replaces simple string update_frequency slot
|
|
- Supports both time-based and event-driven frequencies
|
|
- Uses Dublin Core Frequency class for semantic alignment
|