glam/schemas/20251121/linkml/modules/classes/Methodology.yaml

113 lines
5.1 KiB
YAML

id: https://nde.nl/ontology/hc/class/Methodology
name: methodology_class
title: Methodology Class
description: 'Defines the methodology or technique used to derive a measurement or observation.
**RULE 53 COMPLIANT**: Created for unique_object_count and unique_face_count migration per slot_fixes.yaml revision (lines 1951-1994).
**PROV-O ALIGNMENT**:
Maps to `prov:Plan` - "A plan is an entity that represents a set of actions or steps intended by one or more agents to achieve some goals."
In the PROV-O data model, a Plan describes HOW an activity was performed. Methodology extends this to describe HOW a measurement was derived.'
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
prov: http://www.w3.org/ns/prov#
schema: http://schema.org/
dcterms: http://purl.org/dc/terms/
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
- ../enums/MethodologyTypeEnum
- ../slots/has_description
- ../slots/identified_by
- ../slots/has_label
- ../slots/has_score
- ../slots/has_threshold
- ../slots/has_version
- ../slots/has_type
default_prefix: hc
classes:
Methodology:
class_uri: prov:Plan
description: "Describes the methodology, technique, or algorithm used to derive a measurement.\n**PROV-O ALIGNMENT**:\nMaps to `prov:Plan` which represents \"a set of actions or steps intended by one or more agents to achieve some goals.\" In measurement contexts, this describes HOW a value was computed or derived.\n**WHY METHODOLOGY MATTERS**:\nTwo measurements of \"unique objects\" could use different methodologies:\n| Methodology | Description | Accuracy | |-------------|-------------|----------| | ENTITY_RESOLUTION | Deduplication via feature matching | High | | TRACKING | Object tracking across frames | Medium | | MANUAL_COUNT | Human counting | Variable | | SAMPLING | Statistical sampling | Estimated |\nWithout methodology, two measurements cannot be meaningfully compared.\n**HERITAGE USE CASES**:\n- **Video annotation**: How unique faces/objects were counted (entity resolution) - **Collection inventories**: How item counts were derived (physical vs. digital) - **Visitor statistics**:\
\ How attendance was measured (counters, tickets, samples) - **Digitization metrics**: How completeness was assessed\n**EXAMPLE**:\n```yaml has_methodology:\n methodology_type: ENTITY_RESOLUTION\n has_label: \"RetinaFace + ArcFace clustering\"\n has_description: >-\n Faces detected using RetinaFace model, then clustered\n using ArcFace embeddings with cosine similarity threshold 0.6\n to identify unique individuals.\n```"
exact_mappings:
- prov:Plan
close_mappings:
- schema:HowToStep
related_mappings:
- dcterms:methodology
slots:
- identified_by
- has_type
- has_label
- has_description
- has_version
- has_threshold
- has_score
slot_usage:
identified_by:
# range: string # uriorcurie
required: false
examples:
- value: https://nde.nl/ontology/hc/methodology/retinaface-arcface-v1
has_type:
range: MethodologyTypeEnum
required: false
examples:
- value: ENTITY_RESOLUTION
- value: OBJECT_TRACKING
has_label:
# range: string
required: false
description: 'Human-readable name for the methodology or algorithm. MIGRATED: Now serves both methodology name AND algorithm_name (Rule 53/56).'
examples:
- value: RetinaFace + ArcFace clustering
- value: YOLOv8
- value: ArcFace
has_description:
# range: string
required: false
examples:
- value: Faces detected using RetinaFace, clustered using ArcFace embeddings
has_version:
# range: string
required: false
examples:
- value: 1.0.0
- value: v8n
has_threshold:
range: ConfidenceThreshold
required: false
examples:
- value:
comments:
- Describes HOW a measurement was derived
- Essential for comparing measurements from different sources
- Maps to PROV-O Plan for provenance tracking
- Rule 53 compliant - supports unique_object_count/unique_face_count migration
see_also:
- https://www.w3.org/TR/prov-o/#Plan
examples:
- value:
methodology_type: ENTITY_RESOLUTION
has_label: RetinaFace + ArcFace clustering
has_description: Faces detected using RetinaFace model, then clustered using ArcFace embeddings with cosine similarity threshold 0.6.
has_version: '1.0'
has_threshold:
- threshold_value: 0.6
- value:
methodology_type: OBJECT_TRACKING
has_label: DeepSORT multi-object tracking
has_description: Objects tracked across video frames using DeepSORT algorithm with Kalman filtering and appearance features.
has_version: '1.0'
annotations:
specificity_score: 0.1
specificity_rationale: Generic utility class/slot created during migration
custodian_types: "['*']"