glam/schemas/20251121/linkml/modules/classes/VideoAnnotation.yaml
kempersc 66adec257e Add scripts for normalizing LinkML schemas and validating schema integrity
- Implement `normalize_linkml_alt_descriptions.py` to convert structured alt_descriptions to the expected scalar form.
- Implement `normalize_linkml_structured_aliases.py` to flatten language-keyed structured_aliases into a standard list-of-objects format.
- Implement `validate_linkml_schema_integrity.py` to validate the integrity of LinkML schema bundles, checking for import resolution, YAML parsing, and reference existence.
2026-02-16 10:16:51 +01:00

176 lines
5.7 KiB
YAML

id: https://nde.nl/ontology/hc/class/VideoAnnotation
name: video_annotation_class
title: Video Annotation Class
imports:
- linkml:types
- ../enums/AnnotationTypeEnum
- ../slots/analyze
- ../slots/contain
- ../slots/filter
- ../slots/has_quantity
- ../slots/has_rationale
- ../slots/has_score
- ../slots/has_threshold
- ../slots/has_type
- ../slots/has_measurement_unit
- ../slots/has_bounding_box
- ../slots/mask
- ../slots/has_method
- ../slots/has_model
- ../slots/has_objective
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/
oa: http://www.w3.org/ns/oa#
as: https://www.w3.org/ns/activitystreams#
default_prefix: hc
classes:
VideoAnnotation:
is_a: VideoTextContent
class_uri: oa:Annotation
abstract: true
alt_descriptions:
nl: {text: Abstracte basisklasse voor computer-vision en multimodale video-annotaties., language: nl}
de: {text: Abstrakte Basisklasse fuer Computer-Vision- und multimodale Videoannotationen., language: de}
fr: {text: Classe de base abstraite pour les annotations video en vision par ordinateur et multimodales., language: fr}
es: {text: Clase base abstracta para anotaciones de video por vision por computador y multimodales., language: es}
ar: {text: فئة أساس مجردة لتعليقات الفيديو المعتمدة على الرؤية الحاسوبية ومتعددة الوسائط., language: ar}
id: {text: Kelas dasar abstrak untuk anotasi video berbasis visi komputer dan multimodal., language: id}
zh: {text: 用于计算机视觉/多模态视频注释的抽象基类。, language: zh}
structured_aliases:
nl: [{literal_form: videoannotatie, language: nl}]
de: [{literal_form: Videoannotation, language: de}]
fr: [{literal_form: annotation video, language: fr}]
es: [{literal_form: anotacion de video, language: es}]
ar: [{literal_form: وسم فيديو, language: ar}]
id: [{literal_form: anotasi video, language: id}]
zh: [{literal_form: 视频注释, language: zh}]
description: >-
Abstract base class for structured annotations derived from visual or
multimodal analysis of video content.
exact_mappings:
- oa:Annotation
close_mappings:
- crm:E13_Attribute_Assignment
related_mappings:
- as:Activity
- schema:ClaimReview
slots:
- has_rationale
- contain
- has_type
- filter
- has_bounding_box
- mask
- has_method
- has_model
- has_objective
- has_score
- analyze
slot_usage:
has_type:
# range: string # uriorcurie
required: true
examples:
- value:
has_code: OBJECT_DETECTION
has_label: Object Detection
contain:
# range: string
multivalued: true
required: false
inlined_as_list: false # Fixed invalid inline for primitive type
examples:
- value:
has_label: Night Watch painting visible
has_description: 30.0 - 35.0 seconds
has_rationale:
# range: string
required: false
examples:
- value:
has_label: ClassifyingMotivation
filter:
description: Detection filtering metadata including count and threshold settings.
range: DetectedEntity
inlined: true
required: false
examples:
- value:
has_quantity:
has_measurement_unit: detections
has_threshold:
has_value: 0.5
- value:
has_quantity:
has_measurement_unit: detections
has_threshold:
has_label: High Precision
analyze:
description: Frame analysis metadata (e.g., sample rate and analyzed frames).
range: VideoFrame
inlined: true
required: false
examples:
- value:
has_quantity:
has_measurement_unit: frames
- value:
has_quantity:
has_measurement_unit: samples per second
has_method:
range: boolean
required: false
examples:
- value: true
has_model:
# range: string
required: false
examples:
- value: Transformer
- value: CNN
has_objective:
# range: string
required: false
examples:
- value: detection
- value: captioning
has_bounding_box:
range: boolean
required: false
examples:
- value: true
mask:
range: boolean
required: false
examples:
- value: false
comments:
- Abstract base for all CV/multimodal video annotations
- Extends VideoTextContent with frame-based analysis parameters
- W3C Web Annotation compatible structure
- Supports both temporal and spatial annotation
- Tracks detection thresholds and model architecture
see_also:
- https://www.w3.org/TR/annotation-model/
- http://www.cidoc-crm.org/cidoc-crm/E13_Attribute_Assignment
- https://iiif.io/api/presentation/3.0/
annotations:
specificity_score: 0.1
specificity_rationale: Generic utility class/slot created during migration
custodian_types: "['*']"
modeling_notes: |
Typical subclasses
- VideoSceneAnnotation (shot/scene structure)
- VideoObjectAnnotation (objects/faces/logos/landmarks)
- VideoOCRAnnotation (text visible in frames)
Alignment
Uses oa:Annotation for annotation semantics and extends VideoTextContent
for provenance and quality metadata.