diff --git a/README.md b/README.md index 63aed17..531a239 100644 --- a/README.md +++ b/README.md @@ -36,6 +36,7 @@ The fields in the table below can be used in these parts of STAC documents: | product:type | string | The product type. | | product:timeliness | string | The average expected timeliness of the product as an [ISO 8601 Duration](https://en.wikipedia.org/wiki/ISO_8601#Durations). | | product:timeliness_category | string | A proprietary category identifier for the timeliness of the product. | +| product:acquisition_type | string | The acquisition type of the product. | > \[!IMPORTANT] > `product:timeliness` is REQUIRED if `product:timeliness_category` is provided. @@ -49,6 +50,28 @@ Some extensions may specify more specific rules for this field. This field superceedes the `sar:product_type` field. +#### product:acquisition_type + +The product acquisition type describes the purpose of the acquisition. +It is similar to the `acquisitionType` field from the +[OGC® Earth Observation Metadata profile of Observations & Measurements , Table 5](https://docs.ogc.org/is/10-157r4/10-157r4.html#24): + +> Used to distinguish at a high level the appropriateness of the acquisition for "general" use, +> whether the product is a nominal acquisition, special calibration product or other. + +Admitted values are: +- `nominal` +- `calibration` +- `other` + +Sentinel-2 [Annex A (page 90)](https://sentinel.esa.int/documents/247904/2047089/Sentinel-2_Cal-Val_Phase-E2.) provides the calibration sites so some +acquisitions over those areas will be acquired for calibration purposes. +The `product:acquisition_type` field brings is the possibility to "flag" products as `nominal`, `calibration` +or `other` (not `nominal`, not `calibration`). + +[Sentinel-1](https://sentinels.copernicus.eu/web/sentinel/-/copernicus-sentinel-1-calibration-campaign-on-going-in-europe) provides few acquisitions +in given dates and orbits that were acquired in a different mode. Those products would have `calibration`. + #### Timeliness Below you can find an example that shows how the timeliness fields could be used. diff --git a/examples/collection.json b/examples/collection.json index 9db8c25..f7185bb 100644 --- a/examples/collection.json +++ b/examples/collection.json @@ -39,6 +39,9 @@ ], "product:timeliness_category": [ "NRT" + ], + "product:acquisition_type": [ + "calibration" ] }, "links": [ diff --git a/examples/item.json b/examples/item.json index e748d78..35cf800 100644 --- a/examples/item.json +++ b/examples/item.json @@ -16,7 +16,8 @@ ], "product:type": "GRD", "product:timeliness": "PT3H", - "product:timeliness_category": "NRT" + "product:timeliness_category": "NRT", + "product:acquisition_type": "nominal" }, "geometry": { "type": "Polygon", diff --git a/json-schema/schema.json b/json-schema/schema.json index a637059..362ff77 100644 --- a/json-schema/schema.json +++ b/json-schema/schema.json @@ -119,6 +119,9 @@ }, "product:timeliness_category": { "$ref": "#/definitions/product:timeliness_category" + }, + "product:acquisition_type": { + "$ref": "#/definitions/product:acquisition_type" } }, "patternProperties": { @@ -137,6 +140,10 @@ "product:timeliness_category": { "type": "string" }, + "product:acquisition_type": { + "type": "string", + "enum": [ "nominal", "calibration", "other" ] + }, "json_schema": { "$comment": "JSON Schema", "type": "object"