glam/schemas/20251121/linkml/modules/classes/VideoTextContent.yaml
kempersc fcd1c21c63 Add aliases and enhance slot definitions across various modules
- Added new aliases for existing slots to improve clarity and usability, including:
  - has_deadline: has_embargo_end_date
  - has_extent: has_extent_text
  - has_fonds: has_fond
  - has_laboratory: conservation_lab
  - has_language: has_iso_code639_1, has_iso_code639_3
  - has_legal_basis: legal_basis
  - has_light_exposure: max_light_lux
  - has_measurement_unit: has_unit
  - has_note: has_custodian_observation
  - has_occupation: occupation
  - has_operating_hours: has_operating_hours
  - has_position: position
  - has_quantity: has_artwork_count, link_count
  - has_roadmap: review_date
  - has_skill: skill
  - has_speaker: speaker_label
  - has_specification: specification_url
  - has_statement: rights_statement_url, rights_statement
  - has_type: custodian_only
  - has_user_category: serves_visitors_only
  - hold_record_set: record_count
  - identified_by: has_index_number
  - in_period: has_period
  - in_place: has_place
  - in_series: has_series
  - measure: has_measurement
  - measured_on: measurement_date
  - organized_by: has_organizer
  - originate_from: has_origin
  - part_of: suborganization_of
  - published_on: has_publication_date
  - receive_investment: has_investment
  - related_to: connection_heritage_type
  - require: preservation_requirement
  - safeguarded_by: current_keeper, record_holder_note
  - state: states_or_stated
  - take_comission: takes_or_took_comission
  - take_place_at: takes_or_took_place_at
  - transmit_through: transmits_or_transmitted_through
  - warrant: warrants_or_warranted

- Introduced a new slot definition for evaluated_through to capture evaluation methodologies and review statuses.
2026-02-14 14:41:49 +01:00

173 lines
7.2 KiB
YAML

id: https://nde.nl/ontology/hc/class/VideoTextContent
name: video_text_content_class
title: Video Text Content Class
imports:
- linkml:types
- ../enums/GenerationMethodEnum
- ../slots/has_title
- ../slots/has_language
- ../slots/has_quantity
- ../slots/has_score
- ../slots/generated_by
- ../slots/verified_by
- ../slots/provided_by
- ../slots/has_confidence_measure
- ../slots/has_time_interval
- ../slots/has_source
- ../slots/temporal_extent
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
schema: http://schema.org/
dcterms: http://purl.org/dc/terms/
prov: http://www.w3.org/ns/prov#
crm: http://www.cidoc-crm.org/cidoc-crm/
skos: http://www.w3.org/2004/02/skos/core#
oa: http://www.w3.org/ns/oa#
default_prefix: hc
classes:
VideoTextContent:
class_uri: crm:E73_Information_Object
abstract: true
description: "Abstract base class for all textual/derived content from videos.\n\n**DEFINITION**:\n\nVideoTextContent is the abstract parent for all text that is extracted,\ntranscribed, or derived from video content. This includes:\n\n| Subclass | Source | Description |\n|----------|--------|-------------|\n| VideoTranscript | Audio | Full text transcription of spoken content |\n| VideoSubtitle | Audio | Time-coded caption entries (SRT/VTT) |\n| VideoAnnotation | Visual | CV/multimodal-derived descriptions |\n\n**PROVENANCE REQUIREMENTS**:\n\nAll video-derived text MUST include comprehensive provenance:\n\n1. **Source**: Which video was processed (`source_video`)\n2. **Method**: How was content generated (`generation_method`)\n3. **Agent**: Who/what generated it (`generated_by`)\n4. **Time**: When was it generated (`generation_timestamp`)\n5. **Version**: Tool/model version (`model_version`)\n6. **Quality**: Overall confidence (`overall_confidence`)\n\n**PROV-O ALIGNMENT**:\n\nMaps\
\ to W3C PROV-O for provenance tracking:\n\n```turtle\n:transcript a hc:VideoTranscript ;\n prov:wasGeneratedBy :asr_activity ;\n prov:wasAttributedTo :whisper_model ;\n prov:generatedAtTime \"2025-12-01T10:00:00Z\" ;\n prov:wasDerivedFrom :source_video .\n```\n\n**CIDOC-CRM E73_Information_Object**:\n\n- E73 is the base for all identifiable immaterial items\n- Includes texts, computer programs, songs, recipes\n- VideoTextContent are E73 instances derived from video (E73)\n\n**GENERATION METHODS**:\n\n| Method | Description | Typical Confidence |\n|--------|-------------|-------------------|\n| ASR_AUTOMATIC | Automatic speech recognition | 0.75-0.95 |\n| ASR_ENHANCED | ASR with post-processing | 0.85-0.98 |\n| MANUAL_TRANSCRIPTION | Human transcription | 0.98-1.0 |\n| MANUAL_CORRECTION | Human-corrected ASR | 0.95-1.0 |\n| CV_AUTOMATIC | Computer vision detection | 0.60-0.90 |\n| MULTIMODAL | Combined audio+visual AI | 0.70-0.95 |\n| OCR | Optical character recognition\
\ | 0.80-0.98 |\n| PLATFORM_PROVIDED | From YouTube/Vimeo API | 0.85-0.95 |\n\n**HERITAGE INSTITUTION CONTEXT**:\n\nVideo text content is critical for:\n- **Accessibility**: Deaf/HoH users need accurate captions\n- **Discovery**: Full-text search over video collections\n- **Preservation**: Text outlasts video format obsolescence\n- **Research**: Analyzing spoken content at scale\n- **Translation**: Multilingual access to heritage content\n\n**LANGUAGE SUPPORT**:\n\n- `content_language`: Primary language of text content\n- May differ from video's default_audio_language if translated\n- ISO 639-1 codes (e.g., \"nl\", \"en\", \"de\")\n"
exact_mappings:
- crm:E73_Information_Object
close_mappings:
- prov:Entity
related_mappings:
- schema:CreativeWork
- dcterms:Text
slots:
- has_language
- has_title
- generated_by
- temporal_extent
- verified_by
- provided_by
- generated_by
- has_confidence_measure
- has_time_interval
- has_source
- has_source
- has_score
- verified_by
- has_quantity
slot_usage:
has_source:
# range: string
required: true
examples:
- value: FbIoC-Owy-M
has_source:
range: uri
required: false
examples:
- value: https://www.youtube.com/watch?v=FbIoC-Owy-M
has_language:
# range: string
required: true
inlined: false # Fixed invalid inline for primitive type
multivalued: true
examples:
- value:
language_name: "Dutch"
- value:
language_name: "English"
has_title:
# range: string
required: false
examples:
- value: De Vrijheidsroute Ep.3 - Dutch Transcript
- value: YouTube Auto-captions
- value: manual:curator@rijksmuseum.nl
generated_by:
range: GenerationEvent
required: true
inlined: true
examples:
- value:
has_methodology:
methodology_type: ASR_AUTOMATIC
has_label: Automatic Speech Recognition
- value:
has_methodology:
methodology_type: MANUAL_TRANSCRIPTION
has_label: Manual Transcription
temporal_extent:
range: TimeSpan
inlined: true
required: false
examples:
- value:
begin_of_the_begin: '2025-12-02T15:00:00Z'
generated_by:
# range: string
required: false
examples:
- value: large-v3
- value: v2.3.1
provided_by:
# range: string
required: false
examples:
- value: OpenAI
- value: Google Cloud
has_confidence_measure:
range: float
required: false
minimum_value: 0.0
maximum_value: 1.0
examples:
- value: 0.92
verified_by:
range: boolean
required: false
ifabsent: 'false'
examples:
- value: true
verified_by:
range: Verifier
required: false
inlined: true
examples:
- value:
has_name: curator@rijksmuseum.nl
has_time_interval:
range: float
required: false
minimum_value: 0.0
examples:
- value: 45.3
has_quantity:
range: integer
required: false
multivalued: true
inlined: false # Fixed invalid inline for primitive type
inlined_as_list: false # Fixed invalid inline for primitive type
examples:
- value:
- quantity_value: 1523
has_measurement_unit:
has_type: WORD
has_symbol: words
has_description: Word count in transcript
- quantity_value: 8742
has_measurement_unit:
has_type: CHARACTER
has_symbol: chars
has_description: Character count including spaces
comments:
- Abstract base for all video-derived text content
- Comprehensive PROV-O provenance tracking
- Confidence scoring for AI-generated content
- Verification workflow support
- Critical for heritage accessibility and discovery
see_also:
- https://www.w3.org/TR/prov-o/
- http://www.cidoc-crm.org/cidoc-crm/E73_Information_Object
annotations:
specificity_score: 0.1
specificity_rationale: Generic utility class/slot created during migration
custodian_types: "['*']"