Class: SceneProperties¶
Properties class for a Scene child Feature. A Scene is a single captured moment in a Storyboard — viewport, timestamp, and per-feature visibility.
URI: debrief:class/SceneProperties
classDiagram
class SceneProperties
click SceneProperties href "../../classes/SceneProperties/"
BaseFeatureProperties <|-- SceneProperties
click BaseFeatureProperties href "../../classes/BaseFeatureProperties/"
SceneProperties : description
SceneProperties : feature_set_hash
SceneProperties : id
SceneProperties : kind
SceneProperties --> "1" FeatureKindEnum : kind
click FeatureKindEnum href "../../enums/FeatureKindEnum/"
SceneProperties : provenance
SceneProperties --> "*" LogEntry : provenance
click LogEntry href "../../classes/LogEntry/"
SceneProperties : storyboard_id
SceneProperties : tags
SceneProperties : thumbnail_asset_ref
SceneProperties : time_range
SceneProperties : timestamp
SceneProperties : title
SceneProperties : transition_duration_ms
SceneProperties : viewport
SceneProperties --> "1" Viewport : viewport
click Viewport href "../../classes/Viewport/"
SceneProperties : visible_feature_ids
Inheritance¶
- BaseFeatureProperties
- SceneProperties
Slots¶
| Name | Cardinality and Range | Description | Inheritance |
|---|---|---|---|
| kind | 1 FeatureKindEnum |
Feature kind discriminator (pinned to STORYBOARD_SCENE) | direct |
| id | 1 String |
ULID (26 chars, Crockford base-32) | direct |
| storyboard_id | 1 String |
Foreign key to parent Storyboard | direct |
| title | 1 String |
Display title | direct |
| description | 0..1 String |
Markdown per-scene narrative | direct |
| viewport | 1 Viewport |
Map viewport camera state at capture time | direct |
| timestamp | 1 datetime |
ISO-8601 instant when the Scene was captured | direct |
| time_range | 0..1 String |
Reserved slot for v2 animated time-range Scenes | direct |
| visible_feature_ids | 1..* String |
Stable feature IDs visible at capture | direct |
| feature_set_hash | 1 String |
SHA-256 hex (lowercase, 64 chars) of JSON | direct |
| thumbnail_asset_ref | 1 String |
STAC asset key (path + name within the plot's STAC item) | direct |
| transition_duration_ms | 1 Integer |
Playback transition duration in milliseconds | direct |
| tags | * String |
Free-text labels assigned to this feature by the analyst | BaseFeatureProperties |
| provenance | * LogEntry |
PROV-aligned provenance records (append-only log of tool operations) | BaseFeatureProperties |
Usages¶
| used by | used in | type | used |
|---|---|---|---|
| SceneFeature | properties | range | SceneProperties |
Identifier and Mapping Information¶
Schema Source¶
- from schema: https://debrief.info/schemas/debrief
Mappings¶
| Mapping Type | Mapped Value |
|---|---|
| self | debrief:SceneProperties |
| native | debrief:SceneProperties |
LinkML Source¶
Direct¶
name: SceneProperties
description: Properties class for a Scene child Feature. A Scene is a single captured
moment in a Storyboard — viewport, timestamp, and per-feature visibility.
from_schema: https://debrief.info/schemas/debrief
is_a: BaseFeatureProperties
attributes:
kind:
name: kind
description: Feature kind discriminator (pinned to STORYBOARD_SCENE)
from_schema: https://debrief.info/schemas/storyboard
domain_of:
- BaseFeatureProperties
- TrackProperties
- ReferenceLocationProperties
- SystemStateProperties
- MultiPointFeatureProperties
- MultiPolygonFeatureProperties
- NarrativeEntryProperties
- CircleAnnotationProperties
- RectangleAnnotationProperties
- LineAnnotationProperties
- TextAnnotationProperties
- VectorAnnotationProperties
- PolyAnnotationProperties
- SelectionRequirement
- SystemRecordProperties
- StoryboardProperties
- SceneProperties
range: FeatureKindEnum
required: true
equals_string: STORYBOARD_SCENE
id:
name: id
description: ULID (26 chars, Crockford base-32). Immutable after create.
from_schema: https://debrief.info/schemas/storyboard
domain_of:
- TrackFeature
- ReferenceLocation
- SystemState
- MultiPointFeature
- MultiPolygonFeature
- NarrativeEntry
- CircleAnnotation
- RectangleAnnotation
- LineAnnotation
- TextAnnotation
- VectorAnnotation
- PolyAnnotation
- Tool
- PlatformRecord
- PlotSummary
- StacItemSummary
- GeoJSONFeature
- StoryboardProperties
- SceneProperties
- StoryboardFeature
- SceneFeature
range: string
required: true
pattern: ^[0-9A-HJKMNP-TV-Z]{26}$
storyboard_id:
name: storyboard_id
description: Foreign key to parent Storyboard.properties.id (ULID).
from_schema: https://debrief.info/schemas/storyboard
rank: 1000
domain_of:
- SceneProperties
range: string
required: true
pattern: ^[0-9A-HJKMNP-TV-Z]{26}$
title:
name: title
description: Display title. Defaults to DTG of timestamp in DDHHmmZ MMM YY; falls
back to ISO-8601 on parse failure.
from_schema: https://debrief.info/schemas/storyboard
domain_of:
- PlotSummary
- StacItemSummary
- DatasetEntry
- SceneProperties
range: string
required: true
description:
name: description
description: Markdown per-scene narrative
from_schema: https://debrief.info/schemas/storyboard
domain_of:
- ReferenceLocationProperties
- MultiPointFeatureProperties
- MultiPolygonFeatureProperties
- Tool
- ToolParameter
- LevelDefinition
- StoryboardProperties
- SceneProperties
range: string
required: false
viewport:
name: viewport
description: Map viewport camera state at capture time
from_schema: https://debrief.info/schemas/storyboard
domain_of:
- SpatialSlice
- SceneProperties
range: Viewport
required: true
timestamp:
name: timestamp
description: ISO-8601 instant when the Scene was captured. Drives Scene ordering
(ascending within a Storyboard). MUST be unique within a Storyboard.
from_schema: https://debrief.info/schemas/storyboard
domain_of:
- LogEntry
- TuneAnnotation
- FileProvEntry
- PropertiesProvenanceEntry
- FeatureSelection
- SceneProperties
range: datetime
required: true
time_range:
name: time_range
description: Reserved slot for v2 animated time-range Scenes. MUST be absent (null)
in schema v1.
from_schema: https://debrief.info/schemas/storyboard
rank: 1000
domain_of:
- SceneProperties
range: string
required: false
visible_feature_ids:
name: visible_feature_ids
description: Stable feature IDs visible at capture. Canonicalised (trim, reject
empty, dedupe, sort lexicographically) by the CRUD module before hashing. Order-insensitive
from the consumer's perspective.
from_schema: https://debrief.info/schemas/storyboard
rank: 1000
domain_of:
- SceneProperties
range: string
required: true
multivalued: true
feature_set_hash:
name: feature_set_hash
description: SHA-256 hex (lowercase, 64 chars) of JSON.stringify(canonical visible_feature_ids).
Recomputed on every create/update touching visible_feature_ids.
from_schema: https://debrief.info/schemas/storyboard
rank: 1000
domain_of:
- SceneProperties
range: string
required: true
pattern: ^[0-9a-f]{64}$
thumbnail_asset_ref:
name: thumbnail_asset_ref
description: 'STAC asset key (path + name within the plot''s STAC item). Populated
by #216 at capture time via #174 helpers.'
from_schema: https://debrief.info/schemas/storyboard
rank: 1000
domain_of:
- SceneProperties
range: string
required: true
transition_duration_ms:
name: transition_duration_ms
description: Playback transition duration in milliseconds. Default 500.
from_schema: https://debrief.info/schemas/storyboard
rank: 1000
domain_of:
- SceneProperties
range: integer
required: true
minimum_value: 0
Induced¶
name: SceneProperties
description: Properties class for a Scene child Feature. A Scene is a single captured
moment in a Storyboard — viewport, timestamp, and per-feature visibility.
from_schema: https://debrief.info/schemas/debrief
is_a: BaseFeatureProperties
attributes:
kind:
name: kind
description: Feature kind discriminator (pinned to STORYBOARD_SCENE)
from_schema: https://debrief.info/schemas/storyboard
alias: kind
owner: SceneProperties
domain_of:
- BaseFeatureProperties
- TrackProperties
- ReferenceLocationProperties
- SystemStateProperties
- MultiPointFeatureProperties
- MultiPolygonFeatureProperties
- NarrativeEntryProperties
- CircleAnnotationProperties
- RectangleAnnotationProperties
- LineAnnotationProperties
- TextAnnotationProperties
- VectorAnnotationProperties
- PolyAnnotationProperties
- SelectionRequirement
- SystemRecordProperties
- StoryboardProperties
- SceneProperties
range: FeatureKindEnum
required: true
equals_string: STORYBOARD_SCENE
id:
name: id
description: ULID (26 chars, Crockford base-32). Immutable after create.
from_schema: https://debrief.info/schemas/storyboard
alias: id
owner: SceneProperties
domain_of:
- TrackFeature
- ReferenceLocation
- SystemState
- MultiPointFeature
- MultiPolygonFeature
- NarrativeEntry
- CircleAnnotation
- RectangleAnnotation
- LineAnnotation
- TextAnnotation
- VectorAnnotation
- PolyAnnotation
- Tool
- PlatformRecord
- PlotSummary
- StacItemSummary
- GeoJSONFeature
- StoryboardProperties
- SceneProperties
- StoryboardFeature
- SceneFeature
range: string
required: true
pattern: ^[0-9A-HJKMNP-TV-Z]{26}$
storyboard_id:
name: storyboard_id
description: Foreign key to parent Storyboard.properties.id (ULID).
from_schema: https://debrief.info/schemas/storyboard
rank: 1000
alias: storyboard_id
owner: SceneProperties
domain_of:
- SceneProperties
range: string
required: true
pattern: ^[0-9A-HJKMNP-TV-Z]{26}$
title:
name: title
description: Display title. Defaults to DTG of timestamp in DDHHmmZ MMM YY; falls
back to ISO-8601 on parse failure.
from_schema: https://debrief.info/schemas/storyboard
alias: title
owner: SceneProperties
domain_of:
- PlotSummary
- StacItemSummary
- DatasetEntry
- SceneProperties
range: string
required: true
description:
name: description
description: Markdown per-scene narrative
from_schema: https://debrief.info/schemas/storyboard
alias: description
owner: SceneProperties
domain_of:
- ReferenceLocationProperties
- MultiPointFeatureProperties
- MultiPolygonFeatureProperties
- Tool
- ToolParameter
- LevelDefinition
- StoryboardProperties
- SceneProperties
range: string
required: false
viewport:
name: viewport
description: Map viewport camera state at capture time
from_schema: https://debrief.info/schemas/storyboard
alias: viewport
owner: SceneProperties
domain_of:
- SpatialSlice
- SceneProperties
range: Viewport
required: true
timestamp:
name: timestamp
description: ISO-8601 instant when the Scene was captured. Drives Scene ordering
(ascending within a Storyboard). MUST be unique within a Storyboard.
from_schema: https://debrief.info/schemas/storyboard
alias: timestamp
owner: SceneProperties
domain_of:
- LogEntry
- TuneAnnotation
- FileProvEntry
- PropertiesProvenanceEntry
- FeatureSelection
- SceneProperties
range: datetime
required: true
time_range:
name: time_range
description: Reserved slot for v2 animated time-range Scenes. MUST be absent (null)
in schema v1.
from_schema: https://debrief.info/schemas/storyboard
rank: 1000
alias: time_range
owner: SceneProperties
domain_of:
- SceneProperties
range: string
required: false
visible_feature_ids:
name: visible_feature_ids
description: Stable feature IDs visible at capture. Canonicalised (trim, reject
empty, dedupe, sort lexicographically) by the CRUD module before hashing. Order-insensitive
from the consumer's perspective.
from_schema: https://debrief.info/schemas/storyboard
rank: 1000
alias: visible_feature_ids
owner: SceneProperties
domain_of:
- SceneProperties
range: string
required: true
multivalued: true
feature_set_hash:
name: feature_set_hash
description: SHA-256 hex (lowercase, 64 chars) of JSON.stringify(canonical visible_feature_ids).
Recomputed on every create/update touching visible_feature_ids.
from_schema: https://debrief.info/schemas/storyboard
rank: 1000
alias: feature_set_hash
owner: SceneProperties
domain_of:
- SceneProperties
range: string
required: true
pattern: ^[0-9a-f]{64}$
thumbnail_asset_ref:
name: thumbnail_asset_ref
description: 'STAC asset key (path + name within the plot''s STAC item). Populated
by #216 at capture time via #174 helpers.'
from_schema: https://debrief.info/schemas/storyboard
rank: 1000
alias: thumbnail_asset_ref
owner: SceneProperties
domain_of:
- SceneProperties
range: string
required: true
transition_duration_ms:
name: transition_duration_ms
description: Playback transition duration in milliseconds. Default 500.
from_schema: https://debrief.info/schemas/storyboard
rank: 1000
alias: transition_duration_ms
owner: SceneProperties
domain_of:
- SceneProperties
range: integer
required: true
minimum_value: 0
tags:
name: tags
description: Free-text labels assigned to this feature by the analyst
from_schema: https://debrief.info/schemas/common
rank: 1000
alias: tags
owner: SceneProperties
domain_of:
- BaseFeatureProperties
- StacExtensionProperties
- StacItemSummary
range: string
required: false
multivalued: true
provenance:
name: provenance
description: PROV-aligned provenance records (append-only log of tool operations)
from_schema: https://debrief.info/schemas/common
rank: 1000
alias: provenance
owner: SceneProperties
domain_of:
- BaseFeatureProperties
- SystemStateProperties
- SystemRecordProperties
range: LogEntry
multivalued: true
inlined: true
inlined_as_list: true