Class: StacItemPropertiesΒΆ
STAC Item properties block. Carries STAC-spec core fields (datetime, start_datetime?, end_datetime?, title?, description?, license?, providers?, created?, updated?) and mixes in StacExtensionProperties from stac-extension.yaml for the debrief:* extension fields (Research R-003).
Open-record per Article XV.2 β the generator post-processor at shared/schemas/scripts/generate.py adds Pydantic model_config = ConfigDict(extra='allow', ...) and TypeScript [key: string]: unknown so additional <extension>:<key> keys (processing:*, proj:*, future extensions) pass through without rejection. Consumers narrow per extension via per-extension Zod / type-guard helpers (the pattern already established for debrief:platforms).
URI: debrief:class/StacItemProperties
classDiagram
class StacItemProperties
click StacItemProperties href "../../classes/StacItemProperties/"
StacExtensionProperties <|-- StacItemProperties
click StacExtensionProperties href "../../classes/StacExtensionProperties/"
StacItemProperties : created
StacItemProperties : datetime
StacItemProperties : description
StacItemProperties : end_datetime
StacItemProperties : feature_tags
StacItemProperties : license
StacItemProperties : overrides
StacItemProperties : platforms
StacItemProperties --> "*" PlatformRecord : platforms
click PlatformRecord href "../../classes/PlatformRecord/"
StacItemProperties : provenance_log
StacItemProperties --> "*" PropertiesProvenanceEntry : provenance_log
click PropertiesProvenanceEntry href "../../classes/PropertiesProvenanceEntry/"
StacItemProperties : providers
StacItemProperties --> "*" StacProvider : providers
click StacProvider href "../../classes/StacProvider/"
StacItemProperties : start_datetime
StacItemProperties : tags
StacItemProperties : title
StacItemProperties : updated
InheritanceΒΆ
- StacItemProperties [ StacExtensionProperties]
SlotsΒΆ
| Name | Cardinality and Range | Description | Inheritance |
|---|---|---|---|
| datetime | 1 String |
Item datetime per STAC spec (ISO 8601) | direct |
| start_datetime | 0..1 String |
ISO 8601 range start | direct |
| end_datetime | 0..1 String |
ISO 8601 range end | direct |
| title | 0..1 String |
Human-readable plot title | direct |
| description | 0..1 String |
Human-readable plot description | direct |
| license | 0..1 String |
SPDX identifier or "other" (STAC 1 | direct |
| providers | * StacProvider |
Organisations involved in producing / hosting this plot | direct |
| created | 0..1 String |
Processing-time creation timestamp (ISO 8601) | direct |
| updated | 0..1 String |
Processing-time last-update timestamp (ISO 8601) | direct |
| platforms | * PlatformRecord |
Fully-resolved per-platform metadata array | StacExtensionProperties |
| tags | * String |
Plot-level tags β free-text labels applied to the entire plot by the analyst | StacExtensionProperties |
| feature_tags | * String |
Union of all feature-level tags from the plot's GeoJSON features | StacExtensionProperties |
| overrides | * String |
Flat list of field names on item | StacExtensionProperties |
| provenance_log | * PropertiesProvenanceEntry |
Per-commit provenance entries written by the Properties Panel | StacExtensionProperties |
UsagesΒΆ
| used by | used in | type | used |
|---|---|---|---|
| StacItem | properties | range | StacItemProperties |
Identifier and Mapping InformationΒΆ
Schema SourceΒΆ
- from schema: https://debrief.info/schemas/debrief
MappingsΒΆ
| Mapping Type | Mapped Value |
|---|---|
| self | debrief:StacItemProperties |
| native | debrief:StacItemProperties |
LinkML SourceΒΆ
DirectΒΆ
name: StacItemProperties
description: 'STAC Item `properties` block. Carries STAC-spec core fields (`datetime`,
`start_datetime?`, `end_datetime?`, `title?`, `description?`, `license?`, `providers?`,
`created?`, `updated?`) and mixes in `StacExtensionProperties` from stac-extension.yaml
for the `debrief:*` extension fields (Research R-003).
Open-record per Article XV.2 β the generator post-processor at `shared/schemas/scripts/generate.py`
adds Pydantic `model_config = ConfigDict(extra=''allow'', ...)` and TypeScript `[key:
string]: unknown` so additional `<extension>:<key>` keys (`processing:*`, `proj:*`,
future extensions) pass through without rejection. Consumers narrow per extension
via per-extension Zod / type-guard helpers (the pattern already established for
`debrief:platforms`).'
from_schema: https://debrief.info/schemas/debrief
mixins:
- StacExtensionProperties
attributes:
datetime:
name: datetime
description: Item datetime per STAC spec (ISO 8601). May be null when start_datetime
+ end_datetime are set; the live fixtures always carry a non-null value so it
is modelled as required string.
from_schema: https://debrief.info/schemas/stac
domain_of:
- PlotSummary
- StacItemSummary
- StacItemProperties
range: string
required: true
start_datetime:
name: start_datetime
description: ISO 8601 range start. Required when datetime is null.
from_schema: https://debrief.info/schemas/stac
domain_of:
- StacItemSummary
- StacItemProperties
range: string
required: false
end_datetime:
name: end_datetime
description: ISO 8601 range end. Required when datetime is null.
from_schema: https://debrief.info/schemas/stac
domain_of:
- StacItemSummary
- StacItemProperties
range: string
required: false
title:
name: title
description: Human-readable plot title.
from_schema: https://debrief.info/schemas/stac
domain_of:
- PlotSummary
- StacItemSummary
- StacItemProperties
- StacCatalog
- StacLink
- StacAsset
- StacItemAssetDefinition
- StacCollection
- DatasetEntry
- SceneProperties
- SceneThumbnailAssetEntry
range: string
required: false
description:
name: description
description: Human-readable plot description.
from_schema: https://debrief.info/schemas/stac
domain_of:
- ReferenceLocationProperties
- MultiPointFeatureProperties
- MultiPolygonFeatureProperties
- Tool
- ToolParameter
- StacProvider
- StacItemProperties
- StacCatalog
- StacAsset
- StacItemAssetDefinition
- StacCollection
- LevelDefinition
- StoryboardProperties
- SceneProperties
- MCPParamSchema
- MCPToolDefinition
- ToolDefinition
range: string
required: false
license:
name: license
description: SPDX identifier or "other" (STAC 1.1 addition).
from_schema: https://debrief.info/schemas/stac
rank: 1000
domain_of:
- StacItemProperties
- StacCollection
range: string
required: false
providers:
name: providers
description: Organisations involved in producing / hosting this plot. STAC 1.1
addition; present on every live preview/workspace/samples item.
from_schema: https://debrief.info/schemas/stac
rank: 1000
domain_of:
- StacItemProperties
- StacCollection
range: StacProvider
required: false
multivalued: true
inlined: true
inlined_as_list: true
created:
name: created
description: Processing-time creation timestamp (ISO 8601).
from_schema: https://debrief.info/schemas/stac
rank: 1000
domain_of:
- StacItemProperties
range: string
required: false
updated:
name: updated
description: Processing-time last-update timestamp (ISO 8601).
from_schema: https://debrief.info/schemas/stac
rank: 1000
domain_of:
- StacItemProperties
range: string
required: false
InducedΒΆ
name: StacItemProperties
description: 'STAC Item `properties` block. Carries STAC-spec core fields (`datetime`,
`start_datetime?`, `end_datetime?`, `title?`, `description?`, `license?`, `providers?`,
`created?`, `updated?`) and mixes in `StacExtensionProperties` from stac-extension.yaml
for the `debrief:*` extension fields (Research R-003).
Open-record per Article XV.2 β the generator post-processor at `shared/schemas/scripts/generate.py`
adds Pydantic `model_config = ConfigDict(extra=''allow'', ...)` and TypeScript `[key:
string]: unknown` so additional `<extension>:<key>` keys (`processing:*`, `proj:*`,
future extensions) pass through without rejection. Consumers narrow per extension
via per-extension Zod / type-guard helpers (the pattern already established for
`debrief:platforms`).'
from_schema: https://debrief.info/schemas/debrief
mixins:
- StacExtensionProperties
attributes:
datetime:
name: datetime
description: Item datetime per STAC spec (ISO 8601). May be null when start_datetime
+ end_datetime are set; the live fixtures always carry a non-null value so it
is modelled as required string.
from_schema: https://debrief.info/schemas/stac
alias: datetime
owner: StacItemProperties
domain_of:
- PlotSummary
- StacItemSummary
- StacItemProperties
range: string
required: true
start_datetime:
name: start_datetime
description: ISO 8601 range start. Required when datetime is null.
from_schema: https://debrief.info/schemas/stac
alias: start_datetime
owner: StacItemProperties
domain_of:
- StacItemSummary
- StacItemProperties
range: string
required: false
end_datetime:
name: end_datetime
description: ISO 8601 range end. Required when datetime is null.
from_schema: https://debrief.info/schemas/stac
alias: end_datetime
owner: StacItemProperties
domain_of:
- StacItemSummary
- StacItemProperties
range: string
required: false
title:
name: title
description: Human-readable plot title.
from_schema: https://debrief.info/schemas/stac
alias: title
owner: StacItemProperties
domain_of:
- PlotSummary
- StacItemSummary
- StacItemProperties
- StacCatalog
- StacLink
- StacAsset
- StacItemAssetDefinition
- StacCollection
- DatasetEntry
- SceneProperties
- SceneThumbnailAssetEntry
range: string
required: false
description:
name: description
description: Human-readable plot description.
from_schema: https://debrief.info/schemas/stac
alias: description
owner: StacItemProperties
domain_of:
- ReferenceLocationProperties
- MultiPointFeatureProperties
- MultiPolygonFeatureProperties
- Tool
- ToolParameter
- StacProvider
- StacItemProperties
- StacCatalog
- StacAsset
- StacItemAssetDefinition
- StacCollection
- LevelDefinition
- StoryboardProperties
- SceneProperties
- MCPParamSchema
- MCPToolDefinition
- ToolDefinition
range: string
required: false
license:
name: license
description: SPDX identifier or "other" (STAC 1.1 addition).
from_schema: https://debrief.info/schemas/stac
rank: 1000
alias: license
owner: StacItemProperties
domain_of:
- StacItemProperties
- StacCollection
range: string
required: false
providers:
name: providers
description: Organisations involved in producing / hosting this plot. STAC 1.1
addition; present on every live preview/workspace/samples item.
from_schema: https://debrief.info/schemas/stac
rank: 1000
alias: providers
owner: StacItemProperties
domain_of:
- StacItemProperties
- StacCollection
range: StacProvider
required: false
multivalued: true
inlined: true
inlined_as_list: true
created:
name: created
description: Processing-time creation timestamp (ISO 8601).
from_schema: https://debrief.info/schemas/stac
rank: 1000
alias: created
owner: StacItemProperties
domain_of:
- StacItemProperties
range: string
required: false
updated:
name: updated
description: Processing-time last-update timestamp (ISO 8601).
from_schema: https://debrief.info/schemas/stac
rank: 1000
alias: updated
owner: StacItemProperties
domain_of:
- StacItemProperties
range: string
required: false
platforms:
name: platforms
description: 'Fully-resolved per-platform metadata array. Each entry represents
one platform in the plot with merged registry + override data.
'
from_schema: https://debrief.info/schemas/stac-extension
rank: 1000
slot_uri: debrief:platforms
alias: platforms
owner: StacItemProperties
domain_of:
- StacExtensionProperties
- StacItemSummary
range: PlatformRecord
required: false
multivalued: true
inlined: true
inlined_as_list: true
tags:
name: tags
description: 'Plot-level tags β free-text labels applied to the entire plot by
the analyst. Trimmed non-empty strings with no duplicates.
'
from_schema: https://debrief.info/schemas/stac-extension
slot_uri: debrief:tags
alias: tags
owner: StacItemProperties
domain_of:
- BaseFeatureProperties
- VertexMetadata
- StacExtensionProperties
- StacItemSummary
range: string
required: false
multivalued: true
feature_tags:
name: feature_tags
description: 'Union of all feature-level tags from the plot''s GeoJSON features.
Aggregated at item level for discoverability. Authoritative per-feature tags
remain in each GeoJSON feature''s properties.
'
from_schema: https://debrief.info/schemas/stac-extension
rank: 1000
slot_uri: debrief:feature_tags
alias: feature_tags
owner: StacItemProperties
domain_of:
- StacExtensionProperties
- StacItemSummary
range: string
required: false
multivalued: true
overrides:
name: overrides
description: 'Flat list of field names on item.properties that the analyst has
overridden via the Properties Panel. Auto-derivation routines (e.g. stacService.updateTemporalMetadata)
MUST skip any field whose name appears here. Sorted alphabetically on write;
deduplicated.
'
from_schema: https://debrief.info/schemas/stac-extension
rank: 1000
slot_uri: debrief:overrides
alias: overrides
owner: StacItemProperties
domain_of:
- StacExtensionProperties
range: string
required: false
multivalued: true
provenance_log:
name: provenance_log
description: 'Per-commit provenance entries written by the Properties Panel. Bounded
at 500 entries per item; overflow rotates to sibling provenance_log_archive.jsonl
in the item directory. Append-only (Article III.3 β audit trail immutable).
'
from_schema: https://debrief.info/schemas/stac-extension
rank: 1000
slot_uri: debrief:provenance_log
alias: provenance_log
owner: StacItemProperties
domain_of:
- StacExtensionProperties
range: PropertiesProvenanceEntry
required: false
multivalued: true
inlined: true
inlined_as_list: true