Processing fields¶
These are the seven fields exposed by the current implementation. The v1.2.0 schema defines their JSON representation.
| STAC field | Python property | Value |
|---|---|---|
processing:expression |
expression |
ProcessingExpression or a dictionary when assigning; a wrapper when reading. |
processing:lineage |
lineage |
Text describing the processing history. |
processing:level |
level |
A short level name, such as L2A. |
processing:facility |
facility |
Facility name. |
processing:software |
software |
Dictionary of software names and version strings. |
processing:version |
version |
Primary processor or chain version. |
processing:datetime |
processing_datetime |
Python datetime, serialized as a string. |
These accessors are shared by the Item, Asset, item asset definition, and Provider wrappers. Absent fields read as None, subject to the Asset fallback described below. Assigning None removes the local field. apply() assigns every field, so omitted arguments clear existing local values.
Expressions¶
ProcessingExpression.create(format=..., expression=...) constructs an expression wrapper. Both members are required by the schema; the payload type depends on the format. The wrapper accepts arbitrary payloads without interpreting or executing them.
ProcessingExpression.to_dict() returns its underlying dictionary, without copying it. Assigning a wrapper to the extension stores that dictionary. Missing required members raise pystac.RequiredPropertyMissing when accessed; constructing a wrapper does not validate its contents.
Storage and inheritance¶
| Wrapper | Storage |
|---|---|
ItemProcessingExtension |
item.properties |
AssetProcessingExtension |
asset.extra_fields |
ItemAssetsProcessingExtension |
item_asset.properties |
ProviderProcessingExtension |
provider.extra_fields |
An Asset wrapper created with an Item owner falls back to that Item's properties when a field is absent locally. Writes always target the Asset. Removing an override exposes the Item value again. Collection-owned Assets have no such fallback. Item asset definitions do not inherit Collection fields.
Collection summaries¶
ProcessingExtension.summaries(collection) returns SummariesProcessingExtension:
| Properties | Representation |
|---|---|
lineage, level, facility, version, processing_datetime |
Lists, returned in full. |
expression, software |
Dictionaries accessed through PySTAC's schema-summary API. |
Summary datetime values are strings: this helper does not convert them to or from Python datetimes. Dictionary summaries describe possible values using JSON Schema; they are not ordinary Item field values. Setters replace the whole summary, and None removes it. There is no summary apply() method or automatic aggregation of Items.
See the guide for examples and validation boundaries for limitations.