diff --git a/CHANGELOG.md b/CHANGELOG.md index 39345ea..dea3e34 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -20,6 +20,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed +- Support catalogs - Use `osc:themes` instead of the themes extension ## [1.0.0-rc.1] diff --git a/README.md b/README.md index d626d2e..fb8429c 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ - **Title:** Open Science Catalog - **Identifier:** - **Field Name Prefix:** osc -- **Scope:** Collection +- **Scope:** Catalog, Collection, Item - **Extension [Maturity Classification](https://github.com/radiantearth/stac-spec/tree/master/extensions/README.md#extension-maturity):** Proposal - **Owner**: @constantinius @@ -11,7 +11,7 @@ This document explains the Open Science Catalog Extension to the [SpatioTemporal (STAC) specification. - Examples: - - [Project Collection example](examples/4dionosphere-swarm-vip/collection.json): Shows a project STAC Collection + - [Project Catalog example](examples/4dionosphere-swarm-vip/catalog.json): Shows a project STAC Catalog - [Product Collection example](examples/4dionosphere-swarm-vip/model-ionosphere-4dionosphere/collection.json): Shows a product STAC Collection - [JSON Schema](json-schema/schema.json) - [Changelog](./CHANGELOG.md) @@ -52,7 +52,7 @@ A set of satellite missions which provided input for the product. ## Fields The fields in the table below can be used in these parts of STAC documents: -- [ ] Catalogs +- [x] Catalogs - [x] Collections - [x] Item Properties - [ ] Assets (for both Collections and Items, incl. Item Asset Definitions in Collections) diff --git a/examples/4dionosphere-swarm-vip/collection.json b/examples/4dionosphere-swarm-vip/catalog.json similarity index 81% rename from examples/4dionosphere-swarm-vip/collection.json rename to examples/4dionosphere-swarm-vip/catalog.json index cc6c3d2..e60246a 100644 --- a/examples/4dionosphere-swarm-vip/collection.json +++ b/examples/4dionosphere-swarm-vip/catalog.json @@ -1,5 +1,5 @@ { - "type": "Collection", + "type": "Catalog", "id": "4dionosphere-swarm-vip", "stac_version": "1.0.0", "description": "In the project Swarm satellite data and other datasets are used to determine determine the dominant scales in the ionosphere at different geomagnetic conditions and create a semi-empiric dynamic model of the ionosphere.", @@ -55,27 +55,6 @@ "theme:Magnetosphere_Ionosphere" ], "updated": "2023-03-15T16:24:03.357451Z", - "extent": { - "spatial": { - "bbox": [ - [ - -180, - -90, - 18, - 90 - ] - ] - }, - "temporal": { - "interval": [ - [ - "2020-04-07T00:00:00Z", - "2022-04-16T23:59:59Z" - ] - ] - } - }, - "license": "proprietary", "links": [ { "rel": "via", @@ -92,11 +71,6 @@ "href": "./model-ionosphere-4dionosphere/collection.json", "type": "application/json", "title": "Semi-empiric model of ionosphere processes_SWARM" - }, - { - "rel": "parent", - "href": "../collection.json", - "type": "application/json" } ] } \ No newline at end of file diff --git a/examples/4dionosphere-swarm-vip/model-ionosphere-4dionosphere/collection.json b/examples/4dionosphere-swarm-vip/model-ionosphere-4dionosphere/collection.json index bc4be76..514c1ac 100644 --- a/examples/4dionosphere-swarm-vip/model-ionosphere-4dionosphere/collection.json +++ b/examples/4dionosphere-swarm-vip/model-ionosphere-4dionosphere/collection.json @@ -54,9 +54,21 @@ }, { "rel": "parent", - "href": "../collection.json", + "href": "../catalog.json", "type": "application/json", "title": "SWARM VIP" + }, + { + "rel": "root", + "href": "../catalog.json", + "type": "application/json", + "title": "SWARM VIP" + }, + { + "rel": "item", + "href": "./item.json", + "type": "application/geo+json", + "title": "example" } ] } \ No newline at end of file diff --git a/examples/4dionosphere-swarm-vip/model-ionosphere-4dionosphere/item.json b/examples/4dionosphere-swarm-vip/model-ionosphere-4dionosphere/item.json index f27eb12..fd1348a 100644 --- a/examples/4dionosphere-swarm-vip/model-ionosphere-4dionosphere/item.json +++ b/examples/4dionosphere-swarm-vip/model-ionosphere-4dionosphere/item.json @@ -1,6 +1,6 @@ { "type": "Feature", - "id": "example-model", + "id": "example", "stac_version": "1.0.0", "stac_extensions": [ "https://stac-extensions.github.io/osc/v1.0.0-rc.2/schema.json" @@ -26,12 +26,25 @@ ], "datetime": "2023-03-15T16:24:03.357451Z" }, + "collection": "model-ionosphere-4dionosphere", "links": [ { "rel": "parent", - "href": "../collection.json", + "href": "./collection.json", "type": "application/json", - "title": "model-ionosphere-4dionosphere" + "title": "Semi-empiric model of ionosphere processes_SWARM" + }, + { + "rel": "collection", + "href": "./collection.json", + "type": "application/json", + "title": "Semi-empiric model of ionosphere processes_SWARM" + }, + { + "rel": "root", + "href": "../catalog.json", + "type": "application/json", + "title": "SWARM VIP" } ], "assets": { diff --git a/json-schema/schema.json b/json-schema/schema.json index 8e489c9..ab7401a 100644 --- a/json-schema/schema.json +++ b/json-schema/schema.json @@ -33,14 +33,17 @@ } }, { - "$comment": "This is the schema for STAC Collections.", + "$comment": "This is the schema for STAC Catalogs & Collections.", "type": "object", "required": [ "type" ], "properties": { "type": { - "const": "Collection" + "enum": [ + "Catalog", + "Collection" + ] } }, "allOf": [