radiantearth / stac-spec

SpatioTemporal Asset Catalog specification - making geospatial assets openly searchable and crawlable
https://stacspec.org
Apache License 2.0
777 stars 178 forks source link

Forecasts extension? #1180

Closed cboettig closed 1 year ago

cboettig commented 2 years ago

Is there interest in developing an extension for forecast objects?

I am interested in thinking about what a STAC catalog entry would like for forecast objects, such NOAA's Global Ensemble Forecast System products (e.g. https://registry.opendata.aws/noaa-gefs/), though one could imagine a forecast catalog for just about any asset type already used in STAC collections. Forecasts are a common spatio-temporal data object, but require additional dimensions that are not easily captured in existing 2 or 3-dimensional extension formats such as raster and datacube.

A forecast always has two separate notions of time: the time the forecast is made, or the time the forecast is for. if I ask for a forecast of, say, 2022-05-20 00:00:00, a forecast catalog such as the NOAA GEFS will contain hundreds of different forecasts of that same time, all made at increasingly longer intervals prior to that date.

Forecasts must usually express some measure of uncertainty as well. This is often in the form of ensemble members, as in the example of the GEFS files, but could also be expressed in terms of a parametric distribution (e.g. as mean and standard deviation, or some other metric).

So unlike existing formats, forecasts are more inherently higher dimensional, requiring a notion of time horizon and a notion of uncertainty. Those dimensions may be captured by using separate assets, as in the case of the NOAA's GRIB (:see_no_evil:) files, or could be additional dimensions in asset serializations that support arbitrary dimensionality (netcdf, Zarr (#956)).

I imagine that a forecasting extension would provide additional metadata fields to declare these additional dimensions such as forecast horizon, and ensemble member, and possibly other forecast specific metadata (identifiers for forecasting model used, description of uncertainty, etc). I'd very much welcome any input or suggestions from anyone working in spatiotemporal forecasting.

TomAugspurger commented 2 years ago

xref https://github.com/radiantearth/stac-spec/discussions/1169

m-mohr commented 2 years ago

Yes, this would be interesting, indeed. At least I'll also be working with GRIB and STAC soon, although not yet with forecasts. But I'm sure this will be useful in the future.

m-mohr commented 2 years ago

Proposal at https://github.com/stac-extensions/forecast

cboettig commented 1 year ago

:tada: