diff --git a/CHANGELOG.md b/CHANGELOG.md index 647e690..3702b6e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,10 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). ## [Unreleased] +### Added + +- `file` extension + ## [0.1.3] - 2022-01-03 ### Added diff --git a/README.md b/README.md index 18894a2..cd28828 100644 --- a/README.md +++ b/README.md @@ -6,8 +6,11 @@ - Owner: @gadomski - Dataset homepage: http://github.com/stactools-packages/noaa-c-cap - STAC extensions used: - - [proj](https://github.com/stac-extensions/projection/) - - [label](https://github.com/stac-extensions/label/) + - [label](https://github.com/stac-extensions/label) + - [item-assets](https://github.com/stac-extensions/item-assets) + - [file](https://github.com/stac-extensions/file) + - [proj](https://github.com/stac-extensions/projection) + - [scientific](https://github.com/stac-extensions/scientific) - Extra fields: None Create STAC Items and Collections for NOAA C-CAP data. diff --git a/docker/Dockerfile-dev b/docker/Dockerfile-dev index e2a1ed1..00184ca 100644 --- a/docker/Dockerfile-dev +++ b/docker/Dockerfile-dev @@ -14,4 +14,4 @@ RUN pip install -r requirements-dev.txt \ && rm -r /opt/conda/lib/python$PYTHON_VERSION/site-packages/$DOCKER_NAMESPACE_PACKAGE_DIR COPY . ./ -RUN pip install -e . +RUN pip uninstall -y pystac && pip install -e . diff --git a/examples/collection.json b/examples/collection.json index f2dc5d9..401b908 100644 --- a/examples/collection.json +++ b/examples/collection.json @@ -7,7 +7,8 @@ { "rel": "root", "href": "./collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" }, { "rel": "item", @@ -77,6 +78,164 @@ "item_assets": { "data": { "type": "image/tiff; application=geotiff", + "file:values": [ + { + "values": [ + 0 + ], + "summary": "Background" + }, + { + "values": [ + 1 + ], + "summary": "Unclassified (Cloud, Shadow, etc)" + }, + { + "values": [ + 2 + ], + "summary": "High Intensity Developed" + }, + { + "values": [ + 3 + ], + "summary": "Medium Intensity Developed" + }, + { + "values": [ + 4 + ], + "summary": "Low Intensity Developed" + }, + { + "values": [ + 5 + ], + "summary": "Developed Open Space" + }, + { + "values": [ + 6 + ], + "summary": "Cultivated Land" + }, + { + "values": [ + 7 + ], + "summary": "Pasture/Hay" + }, + { + "values": [ + 8 + ], + "summary": "Grassland" + }, + { + "values": [ + 9 + ], + "summary": "Deciduous Forest" + }, + { + "values": [ + 10 + ], + "summary": "Evergreen Forest" + }, + { + "values": [ + 11 + ], + "summary": "Mixed Forest" + }, + { + "values": [ + 12 + ], + "summary": "Scrub/Shrub" + }, + { + "values": [ + 13 + ], + "summary": "Palustrine Forested Wetland" + }, + { + "values": [ + 14 + ], + "summary": "Palustrine Scrub/Shrub Wetland" + }, + { + "values": [ + 15 + ], + "summary": "Palustrine Emergent Wetland" + }, + { + "values": [ + 16 + ], + "summary": "Estuarine Forested Wetland" + }, + { + "values": [ + 17 + ], + "summary": "Estuarine Scrub/Shrub Wetland" + }, + { + "values": [ + 18 + ], + "summary": "Estuarine Emergent Wetland" + }, + { + "values": [ + 19 + ], + "summary": "Unconsolidated Shore" + }, + { + "values": [ + 20 + ], + "summary": "Bare Land" + }, + { + "values": [ + 21 + ], + "summary": "Open Water" + }, + { + "values": [ + 22 + ], + "summary": "Palustrine Aquatic Bed" + }, + { + "values": [ + 23 + ], + "summary": "Estuarine Aquatic Bed" + }, + { + "values": [ + 24 + ], + "summary": "Tundra" + }, + { + "values": [ + 25 + ], + "summary": "Snow/Ice" + } + ], "roles": [ "data" ] diff --git a/examples/conus_1975_ccap_landcover_20200311/conus_1975_ccap_landcover_20200311.json b/examples/conus_1975_ccap_landcover_20200311/conus_1975_ccap_landcover_20200311.json index b756405..9cf6035 100644 --- a/examples/conus_1975_ccap_landcover_20200311/conus_1975_ccap_landcover_20200311.json +++ b/examples/conus_1975_ccap_landcover_20200311/conus_1975_ccap_landcover_20200311.json @@ -88,23 +88,184 @@ { "rel": "root", "href": "../collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" }, { "rel": "collection", "href": "../collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" }, { "rel": "parent", "href": "../collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" } ], "assets": { "data": { "href": "https://coast.noaa.gov/htdata/raster1/landcover/bulkdownload/30m_lc/conus_1975_ccap_landcover_20200311.tif", "type": "image/tiff; application=geotiff", + "file:values": [ + { + "values": [ + 0 + ], + "summary": "Background" + }, + { + "values": [ + 1 + ], + "summary": "Unclassified (Cloud, Shadow, etc)" + }, + { + "values": [ + 2 + ], + "summary": "High Intensity Developed" + }, + { + "values": [ + 3 + ], + "summary": "Medium Intensity Developed" + }, + { + "values": [ + 4 + ], + "summary": "Low Intensity Developed" + }, + { + "values": [ + 5 + ], + "summary": "Developed Open Space" + }, + { + "values": [ + 6 + ], + "summary": "Cultivated Land" + }, + { + "values": [ + 7 + ], + "summary": "Pasture/Hay" + }, + { + "values": [ + 8 + ], + "summary": "Grassland" + }, + { + "values": [ + 9 + ], + "summary": "Deciduous Forest" + }, + { + "values": [ + 10 + ], + "summary": "Evergreen Forest" + }, + { + "values": [ + 11 + ], + "summary": "Mixed Forest" + }, + { + "values": [ + 12 + ], + "summary": "Scrub/Shrub" + }, + { + "values": [ + 13 + ], + "summary": "Palustrine Forested Wetland" + }, + { + "values": [ + 14 + ], + "summary": "Palustrine Scrub/Shrub Wetland" + }, + { + "values": [ + 15 + ], + "summary": "Palustrine Emergent Wetland" + }, + { + "values": [ + 16 + ], + "summary": "Estuarine Forested Wetland" + }, + { + "values": [ + 17 + ], + "summary": "Estuarine Scrub/Shrub Wetland" + }, + { + "values": [ + 18 + ], + "summary": "Estuarine Emergent Wetland" + }, + { + "values": [ + 19 + ], + "summary": "Unconsolidated Shore" + }, + { + "values": [ + 20 + ], + "summary": "Bare Land" + }, + { + "values": [ + 21 + ], + "summary": "Open Water" + }, + { + "values": [ + 22 + ], + "summary": "Palustrine Aquatic Bed" + }, + { + "values": [ + 23 + ], + "summary": "Estuarine Aquatic Bed" + }, + { + "values": [ + 24 + ], + "summary": "Tundra" + }, + { + "values": [ + 25 + ], + "summary": "Snow/Ice" + } + ], "roles": [ "data" ] @@ -125,7 +286,8 @@ ], "stac_extensions": [ "https://stac-extensions.github.io/projection/v1.0.0/schema.json", - "https://stac-extensions.github.io/label/v1.0.0/schema.json" + "https://stac-extensions.github.io/label/v1.0.0/schema.json", + "https://stac-extensions.github.io/file/v2.0.0/schema.json" ], "collection": "noaa-c-cap" } \ No newline at end of file diff --git a/examples/conus_1985_ccap_landcover_20200311/conus_1985_ccap_landcover_20200311.json b/examples/conus_1985_ccap_landcover_20200311/conus_1985_ccap_landcover_20200311.json index b73ba6b..af23b44 100644 --- a/examples/conus_1985_ccap_landcover_20200311/conus_1985_ccap_landcover_20200311.json +++ b/examples/conus_1985_ccap_landcover_20200311/conus_1985_ccap_landcover_20200311.json @@ -88,23 +88,184 @@ { "rel": "root", "href": "../collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" }, { "rel": "collection", "href": "../collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" }, { "rel": "parent", "href": "../collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" } ], "assets": { "data": { "href": "https://coast.noaa.gov/htdata/raster1/landcover/bulkdownload/30m_lc/conus_1985_ccap_landcover_20200311.tif", "type": "image/tiff; application=geotiff", + "file:values": [ + { + "values": [ + 0 + ], + "summary": "Background" + }, + { + "values": [ + 1 + ], + "summary": "Unclassified (Cloud, Shadow, etc)" + }, + { + "values": [ + 2 + ], + "summary": "High Intensity Developed" + }, + { + "values": [ + 3 + ], + "summary": "Medium Intensity Developed" + }, + { + "values": [ + 4 + ], + "summary": "Low Intensity Developed" + }, + { + "values": [ + 5 + ], + "summary": "Developed Open Space" + }, + { + "values": [ + 6 + ], + "summary": "Cultivated Land" + }, + { + "values": [ + 7 + ], + "summary": "Pasture/Hay" + }, + { + "values": [ + 8 + ], + "summary": "Grassland" + }, + { + "values": [ + 9 + ], + "summary": "Deciduous Forest" + }, + { + "values": [ + 10 + ], + "summary": "Evergreen Forest" + }, + { + "values": [ + 11 + ], + "summary": "Mixed Forest" + }, + { + "values": [ + 12 + ], + "summary": "Scrub/Shrub" + }, + { + "values": [ + 13 + ], + "summary": "Palustrine Forested Wetland" + }, + { + "values": [ + 14 + ], + "summary": "Palustrine Scrub/Shrub Wetland" + }, + { + "values": [ + 15 + ], + "summary": "Palustrine Emergent Wetland" + }, + { + "values": [ + 16 + ], + "summary": "Estuarine Forested Wetland" + }, + { + "values": [ + 17 + ], + "summary": "Estuarine Scrub/Shrub Wetland" + }, + { + "values": [ + 18 + ], + "summary": "Estuarine Emergent Wetland" + }, + { + "values": [ + 19 + ], + "summary": "Unconsolidated Shore" + }, + { + "values": [ + 20 + ], + "summary": "Bare Land" + }, + { + "values": [ + 21 + ], + "summary": "Open Water" + }, + { + "values": [ + 22 + ], + "summary": "Palustrine Aquatic Bed" + }, + { + "values": [ + 23 + ], + "summary": "Estuarine Aquatic Bed" + }, + { + "values": [ + 24 + ], + "summary": "Tundra" + }, + { + "values": [ + 25 + ], + "summary": "Snow/Ice" + } + ], "roles": [ "data" ] @@ -125,7 +286,8 @@ ], "stac_extensions": [ "https://stac-extensions.github.io/projection/v1.0.0/schema.json", - "https://stac-extensions.github.io/label/v1.0.0/schema.json" + "https://stac-extensions.github.io/label/v1.0.0/schema.json", + "https://stac-extensions.github.io/file/v2.0.0/schema.json" ], "collection": "noaa-c-cap" } \ No newline at end of file diff --git a/examples/conus_1992_ccap_landcover_20201019/conus_1992_ccap_landcover_20201019.json b/examples/conus_1992_ccap_landcover_20201019/conus_1992_ccap_landcover_20201019.json index face1e1..aa622e2 100644 --- a/examples/conus_1992_ccap_landcover_20201019/conus_1992_ccap_landcover_20201019.json +++ b/examples/conus_1992_ccap_landcover_20201019/conus_1992_ccap_landcover_20201019.json @@ -88,23 +88,184 @@ { "rel": "root", "href": "../collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" }, { "rel": "collection", "href": "../collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" }, { "rel": "parent", "href": "../collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" } ], "assets": { "data": { "href": "https://coast.noaa.gov/htdata/raster1/landcover/bulkdownload/30m_lc/conus_1992_ccap_landcover_20201019.tif", "type": "image/tiff; application=geotiff", + "file:values": [ + { + "values": [ + 0 + ], + "summary": "Background" + }, + { + "values": [ + 1 + ], + "summary": "Unclassified (Cloud, Shadow, etc)" + }, + { + "values": [ + 2 + ], + "summary": "High Intensity Developed" + }, + { + "values": [ + 3 + ], + "summary": "Medium Intensity Developed" + }, + { + "values": [ + 4 + ], + "summary": "Low Intensity Developed" + }, + { + "values": [ + 5 + ], + "summary": "Developed Open Space" + }, + { + "values": [ + 6 + ], + "summary": "Cultivated Land" + }, + { + "values": [ + 7 + ], + "summary": "Pasture/Hay" + }, + { + "values": [ + 8 + ], + "summary": "Grassland" + }, + { + "values": [ + 9 + ], + "summary": "Deciduous Forest" + }, + { + "values": [ + 10 + ], + "summary": "Evergreen Forest" + }, + { + "values": [ + 11 + ], + "summary": "Mixed Forest" + }, + { + "values": [ + 12 + ], + "summary": "Scrub/Shrub" + }, + { + "values": [ + 13 + ], + "summary": "Palustrine Forested Wetland" + }, + { + "values": [ + 14 + ], + "summary": "Palustrine Scrub/Shrub Wetland" + }, + { + "values": [ + 15 + ], + "summary": "Palustrine Emergent Wetland" + }, + { + "values": [ + 16 + ], + "summary": "Estuarine Forested Wetland" + }, + { + "values": [ + 17 + ], + "summary": "Estuarine Scrub/Shrub Wetland" + }, + { + "values": [ + 18 + ], + "summary": "Estuarine Emergent Wetland" + }, + { + "values": [ + 19 + ], + "summary": "Unconsolidated Shore" + }, + { + "values": [ + 20 + ], + "summary": "Bare Land" + }, + { + "values": [ + 21 + ], + "summary": "Open Water" + }, + { + "values": [ + 22 + ], + "summary": "Palustrine Aquatic Bed" + }, + { + "values": [ + 23 + ], + "summary": "Estuarine Aquatic Bed" + }, + { + "values": [ + 24 + ], + "summary": "Tundra" + }, + { + "values": [ + 25 + ], + "summary": "Snow/Ice" + } + ], "roles": [ "data" ] @@ -125,7 +286,8 @@ ], "stac_extensions": [ "https://stac-extensions.github.io/projection/v1.0.0/schema.json", - "https://stac-extensions.github.io/label/v1.0.0/schema.json" + "https://stac-extensions.github.io/label/v1.0.0/schema.json", + "https://stac-extensions.github.io/file/v2.0.0/schema.json" ], "collection": "noaa-c-cap" } \ No newline at end of file diff --git a/examples/conus_1996_ccap_landcover_20200311/conus_1996_ccap_landcover_20200311.json b/examples/conus_1996_ccap_landcover_20200311/conus_1996_ccap_landcover_20200311.json index d5188e5..3ee2f0b 100644 --- a/examples/conus_1996_ccap_landcover_20200311/conus_1996_ccap_landcover_20200311.json +++ b/examples/conus_1996_ccap_landcover_20200311/conus_1996_ccap_landcover_20200311.json @@ -88,23 +88,184 @@ { "rel": "root", "href": "../collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" }, { "rel": "collection", "href": "../collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" }, { "rel": "parent", "href": "../collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" } ], "assets": { "data": { "href": "https://coast.noaa.gov/htdata/raster1/landcover/bulkdownload/30m_lc/conus_1996_ccap_landcover_20200311.tif", "type": "image/tiff; application=geotiff", + "file:values": [ + { + "values": [ + 0 + ], + "summary": "Background" + }, + { + "values": [ + 1 + ], + "summary": "Unclassified (Cloud, Shadow, etc)" + }, + { + "values": [ + 2 + ], + "summary": "High Intensity Developed" + }, + { + "values": [ + 3 + ], + "summary": "Medium Intensity Developed" + }, + { + "values": [ + 4 + ], + "summary": "Low Intensity Developed" + }, + { + "values": [ + 5 + ], + "summary": "Developed Open Space" + }, + { + "values": [ + 6 + ], + "summary": "Cultivated Land" + }, + { + "values": [ + 7 + ], + "summary": "Pasture/Hay" + }, + { + "values": [ + 8 + ], + "summary": "Grassland" + }, + { + "values": [ + 9 + ], + "summary": "Deciduous Forest" + }, + { + "values": [ + 10 + ], + "summary": "Evergreen Forest" + }, + { + "values": [ + 11 + ], + "summary": "Mixed Forest" + }, + { + "values": [ + 12 + ], + "summary": "Scrub/Shrub" + }, + { + "values": [ + 13 + ], + "summary": "Palustrine Forested Wetland" + }, + { + "values": [ + 14 + ], + "summary": "Palustrine Scrub/Shrub Wetland" + }, + { + "values": [ + 15 + ], + "summary": "Palustrine Emergent Wetland" + }, + { + "values": [ + 16 + ], + "summary": "Estuarine Forested Wetland" + }, + { + "values": [ + 17 + ], + "summary": "Estuarine Scrub/Shrub Wetland" + }, + { + "values": [ + 18 + ], + "summary": "Estuarine Emergent Wetland" + }, + { + "values": [ + 19 + ], + "summary": "Unconsolidated Shore" + }, + { + "values": [ + 20 + ], + "summary": "Bare Land" + }, + { + "values": [ + 21 + ], + "summary": "Open Water" + }, + { + "values": [ + 22 + ], + "summary": "Palustrine Aquatic Bed" + }, + { + "values": [ + 23 + ], + "summary": "Estuarine Aquatic Bed" + }, + { + "values": [ + 24 + ], + "summary": "Tundra" + }, + { + "values": [ + 25 + ], + "summary": "Snow/Ice" + } + ], "roles": [ "data" ] @@ -125,7 +286,8 @@ ], "stac_extensions": [ "https://stac-extensions.github.io/projection/v1.0.0/schema.json", - "https://stac-extensions.github.io/label/v1.0.0/schema.json" + "https://stac-extensions.github.io/label/v1.0.0/schema.json", + "https://stac-extensions.github.io/file/v2.0.0/schema.json" ], "collection": "noaa-c-cap" } \ No newline at end of file diff --git a/examples/conus_2001_ccap_landcover_20200311/conus_2001_ccap_landcover_20200311.json b/examples/conus_2001_ccap_landcover_20200311/conus_2001_ccap_landcover_20200311.json index a3c4a75..5193f1c 100644 --- a/examples/conus_2001_ccap_landcover_20200311/conus_2001_ccap_landcover_20200311.json +++ b/examples/conus_2001_ccap_landcover_20200311/conus_2001_ccap_landcover_20200311.json @@ -88,23 +88,184 @@ { "rel": "root", "href": "../collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" }, { "rel": "collection", "href": "../collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" }, { "rel": "parent", "href": "../collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" } ], "assets": { "data": { "href": "https://coast.noaa.gov/htdata/raster1/landcover/bulkdownload/30m_lc/conus_2001_ccap_landcover_20200311.tif", "type": "image/tiff; application=geotiff", + "file:values": [ + { + "values": [ + 0 + ], + "summary": "Background" + }, + { + "values": [ + 1 + ], + "summary": "Unclassified (Cloud, Shadow, etc)" + }, + { + "values": [ + 2 + ], + "summary": "High Intensity Developed" + }, + { + "values": [ + 3 + ], + "summary": "Medium Intensity Developed" + }, + { + "values": [ + 4 + ], + "summary": "Low Intensity Developed" + }, + { + "values": [ + 5 + ], + "summary": "Developed Open Space" + }, + { + "values": [ + 6 + ], + "summary": "Cultivated Land" + }, + { + "values": [ + 7 + ], + "summary": "Pasture/Hay" + }, + { + "values": [ + 8 + ], + "summary": "Grassland" + }, + { + "values": [ + 9 + ], + "summary": "Deciduous Forest" + }, + { + "values": [ + 10 + ], + "summary": "Evergreen Forest" + }, + { + "values": [ + 11 + ], + "summary": "Mixed Forest" + }, + { + "values": [ + 12 + ], + "summary": "Scrub/Shrub" + }, + { + "values": [ + 13 + ], + "summary": "Palustrine Forested Wetland" + }, + { + "values": [ + 14 + ], + "summary": "Palustrine Scrub/Shrub Wetland" + }, + { + "values": [ + 15 + ], + "summary": "Palustrine Emergent Wetland" + }, + { + "values": [ + 16 + ], + "summary": "Estuarine Forested Wetland" + }, + { + "values": [ + 17 + ], + "summary": "Estuarine Scrub/Shrub Wetland" + }, + { + "values": [ + 18 + ], + "summary": "Estuarine Emergent Wetland" + }, + { + "values": [ + 19 + ], + "summary": "Unconsolidated Shore" + }, + { + "values": [ + 20 + ], + "summary": "Bare Land" + }, + { + "values": [ + 21 + ], + "summary": "Open Water" + }, + { + "values": [ + 22 + ], + "summary": "Palustrine Aquatic Bed" + }, + { + "values": [ + 23 + ], + "summary": "Estuarine Aquatic Bed" + }, + { + "values": [ + 24 + ], + "summary": "Tundra" + }, + { + "values": [ + 25 + ], + "summary": "Snow/Ice" + } + ], "roles": [ "data" ] @@ -125,7 +286,8 @@ ], "stac_extensions": [ "https://stac-extensions.github.io/projection/v1.0.0/schema.json", - "https://stac-extensions.github.io/label/v1.0.0/schema.json" + "https://stac-extensions.github.io/label/v1.0.0/schema.json", + "https://stac-extensions.github.io/file/v2.0.0/schema.json" ], "collection": "noaa-c-cap" } \ No newline at end of file diff --git a/examples/conus_2006_ccap_landcover_20200311/conus_2006_ccap_landcover_20200311.json b/examples/conus_2006_ccap_landcover_20200311/conus_2006_ccap_landcover_20200311.json index e410799..33303c6 100644 --- a/examples/conus_2006_ccap_landcover_20200311/conus_2006_ccap_landcover_20200311.json +++ b/examples/conus_2006_ccap_landcover_20200311/conus_2006_ccap_landcover_20200311.json @@ -88,23 +88,184 @@ { "rel": "root", "href": "../collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" }, { "rel": "collection", "href": "../collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" }, { "rel": "parent", "href": "../collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" } ], "assets": { "data": { "href": "https://coast.noaa.gov/htdata/raster1/landcover/bulkdownload/30m_lc/conus_2006_ccap_landcover_20200311.tif", "type": "image/tiff; application=geotiff", + "file:values": [ + { + "values": [ + 0 + ], + "summary": "Background" + }, + { + "values": [ + 1 + ], + "summary": "Unclassified (Cloud, Shadow, etc)" + }, + { + "values": [ + 2 + ], + "summary": "High Intensity Developed" + }, + { + "values": [ + 3 + ], + "summary": "Medium Intensity Developed" + }, + { + "values": [ + 4 + ], + "summary": "Low Intensity Developed" + }, + { + "values": [ + 5 + ], + "summary": "Developed Open Space" + }, + { + "values": [ + 6 + ], + "summary": "Cultivated Land" + }, + { + "values": [ + 7 + ], + "summary": "Pasture/Hay" + }, + { + "values": [ + 8 + ], + "summary": "Grassland" + }, + { + "values": [ + 9 + ], + "summary": "Deciduous Forest" + }, + { + "values": [ + 10 + ], + "summary": "Evergreen Forest" + }, + { + "values": [ + 11 + ], + "summary": "Mixed Forest" + }, + { + "values": [ + 12 + ], + "summary": "Scrub/Shrub" + }, + { + "values": [ + 13 + ], + "summary": "Palustrine Forested Wetland" + }, + { + "values": [ + 14 + ], + "summary": "Palustrine Scrub/Shrub Wetland" + }, + { + "values": [ + 15 + ], + "summary": "Palustrine Emergent Wetland" + }, + { + "values": [ + 16 + ], + "summary": "Estuarine Forested Wetland" + }, + { + "values": [ + 17 + ], + "summary": "Estuarine Scrub/Shrub Wetland" + }, + { + "values": [ + 18 + ], + "summary": "Estuarine Emergent Wetland" + }, + { + "values": [ + 19 + ], + "summary": "Unconsolidated Shore" + }, + { + "values": [ + 20 + ], + "summary": "Bare Land" + }, + { + "values": [ + 21 + ], + "summary": "Open Water" + }, + { + "values": [ + 22 + ], + "summary": "Palustrine Aquatic Bed" + }, + { + "values": [ + 23 + ], + "summary": "Estuarine Aquatic Bed" + }, + { + "values": [ + 24 + ], + "summary": "Tundra" + }, + { + "values": [ + 25 + ], + "summary": "Snow/Ice" + } + ], "roles": [ "data" ] @@ -125,7 +286,8 @@ ], "stac_extensions": [ "https://stac-extensions.github.io/projection/v1.0.0/schema.json", - "https://stac-extensions.github.io/label/v1.0.0/schema.json" + "https://stac-extensions.github.io/label/v1.0.0/schema.json", + "https://stac-extensions.github.io/file/v2.0.0/schema.json" ], "collection": "noaa-c-cap" } \ No newline at end of file diff --git a/examples/conus_2010_ccap_landcover_20200311/conus_2010_ccap_landcover_20200311.json b/examples/conus_2010_ccap_landcover_20200311/conus_2010_ccap_landcover_20200311.json index 94d51ce..650c4d9 100644 --- a/examples/conus_2010_ccap_landcover_20200311/conus_2010_ccap_landcover_20200311.json +++ b/examples/conus_2010_ccap_landcover_20200311/conus_2010_ccap_landcover_20200311.json @@ -88,23 +88,184 @@ { "rel": "root", "href": "../collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" }, { "rel": "collection", "href": "../collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" }, { "rel": "parent", "href": "../collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" } ], "assets": { "data": { "href": "https://coast.noaa.gov/htdata/raster1/landcover/bulkdownload/30m_lc/conus_2010_ccap_landcover_20200311.tif", "type": "image/tiff; application=geotiff", + "file:values": [ + { + "values": [ + 0 + ], + "summary": "Background" + }, + { + "values": [ + 1 + ], + "summary": "Unclassified (Cloud, Shadow, etc)" + }, + { + "values": [ + 2 + ], + "summary": "High Intensity Developed" + }, + { + "values": [ + 3 + ], + "summary": "Medium Intensity Developed" + }, + { + "values": [ + 4 + ], + "summary": "Low Intensity Developed" + }, + { + "values": [ + 5 + ], + "summary": "Developed Open Space" + }, + { + "values": [ + 6 + ], + "summary": "Cultivated Land" + }, + { + "values": [ + 7 + ], + "summary": "Pasture/Hay" + }, + { + "values": [ + 8 + ], + "summary": "Grassland" + }, + { + "values": [ + 9 + ], + "summary": "Deciduous Forest" + }, + { + "values": [ + 10 + ], + "summary": "Evergreen Forest" + }, + { + "values": [ + 11 + ], + "summary": "Mixed Forest" + }, + { + "values": [ + 12 + ], + "summary": "Scrub/Shrub" + }, + { + "values": [ + 13 + ], + "summary": "Palustrine Forested Wetland" + }, + { + "values": [ + 14 + ], + "summary": "Palustrine Scrub/Shrub Wetland" + }, + { + "values": [ + 15 + ], + "summary": "Palustrine Emergent Wetland" + }, + { + "values": [ + 16 + ], + "summary": "Estuarine Forested Wetland" + }, + { + "values": [ + 17 + ], + "summary": "Estuarine Scrub/Shrub Wetland" + }, + { + "values": [ + 18 + ], + "summary": "Estuarine Emergent Wetland" + }, + { + "values": [ + 19 + ], + "summary": "Unconsolidated Shore" + }, + { + "values": [ + 20 + ], + "summary": "Bare Land" + }, + { + "values": [ + 21 + ], + "summary": "Open Water" + }, + { + "values": [ + 22 + ], + "summary": "Palustrine Aquatic Bed" + }, + { + "values": [ + 23 + ], + "summary": "Estuarine Aquatic Bed" + }, + { + "values": [ + 24 + ], + "summary": "Tundra" + }, + { + "values": [ + 25 + ], + "summary": "Snow/Ice" + } + ], "roles": [ "data" ] @@ -125,7 +286,8 @@ ], "stac_extensions": [ "https://stac-extensions.github.io/projection/v1.0.0/schema.json", - "https://stac-extensions.github.io/label/v1.0.0/schema.json" + "https://stac-extensions.github.io/label/v1.0.0/schema.json", + "https://stac-extensions.github.io/file/v2.0.0/schema.json" ], "collection": "noaa-c-cap" } \ No newline at end of file diff --git a/examples/conus_2016_ccap_landcover_20200311/conus_2016_ccap_landcover_20200311.json b/examples/conus_2016_ccap_landcover_20200311/conus_2016_ccap_landcover_20200311.json index 4bdaefe..d603a96 100644 --- a/examples/conus_2016_ccap_landcover_20200311/conus_2016_ccap_landcover_20200311.json +++ b/examples/conus_2016_ccap_landcover_20200311/conus_2016_ccap_landcover_20200311.json @@ -88,23 +88,184 @@ { "rel": "root", "href": "../collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" }, { "rel": "collection", "href": "../collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" }, { "rel": "parent", "href": "../collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" } ], "assets": { "data": { "href": "https://coast.noaa.gov/htdata/raster1/landcover/bulkdownload/30m_lc/conus_2016_ccap_landcover_20200311.tif", "type": "image/tiff; application=geotiff", + "file:values": [ + { + "values": [ + 0 + ], + "summary": "Background" + }, + { + "values": [ + 1 + ], + "summary": "Unclassified (Cloud, Shadow, etc)" + }, + { + "values": [ + 2 + ], + "summary": "High Intensity Developed" + }, + { + "values": [ + 3 + ], + "summary": "Medium Intensity Developed" + }, + { + "values": [ + 4 + ], + "summary": "Low Intensity Developed" + }, + { + "values": [ + 5 + ], + "summary": "Developed Open Space" + }, + { + "values": [ + 6 + ], + "summary": "Cultivated Land" + }, + { + "values": [ + 7 + ], + "summary": "Pasture/Hay" + }, + { + "values": [ + 8 + ], + "summary": "Grassland" + }, + { + "values": [ + 9 + ], + "summary": "Deciduous Forest" + }, + { + "values": [ + 10 + ], + "summary": "Evergreen Forest" + }, + { + "values": [ + 11 + ], + "summary": "Mixed Forest" + }, + { + "values": [ + 12 + ], + "summary": "Scrub/Shrub" + }, + { + "values": [ + 13 + ], + "summary": "Palustrine Forested Wetland" + }, + { + "values": [ + 14 + ], + "summary": "Palustrine Scrub/Shrub Wetland" + }, + { + "values": [ + 15 + ], + "summary": "Palustrine Emergent Wetland" + }, + { + "values": [ + 16 + ], + "summary": "Estuarine Forested Wetland" + }, + { + "values": [ + 17 + ], + "summary": "Estuarine Scrub/Shrub Wetland" + }, + { + "values": [ + 18 + ], + "summary": "Estuarine Emergent Wetland" + }, + { + "values": [ + 19 + ], + "summary": "Unconsolidated Shore" + }, + { + "values": [ + 20 + ], + "summary": "Bare Land" + }, + { + "values": [ + 21 + ], + "summary": "Open Water" + }, + { + "values": [ + 22 + ], + "summary": "Palustrine Aquatic Bed" + }, + { + "values": [ + 23 + ], + "summary": "Estuarine Aquatic Bed" + }, + { + "values": [ + 24 + ], + "summary": "Tundra" + }, + { + "values": [ + 25 + ], + "summary": "Snow/Ice" + } + ], "roles": [ "data" ] @@ -125,7 +286,8 @@ ], "stac_extensions": [ "https://stac-extensions.github.io/projection/v1.0.0/schema.json", - "https://stac-extensions.github.io/label/v1.0.0/schema.json" + "https://stac-extensions.github.io/label/v1.0.0/schema.json", + "https://stac-extensions.github.io/file/v2.0.0/schema.json" ], "collection": "noaa-c-cap" } \ No newline at end of file diff --git a/examples/hi_1992_mosaic_ccap_land_cover/hi_1992_mosaic_ccap_land_cover.json b/examples/hi_1992_mosaic_ccap_land_cover/hi_1992_mosaic_ccap_land_cover.json index 5da99b0..2260482 100644 --- a/examples/hi_1992_mosaic_ccap_land_cover/hi_1992_mosaic_ccap_land_cover.json +++ b/examples/hi_1992_mosaic_ccap_land_cover/hi_1992_mosaic_ccap_land_cover.json @@ -88,23 +88,184 @@ { "rel": "root", "href": "../collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" }, { "rel": "collection", "href": "../collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" }, { "rel": "parent", "href": "../collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" } ], "assets": { "data": { "href": "https://coast.noaa.gov/htdata/raster1/landcover/bulkdownload/30m_lc/hi_1992_mosaic_ccap_land_cover.tif", "type": "image/tiff; application=geotiff", + "file:values": [ + { + "values": [ + 0 + ], + "summary": "Background" + }, + { + "values": [ + 1 + ], + "summary": "Unclassified (Cloud, Shadow, etc)" + }, + { + "values": [ + 2 + ], + "summary": "High Intensity Developed" + }, + { + "values": [ + 3 + ], + "summary": "Medium Intensity Developed" + }, + { + "values": [ + 4 + ], + "summary": "Low Intensity Developed" + }, + { + "values": [ + 5 + ], + "summary": "Developed Open Space" + }, + { + "values": [ + 6 + ], + "summary": "Cultivated Land" + }, + { + "values": [ + 7 + ], + "summary": "Pasture/Hay" + }, + { + "values": [ + 8 + ], + "summary": "Grassland" + }, + { + "values": [ + 9 + ], + "summary": "Deciduous Forest" + }, + { + "values": [ + 10 + ], + "summary": "Evergreen Forest" + }, + { + "values": [ + 11 + ], + "summary": "Mixed Forest" + }, + { + "values": [ + 12 + ], + "summary": "Scrub/Shrub" + }, + { + "values": [ + 13 + ], + "summary": "Palustrine Forested Wetland" + }, + { + "values": [ + 14 + ], + "summary": "Palustrine Scrub/Shrub Wetland" + }, + { + "values": [ + 15 + ], + "summary": "Palustrine Emergent Wetland" + }, + { + "values": [ + 16 + ], + "summary": "Estuarine Forested Wetland" + }, + { + "values": [ + 17 + ], + "summary": "Estuarine Scrub/Shrub Wetland" + }, + { + "values": [ + 18 + ], + "summary": "Estuarine Emergent Wetland" + }, + { + "values": [ + 19 + ], + "summary": "Unconsolidated Shore" + }, + { + "values": [ + 20 + ], + "summary": "Bare Land" + }, + { + "values": [ + 21 + ], + "summary": "Open Water" + }, + { + "values": [ + 22 + ], + "summary": "Palustrine Aquatic Bed" + }, + { + "values": [ + 23 + ], + "summary": "Estuarine Aquatic Bed" + }, + { + "values": [ + 24 + ], + "summary": "Tundra" + }, + { + "values": [ + 25 + ], + "summary": "Snow/Ice" + } + ], "roles": [ "data" ] @@ -118,7 +279,8 @@ ], "stac_extensions": [ "https://stac-extensions.github.io/projection/v1.0.0/schema.json", - "https://stac-extensions.github.io/label/v1.0.0/schema.json" + "https://stac-extensions.github.io/label/v1.0.0/schema.json", + "https://stac-extensions.github.io/file/v2.0.0/schema.json" ], "collection": "noaa-c-cap" } \ No newline at end of file diff --git a/examples/hi_2001_mosaic_ccap_land_cover/hi_2001_mosaic_ccap_land_cover.json b/examples/hi_2001_mosaic_ccap_land_cover/hi_2001_mosaic_ccap_land_cover.json index 2496af5..5c92336 100644 --- a/examples/hi_2001_mosaic_ccap_land_cover/hi_2001_mosaic_ccap_land_cover.json +++ b/examples/hi_2001_mosaic_ccap_land_cover/hi_2001_mosaic_ccap_land_cover.json @@ -88,23 +88,184 @@ { "rel": "root", "href": "../collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" }, { "rel": "collection", "href": "../collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" }, { "rel": "parent", "href": "../collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" } ], "assets": { "data": { "href": "https://coast.noaa.gov/htdata/raster1/landcover/bulkdownload/30m_lc/hi_2001_mosaic_ccap_land_cover.tif", "type": "image/tiff; application=geotiff", + "file:values": [ + { + "values": [ + 0 + ], + "summary": "Background" + }, + { + "values": [ + 1 + ], + "summary": "Unclassified (Cloud, Shadow, etc)" + }, + { + "values": [ + 2 + ], + "summary": "High Intensity Developed" + }, + { + "values": [ + 3 + ], + "summary": "Medium Intensity Developed" + }, + { + "values": [ + 4 + ], + "summary": "Low Intensity Developed" + }, + { + "values": [ + 5 + ], + "summary": "Developed Open Space" + }, + { + "values": [ + 6 + ], + "summary": "Cultivated Land" + }, + { + "values": [ + 7 + ], + "summary": "Pasture/Hay" + }, + { + "values": [ + 8 + ], + "summary": "Grassland" + }, + { + "values": [ + 9 + ], + "summary": "Deciduous Forest" + }, + { + "values": [ + 10 + ], + "summary": "Evergreen Forest" + }, + { + "values": [ + 11 + ], + "summary": "Mixed Forest" + }, + { + "values": [ + 12 + ], + "summary": "Scrub/Shrub" + }, + { + "values": [ + 13 + ], + "summary": "Palustrine Forested Wetland" + }, + { + "values": [ + 14 + ], + "summary": "Palustrine Scrub/Shrub Wetland" + }, + { + "values": [ + 15 + ], + "summary": "Palustrine Emergent Wetland" + }, + { + "values": [ + 16 + ], + "summary": "Estuarine Forested Wetland" + }, + { + "values": [ + 17 + ], + "summary": "Estuarine Scrub/Shrub Wetland" + }, + { + "values": [ + 18 + ], + "summary": "Estuarine Emergent Wetland" + }, + { + "values": [ + 19 + ], + "summary": "Unconsolidated Shore" + }, + { + "values": [ + 20 + ], + "summary": "Bare Land" + }, + { + "values": [ + 21 + ], + "summary": "Open Water" + }, + { + "values": [ + 22 + ], + "summary": "Palustrine Aquatic Bed" + }, + { + "values": [ + 23 + ], + "summary": "Estuarine Aquatic Bed" + }, + { + "values": [ + 24 + ], + "summary": "Tundra" + }, + { + "values": [ + 25 + ], + "summary": "Snow/Ice" + } + ], "roles": [ "data" ] @@ -118,7 +279,8 @@ ], "stac_extensions": [ "https://stac-extensions.github.io/projection/v1.0.0/schema.json", - "https://stac-extensions.github.io/label/v1.0.0/schema.json" + "https://stac-extensions.github.io/label/v1.0.0/schema.json", + "https://stac-extensions.github.io/file/v2.0.0/schema.json" ], "collection": "noaa-c-cap" } \ No newline at end of file diff --git a/examples/hi_2005_mosaic_ccap_land_cover/hi_2005_mosaic_ccap_land_cover.json b/examples/hi_2005_mosaic_ccap_land_cover/hi_2005_mosaic_ccap_land_cover.json index ce1b88e..781d7a3 100644 --- a/examples/hi_2005_mosaic_ccap_land_cover/hi_2005_mosaic_ccap_land_cover.json +++ b/examples/hi_2005_mosaic_ccap_land_cover/hi_2005_mosaic_ccap_land_cover.json @@ -88,23 +88,184 @@ { "rel": "root", "href": "../collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" }, { "rel": "collection", "href": "../collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" }, { "rel": "parent", "href": "../collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" } ], "assets": { "data": { "href": "https://coast.noaa.gov/htdata/raster1/landcover/bulkdownload/30m_lc/hi_2005_mosaic_ccap_land_cover.tif", "type": "image/tiff; application=geotiff", + "file:values": [ + { + "values": [ + 0 + ], + "summary": "Background" + }, + { + "values": [ + 1 + ], + "summary": "Unclassified (Cloud, Shadow, etc)" + }, + { + "values": [ + 2 + ], + "summary": "High Intensity Developed" + }, + { + "values": [ + 3 + ], + "summary": "Medium Intensity Developed" + }, + { + "values": [ + 4 + ], + "summary": "Low Intensity Developed" + }, + { + "values": [ + 5 + ], + "summary": "Developed Open Space" + }, + { + "values": [ + 6 + ], + "summary": "Cultivated Land" + }, + { + "values": [ + 7 + ], + "summary": "Pasture/Hay" + }, + { + "values": [ + 8 + ], + "summary": "Grassland" + }, + { + "values": [ + 9 + ], + "summary": "Deciduous Forest" + }, + { + "values": [ + 10 + ], + "summary": "Evergreen Forest" + }, + { + "values": [ + 11 + ], + "summary": "Mixed Forest" + }, + { + "values": [ + 12 + ], + "summary": "Scrub/Shrub" + }, + { + "values": [ + 13 + ], + "summary": "Palustrine Forested Wetland" + }, + { + "values": [ + 14 + ], + "summary": "Palustrine Scrub/Shrub Wetland" + }, + { + "values": [ + 15 + ], + "summary": "Palustrine Emergent Wetland" + }, + { + "values": [ + 16 + ], + "summary": "Estuarine Forested Wetland" + }, + { + "values": [ + 17 + ], + "summary": "Estuarine Scrub/Shrub Wetland" + }, + { + "values": [ + 18 + ], + "summary": "Estuarine Emergent Wetland" + }, + { + "values": [ + 19 + ], + "summary": "Unconsolidated Shore" + }, + { + "values": [ + 20 + ], + "summary": "Bare Land" + }, + { + "values": [ + 21 + ], + "summary": "Open Water" + }, + { + "values": [ + 22 + ], + "summary": "Palustrine Aquatic Bed" + }, + { + "values": [ + 23 + ], + "summary": "Estuarine Aquatic Bed" + }, + { + "values": [ + 24 + ], + "summary": "Tundra" + }, + { + "values": [ + 25 + ], + "summary": "Snow/Ice" + } + ], "roles": [ "data" ] @@ -118,7 +279,8 @@ ], "stac_extensions": [ "https://stac-extensions.github.io/projection/v1.0.0/schema.json", - "https://stac-extensions.github.io/label/v1.0.0/schema.json" + "https://stac-extensions.github.io/label/v1.0.0/schema.json", + "https://stac-extensions.github.io/file/v2.0.0/schema.json" ], "collection": "noaa-c-cap" } \ No newline at end of file diff --git a/examples/pr_2010_ccap_hr_land_cover20170214_30m/pr_2010_ccap_hr_land_cover20170214_30m.json b/examples/pr_2010_ccap_hr_land_cover20170214_30m/pr_2010_ccap_hr_land_cover20170214_30m.json index 4536157..8ead86d 100644 --- a/examples/pr_2010_ccap_hr_land_cover20170214_30m/pr_2010_ccap_hr_land_cover20170214_30m.json +++ b/examples/pr_2010_ccap_hr_land_cover20170214_30m/pr_2010_ccap_hr_land_cover20170214_30m.json @@ -88,23 +88,184 @@ { "rel": "root", "href": "../collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" }, { "rel": "collection", "href": "../collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" }, { "rel": "parent", "href": "../collection.json", - "type": "application/json" + "type": "application/json", + "title": "C-CAP Regional Land Cover and Change" } ], "assets": { "data": { "href": "https://coast.noaa.gov/htdata/raster1/landcover/bulkdownload/30m_lc/pr_2010_ccap_hr_land_cover20170214_30m.tif", "type": "image/tiff; application=geotiff", + "file:values": [ + { + "values": [ + 0 + ], + "summary": "Background" + }, + { + "values": [ + 1 + ], + "summary": "Unclassified (Cloud, Shadow, etc)" + }, + { + "values": [ + 2 + ], + "summary": "High Intensity Developed" + }, + { + "values": [ + 3 + ], + "summary": "Medium Intensity Developed" + }, + { + "values": [ + 4 + ], + "summary": "Low Intensity Developed" + }, + { + "values": [ + 5 + ], + "summary": "Developed Open Space" + }, + { + "values": [ + 6 + ], + "summary": "Cultivated Land" + }, + { + "values": [ + 7 + ], + "summary": "Pasture/Hay" + }, + { + "values": [ + 8 + ], + "summary": "Grassland" + }, + { + "values": [ + 9 + ], + "summary": "Deciduous Forest" + }, + { + "values": [ + 10 + ], + "summary": "Evergreen Forest" + }, + { + "values": [ + 11 + ], + "summary": "Mixed Forest" + }, + { + "values": [ + 12 + ], + "summary": "Scrub/Shrub" + }, + { + "values": [ + 13 + ], + "summary": "Palustrine Forested Wetland" + }, + { + "values": [ + 14 + ], + "summary": "Palustrine Scrub/Shrub Wetland" + }, + { + "values": [ + 15 + ], + "summary": "Palustrine Emergent Wetland" + }, + { + "values": [ + 16 + ], + "summary": "Estuarine Forested Wetland" + }, + { + "values": [ + 17 + ], + "summary": "Estuarine Scrub/Shrub Wetland" + }, + { + "values": [ + 18 + ], + "summary": "Estuarine Emergent Wetland" + }, + { + "values": [ + 19 + ], + "summary": "Unconsolidated Shore" + }, + { + "values": [ + 20 + ], + "summary": "Bare Land" + }, + { + "values": [ + 21 + ], + "summary": "Open Water" + }, + { + "values": [ + 22 + ], + "summary": "Palustrine Aquatic Bed" + }, + { + "values": [ + 23 + ], + "summary": "Estuarine Aquatic Bed" + }, + { + "values": [ + 24 + ], + "summary": "Tundra" + }, + { + "values": [ + 25 + ], + "summary": "Snow/Ice" + } + ], "roles": [ "data" ] @@ -125,7 +286,8 @@ ], "stac_extensions": [ "https://stac-extensions.github.io/projection/v1.0.0/schema.json", - "https://stac-extensions.github.io/label/v1.0.0/schema.json" + "https://stac-extensions.github.io/label/v1.0.0/schema.json", + "https://stac-extensions.github.io/file/v2.0.0/schema.json" ], "collection": "noaa-c-cap" } \ No newline at end of file diff --git a/setup.cfg b/setup.cfg index 93418ff..ec77a85 100644 --- a/setup.cfg +++ b/setup.cfg @@ -29,6 +29,7 @@ packages = find_namespace: include_package_data = True install_requires = stactools == 0.2.5 + pystac @ git+https://github.com/stac-utils/pystac.git@5cff27dff6cf2cee8e8c58e21fee0f2b70ee42c7 [options.packages.find] where = src diff --git a/src/stactools/noaa_c_cap/constants.py b/src/stactools/noaa_c_cap/constants.py index 62bbb50..e02b52e 100644 --- a/src/stactools/noaa_c_cap/constants.py +++ b/src/stactools/noaa_c_cap/constants.py @@ -1,3 +1,4 @@ +from pystac.extensions.file import MappingObject from pystac.provider import Provider, ProviderRole COLLECTION_ID = 'noaa-c-cap' @@ -34,6 +35,8 @@ "Open Water", "Palustrine Aquatic Bed", "Estuarine Aquatic Bed", "Tundra", "Snow/Ice" ] +FILE_VALUES = list( + MappingObject.create([i], name) for i, name in enumerate(LABEL_CLASSES)) COLLECTION_CITATION = ( "National Oceanic and Atmospheric Administration, " "Office for Coastal Management. " diff --git a/src/stactools/noaa_c_cap/stac.py b/src/stactools/noaa_c_cap/stac.py index bf654f8..4ab25a8 100644 --- a/src/stactools/noaa_c_cap/stac.py +++ b/src/stactools/noaa_c_cap/stac.py @@ -3,6 +3,7 @@ from typing import List, Optional from pystac import Asset, Collection, Extent, Item, MediaType, Summaries +from pystac.extensions.file import FileExtension from pystac.extensions.item_assets import AssetDefinition, ItemAssetsExtension from pystac.extensions.label import LabelClasses, LabelExtension, LabelType from pystac.extensions.scientific import ScientificExtension @@ -14,7 +15,8 @@ COLLECTION_DESCRIPTION, COLLECTION_ID, COLLECTION_KEYWORDS, COLLECTION_PROVIDERS, - COLLECTION_TITLE, LABEL_CLASSES) + COLLECTION_TITLE, FILE_VALUES, + LABEL_CLASSES) logger = logging.getLogger(__name__) @@ -108,6 +110,10 @@ def create_item_from_dataset( data = item.assets.get('data') assert data data.media_type = MediaType.GEOTIFF + + file = FileExtension.ext(data, add_if_missing=True) + file.values = FILE_VALUES + if dataset.xml_href: item.add_asset( 'metadata', diff --git a/tests/test_stac.py b/tests/test_stac.py index 0f927e4..614effe 100644 --- a/tests/test_stac.py +++ b/tests/test_stac.py @@ -4,11 +4,13 @@ from tempfile import TemporaryDirectory from pystac import MediaType +from pystac.extensions.file import FileExtension from pystac.extensions.item_assets import ItemAssetsExtension from pystac.extensions.scientific import ScientificExtension from stactools.noaa_c_cap import stac -from stactools.noaa_c_cap.constants import COLLECTION_CITATION, LABEL_CLASSES +from stactools.noaa_c_cap.constants import (COLLECTION_CITATION, FILE_VALUES, + LABEL_CLASSES) from tests import test_data @@ -61,6 +63,12 @@ def test_create_item(self): data = item.assets['data'] self.assertEqual(data.media_type, MediaType.GEOTIFF) self.assertEqual(data.roles, ['data']) + + file = FileExtension.ext(data) + # Required because `MappingObject` does not implement __eq__ + self.assertEqual([m.to_dict() for m in file.values], + [m.to_dict() for m in FILE_VALUES]) + item.validate() def test_create_item_with_read_href_modifier(self):