# Copyright 2025 Terradue # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # STAC Catalog # https://raw.githubusercontent.com/radiantearth/stac-api-spec/refs/tags/v1.0.0/stac-spec/catalog-spec/json-schema/catalog.json - type: enum name: StacVersion symbols: - '1.0.0' - type: record name: Link fields: - type: string name: href - type: string name: rel - type: - 'null' - string name: title - type: - 'null' - string name: type - type: record name: Catalog fields: - type: string name: description - type: string name: id - type: type: array items: Link name: links - type: - 'null' - type: array items: string name: stac_extensions - type: StacVersion name: stac_version - type: - 'null' - string name: title - type: string name: type # https://raw.githubusercontent.com/radiantearth/stac-api-spec/refs/tags/v1.0.0/stac-spec/item-spec/json-schema/basics.json - type: record name: BasicDescriptiveFields fields: - type: - 'null' - string name: title - type: - 'null' - string name: description # https://raw.githubusercontent.com/radiantearth/stac-api-spec/refs/tags/v1.0.0/stac-spec/item-spec/json-schema/datetime.json - type: record name: DateTime fields: - type: - 'null' - string name: datetime - type: - 'null' - string name: start_datetime - type: - 'null' - string name: end_datetime - type: - 'null' - string name: created - type: - 'null' - string name: updated # https://raw.githubusercontent.com/radiantearth/stac-api-spec/refs/tags/v1.0.0/stac-spec/item-spec/json-schema/instrument.json - type: record name: Instrument fields: - type: - 'null' - string name: constellation - type: - 'null' - int name: gsd - type: type: array items: string name: instruments - type: - 'null' - string name: mission - type: - 'null' - string name: platform # https://raw.githubusercontent.com/radiantearth/stac-api-spec/refs/tags/v1.0.0/stac-spec/item-spec/json-schema/licensing.json - type: record name: Licensing fields: - type: - 'null' - string name: license # https://raw.githubusercontent.com/radiantearth/stac-api-spec/refs/tags/v1.0.0/stac-spec/item-spec/json-schema/provider.json - type: enum name: OrganizationRole symbols: - 'producer' - 'licensor' - 'processor' - 'host' - type: record name: Provider fields: - type: - 'null' - string name: description - type: string name: name - type: - 'null' - type: array items: OrganizationRole name: roles - type: - 'null' - string name: url - type: record name: Providers fields: - type: - 'null' - type: array items: Provider name: providers # Geometry # https://geojson.org/schema/Geometry.json - type: enum name: PointType symbols: - Point - type: record name: Point fields: - type: PointType name: type - type: type: array items: double name: coordinates - type: type: array items: double name: bbox - type: enum name: LineStringType symbols: - LineString - type: record name: LineString fields: - type: LineStringType name: type - type: type: array items: double name: coordinates - type: type: array items: double name: bbox - type: enum name: PolygonType symbols: - Polygon - type: record name: Polygon fields: - type: PolygonType name: type - type: type: array items: type: array items: double name: coordinates - type: type: array items: double name: bbox - type: enum name: MultiPointType symbols: - MultiPoint - type: record name: MultiPoint fields: - type: MultiPointType name: type - type: type: array items: type: array items: double name: coordinates - type: type: array items: double name: bbox - type: enum name: MultiLineStringType symbols: - MultiLineString - type: record name: MultiLineString fields: - type: MultiLineStringType name: type - type: type: array items: type: array items: type: array items: double name: coordinates - type: type: array items: double name: bbox - type: enum name: MultiPolygonType symbols: - MultiPolygon - type: record name: MultiPolygon fields: - type: MultiPolygonType name: type - type: type: array items: type: array items: type: array items: type: array items: double name: coordinates - type: type: array items: double name: bbox # Feature # https://geojson.org/schema/Feature.json - type: enum name: FeatureType symbols: - Feature - type: record name: Feature fields: - type: FeatureType name: type - name: id type: string - type: - 'null' - Point - LineString - Polygon - MultiPoint - MultiLineString - MultiPolygon name: geometry - type: type: array items: double name: bbox - type: enum name: GeometryCollectionType symbols: - GeometryCollection - type: record name: GeometryCollection fields: - type: GeometryCollectionType name: type - type: type: array items: - Point - LineString - Polygon - MultiPoint - MultiLineString - MultiPolygon name: geometries - type: type: array items: double name: bbox # STAC Item # https://raw.githubusercontent.com/radiantearth/stac-api-spec/refs/tags/v1.0.0/stac-spec/item-spec/json-schema/item.json - type: record name: CommonMetadata fields: # $ref": "basics.json" - type: - 'null' - string name: title - type: - 'null' - string name: description # "$ref": "datetime.json" - type: - 'null' - string name: datetime - type: - 'null' - string name: start_datetime - type: - 'null' - string name: end_datetime - type: - 'null' - string name: created - type: - 'null' - string name: updated # "$ref": "licensing.json" - type: - 'null' - string name: license # "$ref": "provider.json" - type: - 'null' - type: array items: Provider name: providers - type: record name: Asset fields: - type: string name: href - type: - 'null' - string name: title - type: - 'null' - string name: description - type: - 'null' - string name: type - type: - 'null' - type: array items: string name: roles # "allOf": "$ref": "#/definitions/common_metadata" # $ref": "basics.json" # title and description previously defined # "$ref": "datetime.json" - type: - 'null' - string name: datetime - type: - 'null' - string name: start_datetime - type: - 'null' - string name: end_datetime - type: - 'null' - string name: created - type: - 'null' - string name: updated # "$ref": "licensing.json" - type: - 'null' - string name: license # "$ref": "provider.json" - type: - type: array items: Provider name: providers - type: record name: Item fields: # "allOf": [ { "$ref": "Feature.json" - type: FeatureType name: type - name: id type: string - type: - 'null' - Point - LineString - Polygon - MultiPoint - MultiLineString - MultiPolygon name: geometry - type: type: array items: double name: bbox # core - type: StacVersion name: stac_version - type: - 'null' - type: array items: string name: stac_extensions - type: type: array items: Link name: links # The map type is not part of the CWL v1.0 core schema — it's a CWL v1.2+ extension. #- type: # - type: map # values: Asset # name: assets - type: CommonMetadata name: properties # STAC Collection # https://raw.githubusercontent.com/radiantearth/stac-api-spec/refs/tags/v1.0.0/stac-spec/collection-spec/json-schema/collection.json - type: enum name: CollectionType symbols: - Collection - type: record name: Spatial fields: - name: bbox type: type: array items: type: array items: double - type: record name: Temporal fields: - name: interval type: type: array items: type: array items: string - type: record name: Extents fields: - type: Spatial name: spatial - type: Temporal name: temporal - type: record name: Range fields: - type: - int - string name: minimum - type: - int - string name: maximum - type: record name: Collection fields: - type: StacVersion name: stac_version - type: - 'null' - type: array items: string name: stac_extensions - type: CollectionType name: type - type: - 'null' - string name: title - type: - 'null' - type: array items: string name: keywords - type: string name: license - type: - 'null' - Provider name: providers - type: type: array items: Link name: links - type: - 'null' - Range name: summaries