Class: VertexMetadata¶
Optional, sparse per-vertex annotation attached to a feature. One entry corresponds to one vertex of the parent feature's geometry, identified by the structured path slot following the selectionPath convention (research note R-008). Carrying any of label/tags/note triggers persistence; an entry with all three absent MUST be omitted on write (the writer's flush function prunes). Path shape depends on parent geometry:
_ Track -> "positions/
_ Polygon -> "rings/
_ LineString -> "vertices/
_ MultiPoint -> "vertices/
_ Point -> "vertex/0"_
URI: debrief:class/VertexMetadata
classDiagram
class VertexMetadata
click VertexMetadata href "../../classes/VertexMetadata/"
VertexMetadata : label
VertexMetadata : note
VertexMetadata : path
VertexMetadata : tags
Slots¶
| Name | Cardinality and Range | Description | Inheritance |
|---|---|---|---|
| path | 1 String |
Structured vertex address following the selectionPath convention | direct |
| label | 0..1 String |
Free-text short label | direct |
| tags | * String |
Free-text tag list | direct |
| note | 0..1 String |
Free-text long note | direct |
Usages¶
Identifier and Mapping Information¶
Schema Source¶
- from schema: https://debrief.info/schemas/debrief
Mappings¶
| Mapping Type | Mapped Value |
|---|---|
| self | debrief:VertexMetadata |
| native | debrief:VertexMetadata |
LinkML Source¶
Direct¶
name: VertexMetadata
description: "Optional, sparse per-vertex annotation attached to a feature. One entry\
\ corresponds to one vertex of the parent feature's geometry, identified by the\
\ structured `path` slot following the `selectionPath` convention (research note\
\ R-008). Carrying any of label/tags/note triggers persistence; an entry with all\
\ three absent MUST be omitted on write (the writer's flush function prunes). Path\
\ shape depends on parent geometry:\n Track -> \"positions/<int>\"\n Polygon\
\ -> \"rings/<int>/vertices/<int>\"\n LineString -> \"vertices/<int>\"\n \
\ MultiPoint -> \"vertices/<int>\"\n Point -> \"vertex/0\""
from_schema: https://debrief.info/schemas/debrief
attributes:
path:
name: path
description: Structured vertex address following the selectionPath convention.
The class-level regex accepts the union of all per-geometry path shapes; the
writer additionally checks that the path matches the parent geometry's specific
shape at flush time. Acts as the identity for an entry within a feature's `vertex_metadata`
list — duplicates MUST be rejected by validators.
from_schema: https://debrief.info/schemas/common
rank: 1000
identifier: true
domain_of:
- VertexMetadata
- ResultTypePath
range: string
required: true
pattern: ^(positions/[0-9]+|rings/[0-9]+/vertices/[0-9]+|vertices/[0-9]+|vertex/0)$
label:
name: label
description: Free-text short label.
from_schema: https://debrief.info/schemas/common
rank: 1000
domain_of:
- VertexMetadata
- PositionStyleOverride
- SensorContact
- TUASolution
- MultiPointFeatureProperties
- MultiPolygonFeatureProperties
- CircleAnnotationProperties
- RectangleAnnotationProperties
- LineAnnotationProperties
- VectorAnnotationProperties
- PolyAnnotationProperties
- ToolResultAnnotations
- DatasetAxisMetadata
range: string
required: false
tags:
name: tags
description: Free-text tag list. Order is not significant.
from_schema: https://debrief.info/schemas/common
domain_of:
- BaseFeatureProperties
- VertexMetadata
- StacExtensionProperties
- StacItemSummary
range: string
required: false
multivalued: true
note:
name: note
description: Free-text long note.
from_schema: https://debrief.info/schemas/common
rank: 1000
domain_of:
- VertexMetadata
range: string
required: false
Induced¶
name: VertexMetadata
description: "Optional, sparse per-vertex annotation attached to a feature. One entry\
\ corresponds to one vertex of the parent feature's geometry, identified by the\
\ structured `path` slot following the `selectionPath` convention (research note\
\ R-008). Carrying any of label/tags/note triggers persistence; an entry with all\
\ three absent MUST be omitted on write (the writer's flush function prunes). Path\
\ shape depends on parent geometry:\n Track -> \"positions/<int>\"\n Polygon\
\ -> \"rings/<int>/vertices/<int>\"\n LineString -> \"vertices/<int>\"\n \
\ MultiPoint -> \"vertices/<int>\"\n Point -> \"vertex/0\""
from_schema: https://debrief.info/schemas/debrief
attributes:
path:
name: path
description: Structured vertex address following the selectionPath convention.
The class-level regex accepts the union of all per-geometry path shapes; the
writer additionally checks that the path matches the parent geometry's specific
shape at flush time. Acts as the identity for an entry within a feature's `vertex_metadata`
list — duplicates MUST be rejected by validators.
from_schema: https://debrief.info/schemas/common
rank: 1000
identifier: true
alias: path
owner: VertexMetadata
domain_of:
- VertexMetadata
- ResultTypePath
range: string
required: true
pattern: ^(positions/[0-9]+|rings/[0-9]+/vertices/[0-9]+|vertices/[0-9]+|vertex/0)$
label:
name: label
description: Free-text short label.
from_schema: https://debrief.info/schemas/common
rank: 1000
alias: label
owner: VertexMetadata
domain_of:
- VertexMetadata
- PositionStyleOverride
- SensorContact
- TUASolution
- MultiPointFeatureProperties
- MultiPolygonFeatureProperties
- CircleAnnotationProperties
- RectangleAnnotationProperties
- LineAnnotationProperties
- VectorAnnotationProperties
- PolyAnnotationProperties
- ToolResultAnnotations
- DatasetAxisMetadata
range: string
required: false
tags:
name: tags
description: Free-text tag list. Order is not significant.
from_schema: https://debrief.info/schemas/common
alias: tags
owner: VertexMetadata
domain_of:
- BaseFeatureProperties
- VertexMetadata
- StacExtensionProperties
- StacItemSummary
range: string
required: false
multivalued: true
note:
name: note
description: Free-text long note.
from_schema: https://debrief.info/schemas/common
rank: 1000
alias: note
owner: VertexMetadata
domain_of:
- VertexMetadata
range: string
required: false