stac-extensions.github.io

STAC Extensions

The stac-extensions github organization is a home for extensions to the SpatioTemporal Asset Catalog specification.

To learn about STAC and Extensions start with the extensions section of the core specification. It explains how extensions work, lists all the known extensions, and has instructions for how to go about ‘extending STAC’.

The stac-extensions github organization is a home for many of the leading ‘community extensions’, providing a neutral home for collaboration. Many of these used to be in the core stac-spec repository, but were removed for 1.0.0 so they could evolve at their own pace, instead of having to follow the core STAC release cycle.

List of STAC Extensions

The definitive list of STAC Extensions is in the core spec repository, in the Extensions README. This includes the official core extensions, as well as a complete list of ‘community’ extensions. A subset of the community extensions use this stac-extensions GitHub organization, and those are listed in the next section.

Extensions in stac-extensions organization

These extensions add new fields or semantics to STAC objects.

Extension Title Field Name Prefix Scope Maturity Published? Description
CARD4L card4l. Item Proposal No How to comply to the CEOS CARD4L product family specifications (Optical and SAR)
Data Cube cube Item, Collection Proposal Yes Data Cube related metadata, especially to describe their dimensions.
Electro-Optical eo Item, Collection Stable Yes Covers electro-optical data that represents a snapshot of the Earth for a single date and time. It could consist of multiple spectral bands, for example visible bands, infrared bands, red edge bands and panchromatic bands. The extension provides common fields like bands, cloud cover, gsd and more.
File Info file Item, Collection Proposal Yes Provides a way to specify file details such as size, data type and checksum for assets in Items and Collections.
Item Asset Definition - Collection Proposal Yes Provides a way to specify details about what assets may be found in Items belonging to a Collection.
Label label Item, Collection Proposal Yes Items that relate labeled AOIs with source imagery
ML AOI ml-aoi Item, Collection WIP No An Item and Collection extension to provide labeled training data for machine learning models.
MGRS mgrs Item, Collection WIP No  
Point Cloud pc Item, Collection Proposal Yes Provides a way to describe point cloud datasets. The point clouds can come from either active or passive sensors, and data is frequently acquired using tools such as LiDAR or coincidence-matched imagery.
Processing processing Item, Collection Proposal Yes Indicates from which processing chain data originates and how the data itself has been produced.
Projection proj Item, Collection Stable Yes Provides a way to describe Items whose assets are in a geospatial projection.
Raster raster Item, Collection Proposal Yes Describes raster assets at band level (one or multiple) with specific information such as data type, unit, number of bits used, nodata.
SAR sar Item, Collection Proposal Yes Covers synthetic-aperture radar data that represents a snapshot of the earth for a single date and time.
Satellite sat Item, Collection Proposal Yes Satellite related metadata for data collected from satellites.
Scientific Citation sci Item, Collection Stable Yes Metadata that indicate from which publication data originates and how the data itself should be cited or referenced.
Single File STAC - Catalog Proposal No An extension to provide a set of Collections and Items within a single file STAC.
Storage storage Item, Collection WIP No Provides additional fields relating to how the asset is stored.
Tiled Assets tiles Item, Catalog, Collection Proposal No Allows to specify numerous assets using asset templates via tile matrices and dimensions.
Timestamps - Item, Collection Proposal Yes Allows to specify numerous timestamps for assets and metadata.
Versioning Indicators - Item, Collection Proposal Yes Provides fields and link relation types to provide a version and indicate deprecation.
View Geometry view Item, Collection Stable Yes View Geometry adds metadata related to angles of sensors and other radiance angles that affect the view of resulting data
Virtual Assets virtual Item, Collection WIP No Allows the description of virtual assets composed from 2 or more assets with cross references and repositioning.

Extension Maturity

Extensions in this directory are meant to evolve to maturity, and thus may be in different states in terms of stability and number of implementations. All extensions included must include a maturity classification, so that STAC spec users can easily get a sense of how much they can count on the extension.

Maturity Classification Min Impl # Description Stability
Proposal 0 An idea put forward by a community member to gather feedback Not stable - breaking changes almost guaranteed as implementers try out the idea.
Pilot 1 Idea is fleshed out, with examples and a JSON schema, and implemented in one or more catalogs. Additional implementations encouraged to help give feedback Approaching stability - breaking changes are not anticipated but can easily come from additional feedback
Candidate 3 A number of implementers are using it and are standing behind it as a solid extension. Can generally count on an extension at this maturity level Mostly stable, breaking changes require a new version and minor changes are unlikely. The extension has a code owner.
Stable 6 Highest current level of maturity. The community of extension maintainers commits to a STAC review process for any changes, which are not made lightly. Completely stable, all changes require a new version number and review process.
Deprecated N/A A previous extension that has likely been superseded by a newer one or did not work out for some reason. DO NOT USE, is not supported

Maturity mostly comes through diverse implementations, so the minimum number of implementations column is the main gating function for an extension to mature. But extension authors can also choose to hold back the maturity advancement if they don’t feel they are yet ready to commit to the less breaking changes of the next level.

A ‘mature’ classification level will likely be added once there are extensions that have been stable for over a year and are used in twenty or more implementations.

Adding a new extension

Using the stac-extensions template

TODO: Overview of using the template.

Step-by-step (add an image or two)