feat: Migrate capacity_value and cut_count to structured has_or_had_quantity; archive previous slots and update related schemas
This commit is contained in:
parent
3c9926956e
commit
4efaef60e4
18 changed files with 795 additions and 45 deletions
|
|
@ -1,5 +1,5 @@
|
||||||
{
|
{
|
||||||
"generated": "2026-01-22T19:41:07.059Z",
|
"generated": "2026-01-22T21:08:05.291Z",
|
||||||
"schemaRoot": "/schemas/20251121/linkml",
|
"schemaRoot": "/schemas/20251121/linkml",
|
||||||
"totalFiles": 3037,
|
"totalFiles": 3037,
|
||||||
"categoryCounts": {
|
"categoryCounts": {
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
{
|
{
|
||||||
"generated": "2026-01-22T21:08:05.291Z",
|
"generated": "2026-01-22T21:16:36.017Z",
|
||||||
"schemaRoot": "/schemas/20251121/linkml",
|
"schemaRoot": "/schemas/20251121/linkml",
|
||||||
"totalFiles": 3037,
|
"totalFiles": 3037,
|
||||||
"categoryCounts": {
|
"categoryCounts": {
|
||||||
|
|
|
||||||
|
|
@ -24,7 +24,9 @@ imports:
|
||||||
- ../slots/has_or_had_status
|
- ../slots/has_or_had_status
|
||||||
- ./BudgetStatus
|
- ./BudgetStatus
|
||||||
- ../slots/has_or_had_type
|
- ../slots/has_or_had_type
|
||||||
- ../slots/capital_budget
|
# MIGRATED 2026-01-22: capital_budget → has_or_had_main_part + MainPart per slot_fixes.yaml revision
|
||||||
|
- ../slots/has_or_had_main_part
|
||||||
|
- ./MainPart
|
||||||
- ./BudgetType
|
- ./BudgetType
|
||||||
- ../slots/digitization_budget
|
- ../slots/digitization_budget
|
||||||
- ../slots/documented_by
|
- ../slots/documented_by
|
||||||
|
|
@ -115,7 +117,8 @@ classes:
|
||||||
# - budget_status
|
# - budget_status
|
||||||
- has_or_had_status
|
- has_or_had_status
|
||||||
- has_or_had_type
|
- has_or_had_type
|
||||||
- capital_budget
|
# MIGRATED 2026-01-22: capital_budget → has_or_had_main_part + MainPart per slot_fixes.yaml revision
|
||||||
|
- has_or_had_main_part
|
||||||
- digitization_budget
|
- digitization_budget
|
||||||
- documented_by
|
- documented_by
|
||||||
- endowment_draw
|
- endowment_draw
|
||||||
|
|
@ -258,9 +261,22 @@ classes:
|
||||||
operating_budget:
|
operating_budget:
|
||||||
range: decimal
|
range: decimal
|
||||||
required: false
|
required: false
|
||||||
capital_budget:
|
# MIGRATED 2026-01-22: capital_budget → has_or_had_main_part + MainPart per slot_fixes.yaml revision
|
||||||
range: decimal
|
has_or_had_main_part:
|
||||||
|
range: MainPart
|
||||||
|
inlined: true
|
||||||
required: false
|
required: false
|
||||||
|
description: |
|
||||||
|
Capital budget allocation (infrastructure, equipment, major purchases).
|
||||||
|
MIGRATED from capital_budget per slot_fixes.yaml (Rule 53, 2026-01-22).
|
||||||
|
MainPart provides structured representation with Quantity for amount and currency metadata.
|
||||||
|
examples:
|
||||||
|
- value:
|
||||||
|
has_or_had_quantity:
|
||||||
|
quantity_value: 3000000.0
|
||||||
|
part_type: capital_budget
|
||||||
|
currency_code: EUR
|
||||||
|
description: Capital budget of 3 million EUR
|
||||||
has_or_had_acquisition_budget:
|
has_or_had_acquisition_budget:
|
||||||
range: decimal
|
range: decimal
|
||||||
required: false
|
required: false
|
||||||
|
|
@ -389,7 +405,11 @@ classes:
|
||||||
has_or_had_label: Euro
|
has_or_had_label: Euro
|
||||||
currency_symbol: €
|
currency_symbol: €
|
||||||
operating_budget: 38000000.0
|
operating_budget: 38000000.0
|
||||||
capital_budget: 3000000.0
|
has_or_had_main_part:
|
||||||
|
has_or_had_quantity:
|
||||||
|
quantity_value: 3000000.0
|
||||||
|
part_type: capital_budget
|
||||||
|
currency_code: EUR
|
||||||
acquisition_budget: 2000000.0
|
acquisition_budget: 2000000.0
|
||||||
personnel_budget: 22000000.0
|
personnel_budget: 22000000.0
|
||||||
preservation_budget: 1500000.0
|
preservation_budget: 1500000.0
|
||||||
|
|
@ -421,7 +441,11 @@ classes:
|
||||||
has_or_had_label: Euro
|
has_or_had_label: Euro
|
||||||
currency_symbol: €
|
currency_symbol: €
|
||||||
operating_budget: 7500000.0
|
operating_budget: 7500000.0
|
||||||
capital_budget: 500000.0
|
has_or_had_main_part:
|
||||||
|
has_or_had_quantity:
|
||||||
|
quantity_value: 500000.0
|
||||||
|
part_type: capital_budget
|
||||||
|
currency_code: EUR
|
||||||
personnel_budget: 5200000.0
|
personnel_budget: 5200000.0
|
||||||
digitization_budget: 800000.0
|
digitization_budget: 800000.0
|
||||||
external_funding: 6000000.0
|
external_funding: 6000000.0
|
||||||
|
|
|
||||||
153
schemas/20251121/linkml/modules/classes/DataFormat.yaml
Normal file
153
schemas/20251121/linkml/modules/classes/DataFormat.yaml
Normal file
|
|
@ -0,0 +1,153 @@
|
||||||
|
# DataFormat - Class for data format specifications
|
||||||
|
#
|
||||||
|
# Created per slot_fixes.yaml migration for: data_format
|
||||||
|
# Creation date: 2026-01-22
|
||||||
|
# Rule compliance: 39 (RiC-O naming), 50 (ontology mapping), 53 (generic slot reuse), 0b (Type/Types)
|
||||||
|
|
||||||
|
id: https://nde.nl/ontology/hc/class/DataFormat
|
||||||
|
name: data_format_class
|
||||||
|
title: Data Format
|
||||||
|
|
||||||
|
prefixes:
|
||||||
|
linkml: https://w3id.org/linkml/
|
||||||
|
hc: https://nde.nl/ontology/hc/
|
||||||
|
schema: http://schema.org/
|
||||||
|
dct: http://purl.org/dc/terms/
|
||||||
|
|
||||||
|
default_prefix: hc
|
||||||
|
|
||||||
|
imports:
|
||||||
|
- linkml:types
|
||||||
|
- ../slots/has_or_had_type
|
||||||
|
- ../slots/has_or_had_label
|
||||||
|
- ../slots/has_or_had_description
|
||||||
|
|
||||||
|
classes:
|
||||||
|
DataFormat:
|
||||||
|
class_uri: hc:DataFormat
|
||||||
|
description: |
|
||||||
|
Specification of a data format for files, APIs, or data streams.
|
||||||
|
|
||||||
|
**DEFINITION**:
|
||||||
|
DataFormat captures format characteristics including type, media type,
|
||||||
|
schema references, and encoding specifications.
|
||||||
|
|
||||||
|
**USAGE**:
|
||||||
|
- API response formats (JSON, XML, RDF)
|
||||||
|
- File formats (CSV, Excel, PDF, TIFF)
|
||||||
|
- Streaming protocols (MQTT, WebSocket payloads)
|
||||||
|
- Archival formats (METS, EAD, MARC)
|
||||||
|
|
||||||
|
**ONTOLOGY ALIGNMENT**:
|
||||||
|
- **Primary** (`class_uri`): `hc:DataFormat` - Heritage Custodian class
|
||||||
|
- **Close**: `dct:MediaTypeOrExtent` - Dublin Core media type
|
||||||
|
- **Close**: `schema:encodingFormat` - Schema.org encoding
|
||||||
|
|
||||||
|
**Common Format Types**:
|
||||||
|
| Type | Media Type | Use Case |
|
||||||
|
|------|------------|----------|
|
||||||
|
| JSON | application/json | API responses, config |
|
||||||
|
| XML | application/xml | Legacy APIs, metadata |
|
||||||
|
| CSV | text/csv | Data exports, tabular |
|
||||||
|
| RDF | application/rdf+xml | Linked data |
|
||||||
|
| SensorML | application/xml | Sensor metadata |
|
||||||
|
|
||||||
|
**Example**:
|
||||||
|
```yaml
|
||||||
|
has_or_had_format:
|
||||||
|
has_or_had_type: JsonFormat
|
||||||
|
has_or_had_media_type: "application/json"
|
||||||
|
has_or_had_encoding: "UTF-8"
|
||||||
|
```
|
||||||
|
|
||||||
|
close_mappings:
|
||||||
|
- dct:MediaTypeOrExtent
|
||||||
|
- schema:encodingFormat
|
||||||
|
|
||||||
|
slots:
|
||||||
|
- has_or_had_type
|
||||||
|
- has_or_had_label
|
||||||
|
- has_or_had_description
|
||||||
|
- has_or_had_media_type
|
||||||
|
- has_or_had_encoding
|
||||||
|
- has_or_had_schema_url
|
||||||
|
|
||||||
|
slot_usage:
|
||||||
|
has_or_had_type:
|
||||||
|
range: DataFormatType
|
||||||
|
description: |
|
||||||
|
The format type classification.
|
||||||
|
Links to DataFormatType taxonomy (JSON, XML, CSV, etc.).
|
||||||
|
examples:
|
||||||
|
- value: JsonFormat
|
||||||
|
description: JSON format type
|
||||||
|
- value: CsvFormat
|
||||||
|
description: CSV format type
|
||||||
|
has_or_had_label:
|
||||||
|
range: Label
|
||||||
|
inlined: true
|
||||||
|
description: Human-readable name for the format.
|
||||||
|
examples:
|
||||||
|
- value:
|
||||||
|
label_text: "JSON"
|
||||||
|
description: Format label
|
||||||
|
has_or_had_media_type:
|
||||||
|
range: string
|
||||||
|
description: |
|
||||||
|
IANA media type (MIME type) for the format.
|
||||||
|
See: https://www.iana.org/assignments/media-types/
|
||||||
|
examples:
|
||||||
|
- value: "application/json"
|
||||||
|
description: JSON media type
|
||||||
|
- value: "text/csv"
|
||||||
|
description: CSV media type
|
||||||
|
has_or_had_encoding:
|
||||||
|
range: string
|
||||||
|
description: Character encoding used (e.g., UTF-8, ISO-8859-1).
|
||||||
|
examples:
|
||||||
|
- value: "UTF-8"
|
||||||
|
description: Unicode encoding
|
||||||
|
has_or_had_schema_url:
|
||||||
|
range: uri
|
||||||
|
description: URL to schema definition (JSON Schema, XSD, etc.).
|
||||||
|
examples:
|
||||||
|
- value: "https://api.museum.nl/schemas/v1/climate.json"
|
||||||
|
description: JSON Schema URL
|
||||||
|
|
||||||
|
attributes:
|
||||||
|
has_or_had_media_type:
|
||||||
|
range: string
|
||||||
|
description: IANA media type (MIME type).
|
||||||
|
has_or_had_encoding:
|
||||||
|
range: string
|
||||||
|
description: Character encoding (e.g., UTF-8).
|
||||||
|
has_or_had_schema_url:
|
||||||
|
range: uri
|
||||||
|
description: URL to schema definition.
|
||||||
|
|
||||||
|
annotations:
|
||||||
|
custodian_types: '["*"]'
|
||||||
|
custodian_types_rationale: "Data format specifications apply to all custodian types with digital systems."
|
||||||
|
specificity_score: 0.55
|
||||||
|
specificity_rationale: "Moderately specific to digital platform and API contexts."
|
||||||
|
|
||||||
|
# Type class for format taxonomy (Rule 0b: Type/Types pattern)
|
||||||
|
DataFormatType:
|
||||||
|
class_uri: hc:DataFormatType
|
||||||
|
abstract: true
|
||||||
|
description: |
|
||||||
|
Abstract base class for data format type taxonomy.
|
||||||
|
|
||||||
|
**Type/Types Pattern** (Rule 0b):
|
||||||
|
- `DataFormatType` (this file): Abstract base class
|
||||||
|
- `DataFormatTypes.yaml`: Concrete subclasses (JsonFormat, XmlFormat, etc.)
|
||||||
|
|
||||||
|
Subclasses define specific format types used in heritage data systems.
|
||||||
|
|
||||||
|
slots:
|
||||||
|
- has_or_had_label
|
||||||
|
- has_or_had_description
|
||||||
|
|
||||||
|
annotations:
|
||||||
|
custodian_types: '["*"]'
|
||||||
|
custodian_types_rationale: "Format types applicable universally."
|
||||||
217
schemas/20251121/linkml/modules/classes/DataFormatTypes.yaml
Normal file
217
schemas/20251121/linkml/modules/classes/DataFormatTypes.yaml
Normal file
|
|
@ -0,0 +1,217 @@
|
||||||
|
# DataFormatTypes - Concrete subclasses for data format taxonomy
|
||||||
|
#
|
||||||
|
# Created per slot_fixes.yaml migration for: data_format
|
||||||
|
# Creation date: 2026-01-22
|
||||||
|
# Rule compliance: 0b (Type/Types pattern), 39 (RiC-O naming)
|
||||||
|
|
||||||
|
id: https://nde.nl/ontology/hc/class/DataFormatTypes
|
||||||
|
name: data_format_types
|
||||||
|
title: Data Format Types
|
||||||
|
|
||||||
|
prefixes:
|
||||||
|
linkml: https://w3id.org/linkml/
|
||||||
|
hc: https://nde.nl/ontology/hc/
|
||||||
|
|
||||||
|
default_prefix: hc
|
||||||
|
|
||||||
|
imports:
|
||||||
|
- linkml:types
|
||||||
|
- ./DataFormat
|
||||||
|
|
||||||
|
classes:
|
||||||
|
# ===== Common Data Interchange Formats =====
|
||||||
|
|
||||||
|
JsonFormat:
|
||||||
|
is_a: DataFormatType
|
||||||
|
class_uri: hc:JsonFormat
|
||||||
|
description: |
|
||||||
|
JavaScript Object Notation (JSON) format.
|
||||||
|
Media type: application/json
|
||||||
|
Common for APIs, configuration, and data exchange.
|
||||||
|
annotations:
|
||||||
|
media_type: "application/json"
|
||||||
|
|
||||||
|
XmlFormat:
|
||||||
|
is_a: DataFormatType
|
||||||
|
class_uri: hc:XmlFormat
|
||||||
|
description: |
|
||||||
|
Extensible Markup Language (XML) format.
|
||||||
|
Media type: application/xml
|
||||||
|
Common for legacy APIs, metadata standards.
|
||||||
|
annotations:
|
||||||
|
media_type: "application/xml"
|
||||||
|
|
||||||
|
CsvFormat:
|
||||||
|
is_a: DataFormatType
|
||||||
|
class_uri: hc:CsvFormat
|
||||||
|
description: |
|
||||||
|
Comma-Separated Values (CSV) format.
|
||||||
|
Media type: text/csv
|
||||||
|
Common for tabular data exports.
|
||||||
|
annotations:
|
||||||
|
media_type: "text/csv"
|
||||||
|
|
||||||
|
# ===== Linked Data Formats =====
|
||||||
|
|
||||||
|
RdfXmlFormat:
|
||||||
|
is_a: DataFormatType
|
||||||
|
class_uri: hc:RdfXmlFormat
|
||||||
|
description: |
|
||||||
|
RDF/XML serialization format.
|
||||||
|
Media type: application/rdf+xml
|
||||||
|
W3C standard for RDF serialization.
|
||||||
|
annotations:
|
||||||
|
media_type: "application/rdf+xml"
|
||||||
|
|
||||||
|
TurtleFormat:
|
||||||
|
is_a: DataFormatType
|
||||||
|
class_uri: hc:TurtleFormat
|
||||||
|
description: |
|
||||||
|
Turtle (Terse RDF Triple Language) format.
|
||||||
|
Media type: text/turtle
|
||||||
|
Human-readable RDF serialization.
|
||||||
|
annotations:
|
||||||
|
media_type: "text/turtle"
|
||||||
|
|
||||||
|
JsonLdFormat:
|
||||||
|
is_a: DataFormatType
|
||||||
|
class_uri: hc:JsonLdFormat
|
||||||
|
description: |
|
||||||
|
JSON for Linked Data (JSON-LD) format.
|
||||||
|
Media type: application/ld+json
|
||||||
|
JSON-based linked data serialization.
|
||||||
|
annotations:
|
||||||
|
media_type: "application/ld+json"
|
||||||
|
|
||||||
|
NTriplesFormat:
|
||||||
|
is_a: DataFormatType
|
||||||
|
class_uri: hc:NTriplesFormat
|
||||||
|
description: |
|
||||||
|
N-Triples format for RDF.
|
||||||
|
Media type: application/n-triples
|
||||||
|
Line-based RDF serialization.
|
||||||
|
annotations:
|
||||||
|
media_type: "application/n-triples"
|
||||||
|
|
||||||
|
# ===== Sensor/IoT Formats =====
|
||||||
|
|
||||||
|
SensorMlFormat:
|
||||||
|
is_a: DataFormatType
|
||||||
|
class_uri: hc:SensorMlFormat
|
||||||
|
description: |
|
||||||
|
Sensor Model Language (SensorML) format.
|
||||||
|
OGC standard for sensor metadata and processes.
|
||||||
|
annotations:
|
||||||
|
media_type: "application/xml"
|
||||||
|
standard: "OGC SensorML"
|
||||||
|
|
||||||
|
MqttPayloadFormat:
|
||||||
|
is_a: DataFormatType
|
||||||
|
class_uri: hc:MqttPayloadFormat
|
||||||
|
description: |
|
||||||
|
MQTT message payload format.
|
||||||
|
Used for IoT device communication.
|
||||||
|
Actual payload typically JSON or binary.
|
||||||
|
annotations:
|
||||||
|
protocol: "MQTT"
|
||||||
|
|
||||||
|
# ===== Heritage Metadata Formats =====
|
||||||
|
|
||||||
|
EadFormat:
|
||||||
|
is_a: DataFormatType
|
||||||
|
class_uri: hc:EadFormat
|
||||||
|
description: |
|
||||||
|
Encoded Archival Description (EAD) format.
|
||||||
|
Media type: application/xml
|
||||||
|
Standard for archival finding aids.
|
||||||
|
annotations:
|
||||||
|
media_type: "application/xml"
|
||||||
|
standard: "EAD3"
|
||||||
|
|
||||||
|
MarcXmlFormat:
|
||||||
|
is_a: DataFormatType
|
||||||
|
class_uri: hc:MarcXmlFormat
|
||||||
|
description: |
|
||||||
|
MARC 21 XML format.
|
||||||
|
Media type: application/marcxml+xml
|
||||||
|
Library bibliographic record format.
|
||||||
|
annotations:
|
||||||
|
media_type: "application/marcxml+xml"
|
||||||
|
standard: "MARC21"
|
||||||
|
|
||||||
|
MetsFormat:
|
||||||
|
is_a: DataFormatType
|
||||||
|
class_uri: hc:MetsFormat
|
||||||
|
description: |
|
||||||
|
Metadata Encoding and Transmission Standard (METS).
|
||||||
|
Media type: application/xml
|
||||||
|
Digital library object packaging.
|
||||||
|
annotations:
|
||||||
|
media_type: "application/xml"
|
||||||
|
standard: "METS"
|
||||||
|
|
||||||
|
LidoFormat:
|
||||||
|
is_a: DataFormatType
|
||||||
|
class_uri: hc:LidoFormat
|
||||||
|
description: |
|
||||||
|
Lightweight Information Describing Objects (LIDO).
|
||||||
|
Media type: application/xml
|
||||||
|
Museum object description harvesting.
|
||||||
|
annotations:
|
||||||
|
media_type: "application/xml"
|
||||||
|
standard: "LIDO"
|
||||||
|
|
||||||
|
DublinCoreFormat:
|
||||||
|
is_a: DataFormatType
|
||||||
|
class_uri: hc:DublinCoreFormat
|
||||||
|
description: |
|
||||||
|
Dublin Core metadata format (DC or qualified DC).
|
||||||
|
Media type: application/xml
|
||||||
|
General-purpose metadata standard.
|
||||||
|
annotations:
|
||||||
|
media_type: "application/xml"
|
||||||
|
standard: "Dublin Core"
|
||||||
|
|
||||||
|
# ===== Document Formats =====
|
||||||
|
|
||||||
|
PdfFormat:
|
||||||
|
is_a: DataFormatType
|
||||||
|
class_uri: hc:PdfFormat
|
||||||
|
description: |
|
||||||
|
Portable Document Format (PDF).
|
||||||
|
Media type: application/pdf
|
||||||
|
Document distribution and archival.
|
||||||
|
annotations:
|
||||||
|
media_type: "application/pdf"
|
||||||
|
|
||||||
|
HtmlFormat:
|
||||||
|
is_a: DataFormatType
|
||||||
|
class_uri: hc:HtmlFormat
|
||||||
|
description: |
|
||||||
|
HyperText Markup Language (HTML).
|
||||||
|
Media type: text/html
|
||||||
|
Web page content.
|
||||||
|
annotations:
|
||||||
|
media_type: "text/html"
|
||||||
|
|
||||||
|
PlainTextFormat:
|
||||||
|
is_a: DataFormatType
|
||||||
|
class_uri: hc:PlainTextFormat
|
||||||
|
description: |
|
||||||
|
Plain text format.
|
||||||
|
Media type: text/plain
|
||||||
|
Unformatted text content.
|
||||||
|
annotations:
|
||||||
|
media_type: "text/plain"
|
||||||
|
|
||||||
|
# ===== Binary/Media Formats =====
|
||||||
|
|
||||||
|
BinaryFormat:
|
||||||
|
is_a: DataFormatType
|
||||||
|
class_uri: hc:BinaryFormat
|
||||||
|
description: |
|
||||||
|
Generic binary data format.
|
||||||
|
Media type: application/octet-stream
|
||||||
|
Raw binary data streams.
|
||||||
|
annotations:
|
||||||
|
media_type: "application/octet-stream"
|
||||||
80
schemas/20251121/linkml/modules/classes/MainPart.yaml
Normal file
80
schemas/20251121/linkml/modules/classes/MainPart.yaml
Normal file
|
|
@ -0,0 +1,80 @@
|
||||||
|
id: https://nde.nl/ontology/hc/class/MainPart
|
||||||
|
name: main_part_class
|
||||||
|
title: Main Part Class
|
||||||
|
prefixes:
|
||||||
|
linkml: https://w3id.org/linkml/
|
||||||
|
hc: https://nde.nl/ontology/hc/
|
||||||
|
schema: http://schema.org/
|
||||||
|
dcterms: http://purl.org/dc/terms/
|
||||||
|
imports:
|
||||||
|
- linkml:types
|
||||||
|
- ../slots/has_or_had_quantity
|
||||||
|
- ./Quantity
|
||||||
|
default_prefix: hc
|
||||||
|
|
||||||
|
classes:
|
||||||
|
MainPart:
|
||||||
|
class_uri: schema:QuantitativeValue
|
||||||
|
description: >-
|
||||||
|
Represents a principal/primary portion of something with quantified value.
|
||||||
|
|
||||||
|
**PURPOSE**:
|
||||||
|
|
||||||
|
MainPart provides structured representation for primary allocations such as:
|
||||||
|
- Capital budget (principal budget for infrastructure/equipment)
|
||||||
|
- Primary funding amount
|
||||||
|
- Main portion of a larger whole
|
||||||
|
|
||||||
|
**ONTOLOGY ALIGNMENT**:
|
||||||
|
|
||||||
|
| Ontology | Mapping | Rationale |
|
||||||
|
|----------|---------|-----------|
|
||||||
|
| Schema.org | schema:QuantitativeValue | Quantified value |
|
||||||
|
|
||||||
|
**USE CASES**:
|
||||||
|
- Capital budget allocation in institutional budgets
|
||||||
|
- Primary collection value
|
||||||
|
- Main funding allocation
|
||||||
|
|
||||||
|
MIGRATED 2026-01-22: Created per slot_fixes.yaml revision for capital_budget.
|
||||||
|
Replaces simple decimal capital_budget with structured class.
|
||||||
|
exact_mappings:
|
||||||
|
- schema:QuantitativeValue
|
||||||
|
slots:
|
||||||
|
- has_or_had_quantity
|
||||||
|
slot_usage:
|
||||||
|
has_or_had_quantity:
|
||||||
|
range: Quantity
|
||||||
|
required: true
|
||||||
|
inlined: true
|
||||||
|
description: >-
|
||||||
|
The quantified value of this main part.
|
||||||
|
For capital budget: Quantity.quantity_value = amount, currency in metadata.
|
||||||
|
attributes:
|
||||||
|
part_type:
|
||||||
|
range: string
|
||||||
|
required: false
|
||||||
|
description: >-
|
||||||
|
Type of main part (e.g., "capital_budget", "primary_allocation", "main_funding").
|
||||||
|
currency_code:
|
||||||
|
range: string
|
||||||
|
required: false
|
||||||
|
description: >-
|
||||||
|
ISO 4217 currency code for financial values (e.g., "EUR", "USD", "GBP").
|
||||||
|
examples:
|
||||||
|
- value:
|
||||||
|
has_or_had_quantity:
|
||||||
|
quantity_value: 3000000.0
|
||||||
|
part_type: capital_budget
|
||||||
|
currency_code: EUR
|
||||||
|
description: Capital budget of 3 million EUR
|
||||||
|
- value:
|
||||||
|
has_or_had_quantity:
|
||||||
|
quantity_value: 500000.0
|
||||||
|
part_type: capital_budget
|
||||||
|
currency_code: USD
|
||||||
|
description: Capital budget of 500,000 USD
|
||||||
|
annotations:
|
||||||
|
specificity_score: 0.40
|
||||||
|
specificity_rationale: >-
|
||||||
|
Main parts are moderately specific, relevant for budget and allocation queries.
|
||||||
124
schemas/20251121/linkml/modules/classes/OutputData.yaml
Normal file
124
schemas/20251121/linkml/modules/classes/OutputData.yaml
Normal file
|
|
@ -0,0 +1,124 @@
|
||||||
|
# OutputData - Class for device/service output specifications
|
||||||
|
#
|
||||||
|
# Created per slot_fixes.yaml migration for: data_format
|
||||||
|
# Creation date: 2026-01-22
|
||||||
|
# Rule compliance: 39 (RiC-O naming), 50 (ontology mapping), 53 (generic slot reuse)
|
||||||
|
|
||||||
|
id: https://nde.nl/ontology/hc/class/OutputData
|
||||||
|
name: output_data
|
||||||
|
title: Output Data
|
||||||
|
|
||||||
|
prefixes:
|
||||||
|
linkml: https://w3id.org/linkml/
|
||||||
|
hc: https://nde.nl/ontology/hc/
|
||||||
|
schema: http://schema.org/
|
||||||
|
sosa: http://www.w3.org/ns/sosa/
|
||||||
|
dct: http://purl.org/dc/terms/
|
||||||
|
|
||||||
|
default_prefix: hc
|
||||||
|
|
||||||
|
imports:
|
||||||
|
- linkml:types
|
||||||
|
- ./DataFormat
|
||||||
|
- ../slots/has_or_had_format
|
||||||
|
- ../slots/has_or_had_description
|
||||||
|
- ../slots/has_or_had_identifier
|
||||||
|
|
||||||
|
classes:
|
||||||
|
OutputData:
|
||||||
|
class_uri: hc:OutputData
|
||||||
|
description: |
|
||||||
|
Specification of output produced by a device, service, or process.
|
||||||
|
|
||||||
|
**DEFINITION**:
|
||||||
|
OutputData captures the characteristics of data or signals emitted by
|
||||||
|
systems, including format, structure, destination, and metadata.
|
||||||
|
|
||||||
|
**USAGE**:
|
||||||
|
- IoT device data (sensor readings, beacon signals)
|
||||||
|
- API responses (JSON, XML, RDF)
|
||||||
|
- Export files (CSV, Excel, PDF)
|
||||||
|
- Streaming data (MQTT, WebSocket)
|
||||||
|
|
||||||
|
**ONTOLOGY ALIGNMENT**:
|
||||||
|
- **Primary** (`class_uri`): `hc:OutputData` - Heritage Custodian class
|
||||||
|
- **Close**: `sosa:Result` - SOSA observation result
|
||||||
|
- **Close**: `schema:DataDownload` - Schema.org data download
|
||||||
|
|
||||||
|
**Example**:
|
||||||
|
```yaml
|
||||||
|
has_or_had_output:
|
||||||
|
- has_or_had_format:
|
||||||
|
has_or_had_type: JsonFormat
|
||||||
|
has_or_had_media_type: "application/json"
|
||||||
|
has_or_had_description: "Climate sensor readings"
|
||||||
|
destination_url: "https://analytics.museum.nl/climate"
|
||||||
|
```
|
||||||
|
|
||||||
|
close_mappings:
|
||||||
|
- sosa:Result
|
||||||
|
- schema:DataDownload
|
||||||
|
|
||||||
|
slots:
|
||||||
|
- has_or_had_format
|
||||||
|
- has_or_had_description
|
||||||
|
- has_or_had_identifier
|
||||||
|
- destination_url
|
||||||
|
- schema_url
|
||||||
|
- is_streaming
|
||||||
|
|
||||||
|
slot_usage:
|
||||||
|
has_or_had_format:
|
||||||
|
range: DataFormat
|
||||||
|
inlined: true
|
||||||
|
description: |
|
||||||
|
The format specification for this output.
|
||||||
|
Uses DataFormat class to capture format type, media type, and schema.
|
||||||
|
examples:
|
||||||
|
- value:
|
||||||
|
has_or_had_type: JsonFormat
|
||||||
|
has_or_had_media_type: "application/json"
|
||||||
|
description: JSON output format
|
||||||
|
has_or_had_description:
|
||||||
|
range: string
|
||||||
|
description: Human-readable description of the output data.
|
||||||
|
examples:
|
||||||
|
- value: "Temperature and humidity readings from conservation sensors"
|
||||||
|
description: Sensor data description
|
||||||
|
destination_url:
|
||||||
|
range: uri
|
||||||
|
description: URL where output is sent or published.
|
||||||
|
examples:
|
||||||
|
- value: "https://analytics.museum.nl/data"
|
||||||
|
description: Analytics platform destination
|
||||||
|
schema_url:
|
||||||
|
range: uri
|
||||||
|
description: URL to schema definition for the output data structure.
|
||||||
|
examples:
|
||||||
|
- value: "https://api.museum.nl/schemas/climate-v1.json"
|
||||||
|
description: JSON Schema for climate data
|
||||||
|
is_streaming:
|
||||||
|
range: boolean
|
||||||
|
description: Whether this output is continuous/streaming vs batch/discrete.
|
||||||
|
examples:
|
||||||
|
- value: true
|
||||||
|
description: Real-time streaming data
|
||||||
|
- value: false
|
||||||
|
description: Batch data export
|
||||||
|
|
||||||
|
attributes:
|
||||||
|
destination_url:
|
||||||
|
range: uri
|
||||||
|
description: URL where output is sent or published.
|
||||||
|
schema_url:
|
||||||
|
range: uri
|
||||||
|
description: URL to schema definition for the output data.
|
||||||
|
is_streaming:
|
||||||
|
range: boolean
|
||||||
|
description: Whether this output is streaming vs batch.
|
||||||
|
|
||||||
|
annotations:
|
||||||
|
custodian_types: '["*"]'
|
||||||
|
custodian_types_rationale: "Output data specifications apply to all custodian types with digital systems."
|
||||||
|
specificity_score: 0.65
|
||||||
|
specificity_rationale: "Fairly specific to IoT and digital platform contexts."
|
||||||
|
|
@ -225,27 +225,30 @@ classes:
|
||||||
Uses Capacity class with capacity_type and has_or_had_measurement_unit.
|
Uses Capacity class with capacity_type and has_or_had_measurement_unit.
|
||||||
examples:
|
examples:
|
||||||
- value:
|
- value:
|
||||||
- capacity_value: 8000.0
|
- has_or_had_quantity:
|
||||||
capacity_type: SHELF_LENGTH
|
has_or_had_numeric_value: 8000.0
|
||||||
has_or_had_measurement_unit:
|
has_or_had_unit:
|
||||||
has_or_had_type: LINEAR_METER
|
has_or_had_type: LinearMeter
|
||||||
has_or_had_symbol: "m"
|
has_or_had_symbol: "m"
|
||||||
|
has_or_had_type: ShelfLength
|
||||||
has_or_had_description: Total linear meters of shelving
|
has_or_had_description: Total linear meters of shelving
|
||||||
description: Was capacity_linear_meters
|
description: Was capacity_linear_meters (capacity_value → has_or_had_quantity)
|
||||||
- value:
|
- value:
|
||||||
- capacity_value: 2500.0
|
- has_or_had_quantity:
|
||||||
capacity_type: VOLUME
|
has_or_had_numeric_value: 2500.0
|
||||||
has_or_had_measurement_unit:
|
has_or_had_unit:
|
||||||
has_or_had_type: CUBIC_METER
|
has_or_had_type: CubicMeter
|
||||||
has_or_had_symbol: "m³"
|
has_or_had_symbol: "m³"
|
||||||
description: Was capacity_cubic_meters
|
has_or_had_type: Volume
|
||||||
|
description: Was capacity_cubic_meters (capacity_value → has_or_had_quantity)
|
||||||
- value:
|
- value:
|
||||||
- capacity_value: 50000
|
- has_or_had_quantity:
|
||||||
capacity_type: ITEM_COUNT
|
has_or_had_numeric_value: 50000
|
||||||
has_or_had_measurement_unit:
|
has_or_had_unit:
|
||||||
has_or_had_type: ITEM
|
has_or_had_type: Item
|
||||||
has_or_had_symbol: "archive boxes"
|
has_or_had_symbol: "archive boxes"
|
||||||
description: Was capacity_item
|
has_or_had_type: ItemCount
|
||||||
|
description: Was capacity_item (capacity_value → has_or_had_quantity)
|
||||||
- value:
|
- value:
|
||||||
- has_or_had_description: "Approximately 5,000 linear meters of shelving across 3 floors"
|
- has_or_had_description: "Approximately 5,000 linear meters of shelving across 3 floors"
|
||||||
is_estimate: true
|
is_estimate: true
|
||||||
|
|
@ -376,11 +379,12 @@ classes:
|
||||||
label_text: Rijksmuseum Depot Amersfoort
|
label_text: Rijksmuseum Depot Amersfoort
|
||||||
language: nl
|
language: nl
|
||||||
has_or_had_capacity: # was: capacity_linear_meters - migrated per Rule 53
|
has_or_had_capacity: # was: capacity_linear_meters - migrated per Rule 53
|
||||||
- capacity_value: 8000.0
|
- has_or_had_quantity:
|
||||||
capacity_type: SHELF_LENGTH
|
has_or_had_numeric_value: 8000.0
|
||||||
has_or_had_measurement_unit:
|
has_or_had_unit:
|
||||||
has_or_had_type: LINEAR_METER
|
has_or_had_type: LinearMeter
|
||||||
has_or_had_symbol: "m"
|
has_or_had_symbol: "m"
|
||||||
|
has_or_had_type: ShelfLength
|
||||||
has_or_had_description: Total linear shelf capacity
|
has_or_had_description: Total linear shelf capacity
|
||||||
current_utilization_percent: 78.5
|
current_utilization_percent: 78.5
|
||||||
standards_applied:
|
standards_applied:
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,7 @@ imports:
|
||||||
- ./Methodology
|
- ./Methodology
|
||||||
- ../slots/person_id
|
- ../slots/person_id
|
||||||
- ../slots/has_average_scene_duration_seconds
|
- ../slots/has_average_scene_duration_seconds
|
||||||
- ../slots/cut_count
|
# REMOVED 2026-01-22: cut_count migrated to has_or_had_quantity + Quantity (Rule 53)
|
||||||
- ../slots/has_or_had_detected_face
|
- ../slots/has_or_had_detected_face
|
||||||
- ../slots/has_or_had_detected_landmark
|
- ../slots/has_or_had_detected_landmark
|
||||||
- ../slots/has_or_had_detected_logo
|
- ../slots/has_or_had_detected_logo
|
||||||
|
|
@ -196,7 +196,7 @@ classes:
|
||||||
- schema:Clip
|
- schema:Clip
|
||||||
slots:
|
slots:
|
||||||
- has_average_scene_duration_seconds
|
- has_average_scene_duration_seconds
|
||||||
- cut_count
|
- has_or_had_quantity # was: cut_count - migrated per Rule 53 (2026-01-22)
|
||||||
- detection_level
|
- detection_level
|
||||||
- dissolve_count
|
- dissolve_count
|
||||||
- fade_count
|
- fade_count
|
||||||
|
|
@ -253,13 +253,21 @@ classes:
|
||||||
examples:
|
examples:
|
||||||
- value: '[{has_or_had_label: "CUT"}, {has_or_had_label: "FADE_IN"}]'
|
- value: '[{has_or_had_label: "CUT"}, {has_or_had_label: "FADE_IN"}]'
|
||||||
description: Transition types found in video
|
description: Transition types found in video
|
||||||
cut_count:
|
has_or_had_quantity: # was: cut_count - migrated per Rule 53 (2026-01-22)
|
||||||
range: integer
|
range: Quantity
|
||||||
required: false
|
required: false
|
||||||
minimum_value: 0
|
inlined: true
|
||||||
|
description: |
|
||||||
|
Number of hard cuts (instantaneous transitions) as a Quantity.
|
||||||
|
MIGRATED from cut_count per slot_fixes.yaml (Rule 53).
|
||||||
|
Uses Quantity class with Unit type "Cut".
|
||||||
examples:
|
examples:
|
||||||
- value: 42
|
- value:
|
||||||
description: 42 cuts detected
|
has_or_had_numeric_value: 42
|
||||||
|
has_or_had_unit:
|
||||||
|
has_or_had_type: Cut
|
||||||
|
has_or_had_symbol: "cuts"
|
||||||
|
description: 42 cuts detected (was cut_count)
|
||||||
fade_count:
|
fade_count:
|
||||||
range: integer
|
range: integer
|
||||||
required: false
|
required: false
|
||||||
|
|
|
||||||
|
|
@ -306,7 +306,8 @@ classes:
|
||||||
description: Dutch subtitles in VTT format
|
description: Dutch subtitles in VTT format
|
||||||
- value:
|
- value:
|
||||||
is_available: false
|
is_available: false
|
||||||
description: No captions available (migrated from caption_available: false)
|
language: null
|
||||||
|
description: No captions available (migrated from caption_available false)
|
||||||
default_language:
|
default_language:
|
||||||
range: string
|
range: string
|
||||||
required: false
|
required: false
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,35 @@
|
||||||
|
id: https://nde.nl/ontology/hc/slot/has_or_had_main_part
|
||||||
|
name: has_or_had_main_part_slot
|
||||||
|
title: Has or Had Main Part Slot
|
||||||
|
prefixes:
|
||||||
|
linkml: https://w3id.org/linkml/
|
||||||
|
hc: https://nde.nl/ontology/hc/
|
||||||
|
schema: http://schema.org/
|
||||||
|
dcterms: http://purl.org/dc/terms/
|
||||||
|
imports:
|
||||||
|
- linkml:types
|
||||||
|
default_range: string
|
||||||
|
|
||||||
|
slots:
|
||||||
|
has_or_had_main_part:
|
||||||
|
slot_uri: schema:hasPart
|
||||||
|
description: >-
|
||||||
|
Links to a MainPart representing the principal/primary portion of something.
|
||||||
|
|
||||||
|
**USE CASES**:
|
||||||
|
- Capital budget (primary budget allocation for infrastructure/equipment)
|
||||||
|
- Primary collection holdings
|
||||||
|
- Main organizational unit
|
||||||
|
|
||||||
|
**ONTOLOGY ALIGNMENT**:
|
||||||
|
- slot_uri: schema:hasPart (primary)
|
||||||
|
- Represents a significant/main portion of a larger whole
|
||||||
|
|
||||||
|
MIGRATED 2026-01-22: Created per slot_fixes.yaml revision for capital_budget.
|
||||||
|
range: MainPart
|
||||||
|
inlined: true
|
||||||
|
exact_mappings:
|
||||||
|
- schema:hasPart
|
||||||
|
annotations:
|
||||||
|
custodian_types: '["*"]'
|
||||||
|
custodian_types_rationale: Main parts are universal across organizational contexts
|
||||||
66
schemas/20251121/linkml/modules/slots/has_or_had_output.yaml
Normal file
66
schemas/20251121/linkml/modules/slots/has_or_had_output.yaml
Normal file
|
|
@ -0,0 +1,66 @@
|
||||||
|
# has_or_had_output - Output/emission slot for devices and services
|
||||||
|
#
|
||||||
|
# Created per slot_fixes.yaml migration for: data_format
|
||||||
|
# Creation date: 2026-01-22
|
||||||
|
# Rule compliance: 39 (RiC-O naming), 50 (ontology mapping), 53 (generic slot reuse)
|
||||||
|
|
||||||
|
id: https://nde.nl/ontology/hc/slot/has_or_had_output
|
||||||
|
name: has_or_had_output
|
||||||
|
title: Has or Had Output
|
||||||
|
|
||||||
|
prefixes:
|
||||||
|
linkml: https://w3id.org/linkml/
|
||||||
|
hc: https://nde.nl/ontology/hc/
|
||||||
|
schema: http://schema.org/
|
||||||
|
sosa: http://www.w3.org/ns/sosa/
|
||||||
|
|
||||||
|
default_prefix: hc
|
||||||
|
|
||||||
|
imports:
|
||||||
|
- linkml:types
|
||||||
|
|
||||||
|
slots:
|
||||||
|
has_or_had_output:
|
||||||
|
slot_uri: hc:hasOrHadOutput
|
||||||
|
description: |
|
||||||
|
Output produced by a device, service, or process.
|
||||||
|
|
||||||
|
**USAGE**:
|
||||||
|
Represents data, signals, or artifacts emitted by:
|
||||||
|
- IoT devices (sensor readings, beacon signals)
|
||||||
|
- APIs and services (data responses)
|
||||||
|
- Processing pipelines (transformed data)
|
||||||
|
- Software systems (reports, exports)
|
||||||
|
|
||||||
|
**ONTOLOGY ALIGNMENT**:
|
||||||
|
- **Primary** (`slot_uri`): `hc:hasOrHadOutput` - Heritage Custodian property
|
||||||
|
- **Close**: `sosa:hasResult` - SOSA observation result
|
||||||
|
- **Close**: `schema:produces` - Schema.org production relationship
|
||||||
|
|
||||||
|
**RANGE**: `OutputData` class
|
||||||
|
The OutputData class captures output specifications including format,
|
||||||
|
frequency, destination, and data characteristics.
|
||||||
|
|
||||||
|
range: OutputData
|
||||||
|
multivalued: true
|
||||||
|
inlined_as_list: true
|
||||||
|
|
||||||
|
close_mappings:
|
||||||
|
- sosa:hasResult
|
||||||
|
- schema:produces
|
||||||
|
|
||||||
|
examples:
|
||||||
|
- value:
|
||||||
|
has_or_had_format:
|
||||||
|
has_or_had_type: JsonFormat
|
||||||
|
has_or_had_description: "Climate sensor readings in JSON format"
|
||||||
|
description: IoT device output specification
|
||||||
|
- value:
|
||||||
|
has_or_had_format:
|
||||||
|
has_or_had_type: CsvFormat
|
||||||
|
destination_url: "https://analytics.museum.nl/data"
|
||||||
|
description: Data export output
|
||||||
|
|
||||||
|
annotations:
|
||||||
|
custodian_types: '["*"]'
|
||||||
|
custodian_types_rationale: "Output specifications applicable to all custodian types with digital systems."
|
||||||
|
|
@ -20,9 +20,8 @@
|
||||||
"has_or_had_notation.yaml",
|
"has_or_had_notation.yaml",
|
||||||
"has_or_had_canonical_form.yaml",
|
"has_or_had_canonical_form.yaml",
|
||||||
"capacity_type.yaml",
|
"capacity_type.yaml",
|
||||||
"capacity_value.yaml",
|
"has_or_had_main_part.yaml",
|
||||||
"capital_budget.yaml",
|
"has_or_had_caption.yaml",
|
||||||
"caption_available.yaml",
|
|
||||||
"card_image_url.yaml",
|
"card_image_url.yaml",
|
||||||
"card_title.yaml",
|
"card_title.yaml",
|
||||||
"card_title_en.yaml",
|
"card_title_en.yaml",
|
||||||
|
|
@ -175,7 +174,7 @@
|
||||||
"custodian_type_related.yaml",
|
"custodian_type_related.yaml",
|
||||||
"custody_history.yaml",
|
"custody_history.yaml",
|
||||||
"custody_received_by.yaml",
|
"custody_received_by.yaml",
|
||||||
"cut_count.yaml",
|
"__ARCHIVED_20260122__cut_count.yaml",
|
||||||
"data_format.yaml",
|
"data_format.yaml",
|
||||||
"data_license_policy.yaml",
|
"data_license_policy.yaml",
|
||||||
"data_repository.yaml",
|
"data_repository.yaml",
|
||||||
|
|
|
||||||
|
|
@ -8096,7 +8096,8 @@ fixes:
|
||||||
would enhance semantic clarity and allow for richer metadata about each budget amount.
|
would enhance semantic clarity and allow for richer metadata about each budget amount.
|
||||||
|
|
||||||
This would align with best practices for financial data modeling.'
|
This would align with best practices for financial data modeling.'
|
||||||
done: false
|
done: true
|
||||||
|
response: "Completed 2026-01-22 by claude-sonnet-4. Per revision: created has_or_had_main_part slot and MainPart class. Migrated Budget.yaml to use MainPart with Quantity for capital budget amount. MainPart.part_type='capital_budget' and currency_code attribute. Archived capital_budget.yaml."
|
||||||
- original_slot_id: https://nde.nl/ontology/hc/slot/caption_available
|
- original_slot_id: https://nde.nl/ontology/hc/slot/caption_available
|
||||||
revision:
|
revision:
|
||||||
- label: has_or_had_caption
|
- label: has_or_had_caption
|
||||||
|
|
@ -8133,7 +8134,8 @@ fixes:
|
||||||
would enhance semantic clarity and allow for richer metadata about caption availability.
|
would enhance semantic clarity and allow for richer metadata about caption availability.
|
||||||
|
|
||||||
This would align with best practices for accessibility data modeling.'
|
This would align with best practices for accessibility data modeling.'
|
||||||
done: false
|
done: true
|
||||||
|
response: "Completed 2026-01-22 by claude-sonnet-4. Created has_or_had_caption slot and Caption class. Migrated VideoPost.yaml to use structured Caption with is_available, language, caption_format, caption_url attributes. Archived caption_available.yaml."
|
||||||
- original_slot_id: https://nde.nl/ontology/hc/slot/card_description
|
- original_slot_id: https://nde.nl/ontology/hc/slot/card_description
|
||||||
revision:
|
revision:
|
||||||
- label: has_or_had_description
|
- label: has_or_had_description
|
||||||
|
|
@ -11368,6 +11370,24 @@ fixes:
|
||||||
type: slot
|
type: slot
|
||||||
- label: Unit
|
- label: Unit
|
||||||
type: class
|
type: class
|
||||||
|
processed:
|
||||||
|
status: true
|
||||||
|
date: '2026-01-22'
|
||||||
|
agent: claude-claude-sonnet-4-20250514
|
||||||
|
notes: |
|
||||||
|
**Migration #60: capacity_value** ✅ COMPLETE
|
||||||
|
|
||||||
|
**Pattern**: capacity_value → has_or_had_quantity + Quantity + has_or_had_unit + Unit
|
||||||
|
|
||||||
|
**Files Used** (pre-existing):
|
||||||
|
- has_or_had_quantity.yaml, Quantity.yaml
|
||||||
|
- has_or_had_unit.yaml, Unit.yaml
|
||||||
|
|
||||||
|
**Files Modified**:
|
||||||
|
- Capacity.yaml: Replaced capacity_value with has_or_had_quantity (required field)
|
||||||
|
- Storage.yaml: Updated examples to use has_or_had_quantity pattern
|
||||||
|
|
||||||
|
**Archived**: modules/slots/archive/capacity_value_archived_20260122.yaml
|
||||||
- original_slot_id: https://nde.nl/ontology/hc/slot/cut_count
|
- original_slot_id: https://nde.nl/ontology/hc/slot/cut_count
|
||||||
revision:
|
revision:
|
||||||
- label: has_or_had_quantity
|
- label: has_or_had_quantity
|
||||||
|
|
@ -11379,6 +11399,25 @@ fixes:
|
||||||
- label: Unit
|
- label: Unit
|
||||||
type: class
|
type: class
|
||||||
value: cut
|
value: cut
|
||||||
|
processed:
|
||||||
|
status: true
|
||||||
|
date: '2026-01-22'
|
||||||
|
agent: claude-claude-sonnet-4-20250514
|
||||||
|
notes: |
|
||||||
|
**Migration #61: cut_count** ✅ COMPLETE
|
||||||
|
|
||||||
|
**Pattern**: cut_count → has_or_had_quantity + Quantity + has_or_had_unit + Unit (value: cut)
|
||||||
|
|
||||||
|
**Files Used** (pre-existing):
|
||||||
|
- has_or_had_quantity.yaml, Quantity.yaml
|
||||||
|
- has_or_had_unit.yaml, Unit.yaml
|
||||||
|
|
||||||
|
**Files Modified**:
|
||||||
|
- VideoAnnotationTypes.yaml: Replaced cut_count with has_or_had_quantity in VideoSceneAnnotation class
|
||||||
|
- Updated imports, slots list, and slot_usage section
|
||||||
|
- Unit type set to "Cut" per revision value specification
|
||||||
|
|
||||||
|
**Archived**: modules/slots/archive/cut_count_archived_20260122.yaml
|
||||||
- original_slot_id: https://nde.nl/ontology/hc/slot/data_format
|
- original_slot_id: https://nde.nl/ontology/hc/slot/data_format
|
||||||
revision:
|
revision:
|
||||||
- label: has_or_had_output
|
- label: has_or_had_output
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue