Skip to content

STAC

Typed dictionaries for STAC entities.

rustac.Catalog

Bases: TypedDict

A STAC Catalog object represents a logical group of other Catalog, Collection, and Item objects.

description instance-attribute

description: Required[str]

Detailed multi-line description to fully explain the Catalog.

CommonMark 0.29 syntax MAY be used for rich text representation.

id instance-attribute

id: Required[str]

Identifier for the Catalog.

links: Required[list[Link]]

A list of references to other documents.

stac_extensions instance-attribute

stac_extensions: list[str] | None

A list of extension identifiers the Catalog implements.

stac_version instance-attribute

stac_version: Required[str]

The STAC version the Catalog implements.

title instance-attribute

title: str | None

A short descriptive one-line title for the Catalog.

type instance-attribute

type: Required[str]

Set to Catalog if this Catalog only implements the Catalog spec.

rustac.Collection

Bases: TypedDict

The STAC Collection Specification defines a set of common fields to describe a group of Items that share properties and metadata.

assets instance-attribute

assets: dict[str, Asset] | None

Dictionary of asset objects that can be downloaded, each with a unique key.

description instance-attribute

description: Required[str]

Detailed multi-line description to fully explain the Collection.

CommonMark 0.29 syntax MAY be used for rich text representation.

extent instance-attribute

extent: Required[Extent]

Spatial and temporal extents.

id instance-attribute

id: Required[str]

Identifier for the Collection that is unique across all collections in the root catalog.

item_assets instance-attribute

item_assets: dict[str, ItemAsset] | None

A dictionary of assets that can be found in member Items.

keywords instance-attribute

keywords: list[str] | None

List of keywords describing the Collection.

license instance-attribute

license: Required[str]

License(s) of the data collection as SPDX License identifier, SPDX License expression, or other.

links: Required[list[Link]]

A list of references to other documents.

providers instance-attribute

providers: list[Provider] | None

A list of providers, which may include all organizations capturing or processing the data or the hosting provider.

stac_extensions instance-attribute

stac_extensions: list[str] | None

A list of extension identifiers the Collection implements.

stac_version instance-attribute

stac_version: Required[str]

The STAC version the Collection implements.

summaries instance-attribute

summaries: dict[str, Any] | None

A map of property summaries, either a set of values, a range of values or a JSON Schema.

title instance-attribute

title: str | None

A short descriptive one-line title for the Collection.

type instance-attribute

type: Required[str]

Must be set to Collection to be a valid Collection.

rustac.Item

Bases: TypedDict

An Item is a GeoJSON Feature augmented with foreign members relevant to a STAC object.

assets instance-attribute

assets: Required[dict[str, Asset]]

Dictionary of asset objects that can be downloaded, each with a unique key.

bbox instance-attribute

bbox: list[int | float] | None

REQUIRED if geometry is not null, prohibited if geometry is null.

Bounding Box of the asset represented by this Item, formatted according to RFC 7946, section 5.

collection instance-attribute

collection: str | None

The id of the STAC Collection this Item references to.

This field is required if a link with a collection relation type is present and is not allowed otherwise.

geometry instance-attribute

geometry: dict[str, Any] | None

Defines the full footprint of the asset represented by this item, formatted according to RFC 7946, section 3.1 if a geometry is provided or section 3.2 if no geometry is provided.

id instance-attribute

id: Required[str]

Provider identifier. The ID should be unique within the Collection that contains the Item.

links: Required[list[Link]]

List of link objects to resources and related URLs.

See the best practices for details on when the use self links is strongly recommended.

properties instance-attribute

properties: Required[Properties]

A dictionary of additional metadata for the Item.

stac_extensions instance-attribute

stac_extensions: list[str] | None

A list of extensions the Item implements.

stac_version instance-attribute

stac_version: Required[str]

The STAC version the Item implements.

type instance-attribute

type: Required[str]

Type of the GeoJSON Object. MUST be set to Feature.

rustac.ItemCollection

Bases: TypedDict

A GeoJSON feature collection of STAC Items.

features instance-attribute

features: list[Item]

STAC items.