openapi: 3.0.0
info:
version: '1.0'
title: OGC API - Maps
description: 'Example API Definition for OGC API - Maps - Part 1: Core'
contact:
name: Open Geospatial Consortium
email: info@ogc.org
license:
name: OGC License
url: 'http://www.opengeospatial.org/legal/'
servers:
- description: Example OGC API - Maps server
url: 'https://maps.ecere.com/ogcapi'
tags:
- name: Maps
description: OGC API Maps
paths:
# /:
# get:
# tags:
# - Landing Page
# operationId: getLandingPage
# summary: Retrieve the OGC API landing page for this service.
# parameters:
# - $ref: '#/components/parameters/f-metadata'
# responses:
# '200':
# $ref: '#/components/responses/LandingPage'
# '406':
# $ref: '#/components/responses/NotAcceptable'
# '500':
# $ref: '#/components/responses/ServerError'
# /conformance:
# get:
# tags:
# - Conformance
# operationId: getConformance
# summary: Retrieve the set of OGC API conformance classes that are supported by this service.
# parameters:
# - $ref: '#/components/parameters/f-metadata'
# responses:
# '200':
# $ref: '#/components/responses/Conformance'
# '406':
# $ref: '#/components/responses/NotAcceptable'
# '500':
# $ref: '#/components/responses/ServerError'
# /api:
# get:
# tags:
# - API
# operationId: getAPI
# summary: Retrieve this API definition.
# parameters:
# - $ref: '#/components/parameters/f-metadata'
# responses:
# '200':
# $ref: '#/components/responses/API'
# '406':
# $ref: '#/components/responses/NotAcceptable'
# '500':
# $ref: '#/components/responses/ServerError'
# /api/all-collections:
# get:
# tags:
# - API
# operationId: getAPICollections
# summary: Retrieve the list of collections available from this API implementation & deployment.
# parameters:
# - $ref: '#/components/parameters/f-metadata'
# responses:
# '200':
# $ref: '#/components/responses/Enumeration'
# '404':
# $ref: '#/components/responses/NotFound'
# '406':
# $ref: '#/components/responses/NotAcceptable'
# '500':
# $ref: '#/components/responses/ServerError'
# /api/tileMatrixSets:
# get:
# tags:
# - API
# operationId: getAPITileMatrixSets
# summary: Retrieve the list of shared TileMatrixSets available from this API implementation & deployment.
# parameters:
# - $ref: '#/components/parameters/f-metadata'
# responses:
# '200':
# $ref: '#/components/responses/Enumeration'
# '404':
# $ref: '#/components/responses/NotFound'
# '406':
# $ref: '#/components/responses/NotAcceptable'
# '500':
# $ref: '#/components/responses/ServerError'
# /api/styles:
# get:
# tags:
# - API
# operationId: getAPIStyles
# summary: Retrieve the list of dataset styles available from this API implementation & deployment.
# parameters:
# - $ref: '#/components/parameters/f-metadata'
# responses:
# '200':
# $ref: '#/components/responses/Enumeration'
# '404':
# $ref: '#/components/responses/NotFound'
# '406':
# $ref: '#/components/responses/NotAcceptable'
# '500':
# $ref: '#/components/responses/ServerError'
# /collections:
# get:
# tags:
# - Data Collections
# operationId: getCollectionsList
# summary: Retrieve the list of geospatial data collections available from this service.
# parameters:
# - $ref: '#/components/parameters/datetime'
# - $ref: '#/components/parameters/bbox'
# - name: limit
# in: query
# description: |-
# The optional limit parameter limits the number of collections that are presented in the response document.
# Only items are counted that are on the first level of the collection in the response document. Nested objects contained within the explicitly requested items shall not be counted.
# * Minimum = 1 * Maximum = 10000 * Default = 10
# required: false
# schema:
# type: integer
# minimum: 1
# maximum: 10000
# default: 10
# style: form
# explode: false
# - $ref: '#/components/parameters/f-metadata'
# responses:
# '200':
# $ref: '#/components/responses/CollectionsList'
# '/collections/{collectionId}':
# get:
# tags:
# - Data Collections
# operationId: getCollection
# summary: Retrieve the description of a collection available from this service.
# parameters:
# - $ref: '#/components/parameters/collectionId-all'
# - $ref: '#/components/parameters/f-metadata'
# responses:
# '200':
# $ref: '#/components/responses/Collection'
/map:
get:
tags:
- Maps
summary: Retrieve a default map of the whole dataset
operationId: getDatasetMap
parameters:
- $ref: '#/components/parameters/bbox'
- $ref: '#/components/parameters/datetime'
- $ref: '#/components/parameters/collections'
- $ref: '#/components/parameters/subset'
- $ref: '#/components/parameters/crs'
- $ref: '#/components/parameters/bbox-crs'
- $ref: '#/components/parameters/subset-crs'
- $ref: '#/components/parameters/bgcolor'
- $ref: '#/components/parameters/transparent'
- $ref: '#/components/parameters/width'
- $ref: '#/components/parameters/height'
- $ref: '#/components/parameters/f-map'
responses:
'200':
$ref: '#/components/responses/Map'
'204':
$ref: '#/components/responses/EmptyMap'
'404':
$ref: '#/components/responses/NotFound'
'406':
$ref: '#/components/responses/NotAcceptable'
'500':
$ref: '#/components/responses/ServerError'
'/styles/{styleId}/map':
get:
tags:
- Maps
summary: Retrieve a styled map of the whole dataset
operationId: getDatasetStyleMap
parameters:
- $ref: '#/components/parameters/bbox'
- $ref: '#/components/parameters/datetime'
- $ref: '#/components/parameters/collections'
- $ref: '#/components/parameters/subset'
- $ref: '#/components/parameters/crs'
- $ref: '#/components/parameters/bbox-crs'
- $ref: '#/components/parameters/subset-crs'
- $ref: '#/components/parameters/bgcolor'
- $ref: '#/components/parameters/transparent'
- $ref: '#/components/parameters/width'
- $ref: '#/components/parameters/height'
- $ref: '#/components/parameters/styleId'
- $ref: '#/components/parameters/f-map'
responses:
'200':
$ref: '#/components/responses/Map'
'204':
$ref: '#/components/responses/EmptyMap'
'404':
$ref: '#/components/responses/NotFound'
'406':
$ref: '#/components/responses/NotAcceptable'
'500':
$ref: '#/components/responses/ServerError'
'/collections/{collectionId}/map':
get:
tags:
- Maps
summary: Retrieve a map for the specified collection
operationId: getCollectionMap
parameters:
- $ref: '#/components/parameters/bbox'
- $ref: '#/components/parameters/datetime'
- $ref: '#/components/parameters/collectionId-all'
- $ref: '#/components/parameters/collections'
- $ref: '#/components/parameters/subset'
- $ref: '#/components/parameters/crs'
- $ref: '#/components/parameters/bbox-crs'
- $ref: '#/components/parameters/subset-crs'
- $ref: '#/components/parameters/bgcolor'
- $ref: '#/components/parameters/transparent'
- $ref: '#/components/parameters/width'
- $ref: '#/components/parameters/height'
- $ref: '#/components/parameters/f-map'
responses:
'200':
$ref: '#/components/responses/Map'
'204':
$ref: '#/components/responses/EmptyMap'
'404':
$ref: '#/components/responses/NotFound'
'406':
$ref: '#/components/responses/NotAcceptable'
'500':
$ref: '#/components/responses/ServerError'
'/collections/{collectionId}/styles/{styleId}/map':
get:
tags:
- Maps
summary: Retrieve a map for a specified collection and style
operationId: getCollectionStyleMap
parameters:
- $ref: '#/components/parameters/bbox'
- $ref: '#/components/parameters/datetime'
- $ref: '#/components/parameters/collectionId-all'
- $ref: '#/components/parameters/collections'
- $ref: '#/components/parameters/subset'
- $ref: '#/components/parameters/crs'
- $ref: '#/components/parameters/bbox-crs'
- $ref: '#/components/parameters/subset-crs'
- $ref: '#/components/parameters/bgcolor'
- $ref: '#/components/parameters/transparent'
- $ref: '#/components/parameters/width'
- $ref: '#/components/parameters/height'
- $ref: '#/components/parameters/styleId-collection'
- $ref: '#/components/parameters/f-map'
responses:
'200':
$ref: '#/components/responses/Map'
'204':
$ref: '#/components/responses/EmptyMap'
'404':
$ref: '#/components/responses/NotFound'
'406':
$ref: '#/components/responses/NotAcceptable'
'500':
$ref: '#/components/responses/ServerError'
/tileMatrixSets:
get:
tags:
- Tiling Schemes
summary: Retrieve the list of available tiling schemes (tile matrix sets)
operationId: getTileMatrixSetsList
parameters:
- $ref: '#/components/parameters/f-metadata'
responses:
'200':
$ref: '#/components/responses/TileMatrixSetsList'
'406':
$ref: '#/components/responses/NotAcceptable'
'500':
$ref: '#/components/responses/ServerError'
'/tileMatrixSets/{tileMatrixSetId}':
get:
tags:
- Tiling Schemes
summary: Retrieve the definition of the specified tiling scheme (tile matrix set)
operationId: getTileMatrixSet
parameters:
- $ref: '#/components/parameters/tileMatrixSetId'
- $ref: '#/components/parameters/f-metadata'
responses:
'200':
$ref: '#/components/responses/TileMatrixSet'
'404':
description: The requested tile matrix set id was not found
content:
application/json:
schema:
$ref: '#/components/schemas/exception'
'406':
$ref: '#/components/responses/NotAcceptable'
'500':
$ref: '#/components/responses/ServerError'
/map/tiles:
get:
tags:
- Map Tiles
summary: Retrieve the list of all default map tilesets for the whole dataset
operationId: .dataset.map.getTileSetsList
parameters:
- $ref: '#/components/parameters/f-metadata'
responses:
'200':
$ref: '#/components/responses/TileSetsList'
'404':
$ref: '#/components/responses/NotFound'
'406':
$ref: '#/components/responses/NotAcceptable'
'500':
$ref: '#/components/responses/ServerError'
'/map/tiles/{tileMatrixSetId}':
get:
tags:
- Map Tiles
summary: Retrieve a default map tileset of the whole dataset for the specified tiling scheme (tile matrix set)
operationId: .dataset.map.getTileSet
parameters:
- $ref: '#/components/parameters/collections'
- $ref: '#/components/parameters/tileMatrixSetId'
- $ref: '#/components/parameters/f-metadata'
responses:
'200':
$ref: '#/components/responses/TileSet'
'404':
$ref: '#/components/responses/NotFound'
'406':
$ref: '#/components/responses/NotAcceptable'
'500':
$ref: '#/components/responses/ServerError'
'/map/tiles/{tileMatrixSetId}/{tileMatrix}/{tileRow}/{tileCol}':
get:
tags:
- Map Tiles
summary: Retrieve a default map tile of the whole dataset
operationId: .dataset.map.getTile
parameters:
- $ref: '#/components/parameters/tileMatrix'
- $ref: '#/components/parameters/tileRow'
- $ref: '#/components/parameters/tileCol'
- $ref: '#/components/parameters/datetime'
- $ref: '#/components/parameters/collections'
- $ref: '#/components/parameters/subset'
- $ref: '#/components/parameters/crs'
- $ref: '#/components/parameters/subset-crs'
- $ref: '#/components/parameters/bgcolor'
- $ref: '#/components/parameters/transparent'
- $ref: '#/components/parameters/tileMatrixSetId'
- $ref: '#/components/parameters/f-mapTile'
responses:
'200':
$ref: '#/components/responses/MapTile'
'204':
$ref: '#/components/responses/EmptyTile'
'404':
$ref: '#/components/responses/NotFound'
'406':
$ref: '#/components/responses/NotAcceptable'
'500':
$ref: '#/components/responses/ServerError'
'/styles/{styleId}/map/tiles':
get:
tags:
- Map Tiles
summary: Retrieve the list of styled map tilesets for the whole dataset
operationId: .dataset.style.map.getTileSetsList
parameters:
- $ref: '#/components/parameters/styleId'
- $ref: '#/components/parameters/f-metadata'
responses:
'200':
$ref: '#/components/responses/TileSetsList'
'404':
$ref: '#/components/responses/NotFound'
'406':
$ref: '#/components/responses/NotAcceptable'
'500':
$ref: '#/components/responses/ServerError'
'/styles/{styleId}/map/tiles/{tileMatrixSetId}':
get:
tags:
- Map Tiles
summary: Retrieve a styled map tileset of the whole dataset for the specified tiling scheme (tile matrix set)
operationId: .dataset.style.map.getTileSet
parameters:
- $ref: '#/components/parameters/styleId'
- $ref: '#/components/parameters/collections'
- $ref: '#/components/parameters/tileMatrixSetId'
- $ref: '#/components/parameters/f-metadata'
responses:
'200':
$ref: '#/components/responses/TileSet'
'404':
$ref: '#/components/responses/NotFound'
'406':
$ref: '#/components/responses/NotAcceptable'
'500':
$ref: '#/components/responses/ServerError'
'/styles/{styleId}/map/tiles/{tileMatrixSetId}/{tileMatrix}/{tileRow}/{tileCol}':
get:
tags:
- Map Tiles
summary: Retrieve a styled map tiles
operationId: .dataset.style.map.getTile
parameters:
- $ref: '#/components/parameters/tileMatrix'
- $ref: '#/components/parameters/tileRow'
- $ref: '#/components/parameters/tileCol'
- $ref: '#/components/parameters/datetime'
- $ref: '#/components/parameters/collections'
- $ref: '#/components/parameters/subset'
- $ref: '#/components/parameters/crs'
- $ref: '#/components/parameters/subset-crs'
- $ref: '#/components/parameters/bgcolor'
- $ref: '#/components/parameters/transparent'
- $ref: '#/components/parameters/styleId'
- $ref: '#/components/parameters/tileMatrixSetId'
- $ref: '#/components/parameters/f-mapTile'
responses:
'200':
$ref: '#/components/responses/MapTile'
'204':
$ref: '#/components/responses/EmptyTile'
'404':
$ref: '#/components/responses/NotFound'
'406':
$ref: '#/components/responses/NotAcceptable'
'500':
$ref: '#/components/responses/ServerError'
'/collections/{collectionId}/map/tiles':
get:
tags:
- Map Tiles
summary: Retrieve a list of all map tilesets for specified collection.
operationId: .collection.map.getTileSetsList
parameters:
- $ref: '#/components/parameters/collectionId-all'
- $ref: '#/components/parameters/f-metadata'
responses:
'200':
$ref: '#/components/responses/TileSetsList'
'404':
$ref: '#/components/responses/NotFound'
'406':
$ref: '#/components/responses/NotAcceptable'
'500':
$ref: '#/components/responses/ServerError'
'/collections/{collectionId}/map/tiles/{tileMatrixSetId}':
get:
tags:
- Map Tiles
summary: Retrieve a map tile set metadata for the specified collection and tiling scheme (tile matrix set)
operationId: .collection.map.getTileSet
parameters:
- $ref: '#/components/parameters/collectionId-all'
- $ref: '#/components/parameters/collections'
- $ref: '#/components/parameters/tileMatrixSetId'
- $ref: '#/components/parameters/f-metadata'
responses:
'200':
$ref: '#/components/responses/TileSet'
'404':
$ref: '#/components/responses/NotFound'
'406':
$ref: '#/components/responses/NotAcceptable'
'500':
$ref: '#/components/responses/ServerError'
'/collections/{collectionId}/map/tiles/{tileMatrixSetId}/{tileMatrix}/{tileRow}/{tileCol}':
get:
tags:
- Map Tiles
summary: Retrieve a map tile from the specified collection
operationId: .collection.map.getTile
parameters:
- $ref: '#/components/parameters/tileMatrix'
- $ref: '#/components/parameters/tileRow'
- $ref: '#/components/parameters/tileCol'
- $ref: '#/components/parameters/datetime'
- $ref: '#/components/parameters/collectionId-all'
- $ref: '#/components/parameters/collections'
- $ref: '#/components/parameters/subset'
- $ref: '#/components/parameters/crs'
- $ref: '#/components/parameters/subset-crs'
- $ref: '#/components/parameters/bgcolor'
- $ref: '#/components/parameters/transparent'
- $ref: '#/components/parameters/tileMatrixSetId'
- $ref: '#/components/parameters/f-mapTile'
responses:
'200':
$ref: '#/components/responses/MapTile'
'204':
$ref: '#/components/responses/EmptyTile'
'404':
$ref: '#/components/responses/NotFound'
'406':
$ref: '#/components/responses/NotAcceptable'
'500':
$ref: '#/components/responses/ServerError'
'/collections/{collectionId}/styles/{styleId}/map/tiles':
get:
tags:
- Map Tiles
summary: Retrieve a list of styled map tilesets for the specified collection
operationId: .collection.style.map.getTileSetsList
parameters:
- $ref: '#/components/parameters/collectionId-all'
- $ref: '#/components/parameters/f-metadata'
- $ref: '#/components/parameters/styleId-collection'
responses:
'200':
$ref: '#/components/responses/TileSetsList'
'404':
$ref: '#/components/responses/NotFound'
'406':
$ref: '#/components/responses/NotAcceptable'
'500':
$ref: '#/components/responses/ServerError'
'/collections/{collectionId}/styles/{styleId}/map/tiles/{tileMatrixSetId}':
get:
tags:
- Map Tiles
summary: 'Retrieve the map tileset metadata for the specified collection, style and tiling scheme (tile matrix set).'
operationId: .collection.style.map.getTileSet
parameters:
- $ref: '#/components/parameters/collectionId-all'
- $ref: '#/components/parameters/collections'
- $ref: '#/components/parameters/styleId-collection'
- $ref: '#/components/parameters/tileMatrixSetId'
- $ref: '#/components/parameters/f-metadata'
responses:
'200':
$ref: '#/components/responses/TileSet'
'404':
$ref: '#/components/responses/NotFound'
'406':
$ref: '#/components/responses/NotAcceptable'
'500':
$ref: '#/components/responses/ServerError'
'/collections/{collectionId}/styles/{styleId}/map/tiles/{tileMatrixSetId}/{tileMatrix}/{tileRow}/{tileCol}':
get:
tags:
- Map Tiles
summary: Retrieve a map tile for a specified collection and style
operationId: .collection.style.map.getTile
parameters:
- $ref: '#/components/parameters/tileMatrix'
- $ref: '#/components/parameters/tileRow'
- $ref: '#/components/parameters/tileCol'
- $ref: '#/components/parameters/datetime'
- $ref: '#/components/parameters/collectionId-all'
- $ref: '#/components/parameters/collections'
- $ref: '#/components/parameters/subset'
- $ref: '#/components/parameters/crs'
- $ref: '#/components/parameters/subset-crs'
- $ref: '#/components/parameters/bgcolor'
- $ref: '#/components/parameters/transparent'
- $ref: '#/components/parameters/styleId-collection'
- $ref: '#/components/parameters/tileMatrixSetId'
- $ref: '#/components/parameters/f-mapTile'
responses:
'200':
$ref: '#/components/responses/MapTile'
'204':
$ref: '#/components/responses/EmptyTile'
'404':
$ref: '#/components/responses/NotFound'
'406':
$ref: '#/components/responses/NotAcceptable'
'500':
$ref: '#/components/responses/ServerError'
components:
schemas:
confClasses:
type: object
required:
- conformsTo
properties:
conformsTo:
type: array
items:
type: string
link:
type: object
required:
- href
- rel
properties:
href:
type: string
description: Supplies the URI to a remote resource (or resource fragment).
example: 'http://data.example.com/buildings/123'
rel:
type: string
description: The type or semantics of the relation.
example: alternate
type:
type: string
description: A hint indicating what the media type of the result of dereferencing the link should be.
example: application/geo+json
templated:
type: boolean
description: This flag set to true if the link is a URL template.
hreflang:
type: string
description: A hint indicating what the language of the result of dereferencing the link should be.
example: en
title:
type: string
description: Used to label the destination of a link such that it can be used as a human-readable identifier.
example: 'Trierer Strasse 70, 53115 Bonn'
length:
type: integer
landingPage:
type: object
required:
- links
properties:
title:
type: string
title: The title of the API.
description: 'While a title is not required, implementors are strongly advised to include one.'
example: Buildings in Bonn
description:
type: string
example: Access to data about buildings in the city of Bonn via a Web API that conforms to the OGC API Common specification.
attribution:
type: string
title: attribution for the API
description: 'The `attribution` should be short and intended for presentation to a user, for example, in a corner of a map. Parts of the text can be links to other resources if additional information is needed. The string can include HTML markup.'
links:
type: array
items:
$ref: '#/components/schemas/link'
exception:
title: Exception Schema
description: JSON schema for exceptions based on RFC 7807
type: object
required:
- type
properties:
type:
type: string
title:
type: string
status:
type: integer
detail:
type: string
instance:
type: string
collections:
type: object
required:
- links
- collections
properties:
links:
type: array
items:
$ref: '#/components/schemas/link'
timeStamp:
type: string
format: date-time
numberMatched:
type: integer
minimum: 0
example: 1
numberReturned:
type: integer
minimum: 0
example: 1
collections:
type: array
items:
$ref: '#/components/schemas/collectionInfo'
collectionInfo:
type: object
required:
- id
- links
properties:
id:
type: string
description: 'identifier of the collection used, for example, in URIs'
example: dem
title:
type: string
description: human readable title of the collection
example: Digital Elevation Model
description:
type: string
description: a description of the data in the collection
example: A Digital Elevation Model.
links:
type: array
example:
- href: 'http://data.example.org/collections/dem?f=json'
rel: self
type: application/json
title: Digital Elevation Model
- href: 'http://data.example.org/collections/dem?f=html'
rel: alternate
type: application/json
title: Digital Elevation Model
- href: 'http://data.example.org/collections/dem/coverage'
rel: coverage
type: image/tiff; application=geotiff
title: Digital Elevation Model
- href: 'http://data.example.org/collections/dem/coverage/domainset'
rel: domainset
type: application/json
title: Digital Elevation Model
- href: 'http://data.example.org/collections/dem/coverage/rangetype'
rel: rangetype
type: application/json
title: Digital Elevation Model
- href: 'http://data.example.org/collections/dem/coverage/metadata'
rel: metadata
type: application/json
title: Digital Elevation Model
items:
$ref: '#/components/schemas/link'
extent:
$ref: '#/components/schemas/extent-uad'
itemType:
description: 'indicator about the type of the items in the collection if the collection has an accessible /collections/{collectionId}/items endpoint'
type: string
default: unknown
crs:
description: the list of coordinate reference systems supported by the API; the first item is the default coordinate reference system
type: array
items:
type: string
default:
- 'http://www.opengis.net/def/crs/OGC/1.3/CRS84'
example:
- 'http://www.opengis.net/def/crs/OGC/1.3/CRS84'
- 'http://www.opengis.net/def/crs/EPSG/0/4326'
dataType:
allOf:
- description: Type of data represented in the collection
- $ref: '#/components/schemas/dataType'
geometryDimension:
description: 'The geometry dimension of the features shown in this layer (0: points, 1: curves, 2: surfaces, 3: solids), unspecified: mixed or unknown'
type: integer
minimum: 0
maximum: 3
minScaleDenominator:
description: Minimum scale denominator for usage of the collection
type: number
maxScaleDenominator:
description: Maximum scale denominator for usage of the collection
type: number
minCellSize:
description: Minimum cell size for usage of the collection
type: number
maxCellSize:
description: Maximum cell size for usage of the collection
type: number
extent:
description: |-
The extent of the data in the collection. In the Core only spatial and temporal
extents are specified. Extensions may add additional members to represent other
extents, for example, thermal or pressure ranges.
The first item in the array describes the overall extent of
the data. All subsequent items describe more precise extents,
e.g., to identify clusters of data.
Clients only interested in the overall extent will only need to
access the first item in each array.
type: object
properties:
spatial:
description: The spatial extent of the data in the collection.
type: object
properties:
bbox:
description: |-
One or more bounding boxes that describe the spatial extent of the dataset.
In the Core only a single bounding box is supported.
Extensions may support additional areas.
The first bounding box describes the overall spatial
extent of the data. All subsequent bounding boxes describe
more precise bounding boxes, e.g., to identify clusters of data.
Clients only interested in the overall spatial extent will
only need to access the first item in each array.
type: array
minItems: 1
items:
description: |-
Each bounding box is provided as four or six numbers, depending on
whether the coordinate reference system includes a vertical axis
(height or depth):
* Lower left corner, coordinate axis 1
* Lower left corner, coordinate axis 2
* Minimum value, coordinate axis 3 (optional)
* Upper right corner, coordinate axis 1
* Upper right corner, coordinate axis 2
* Maximum value, coordinate axis 3 (optional)
If the value consists of four numbers, the coordinate reference system is
WGS 84 longitude/latitude (http://www.opengis.net/def/crs/OGC/1.3/CRS84)
unless a different coordinate reference system is specified in a parameter `bbox-crs`.
If the value consists of six numbers, the coordinate reference system is WGS 84
longitude/latitude/ellipsoidal height (http://www.opengis.net/def/crs/OGC/0/CRS84h)
unless a different coordinate reference system is specified in a parameter `bbox-crs`.
For WGS 84 longitude/latitude the values are in most cases the sequence of
minimum longitude, minimum latitude, maximum longitude and maximum latitude.
However, in cases where the box spans the antimeridian the first value
(west-most box edge) is larger than the third value (east-most box edge).
If the vertical axis is included, the third and the sixth number are
the bottom and the top of the 3-dimensional bounding box.
If a feature has multiple spatial geometry properties, it is the decision of the
server whether only a single spatial geometry property is used to determine
the extent or all relevant geometries.
type: array
oneOf:
- minItems: 4
maxItems: 4
- minItems: 6
maxItems: 6
items:
type: number
example:
- -180
- -90
- 180
- 90
crs:
description: |-
Coordinate reference system of the coordinates in the spatial extent
(property `bbox`). The default reference system is WGS 84 longitude/latitude.
In the Core the only other supported coordinate reference system is
WGS 84 longitude/latitude/ellipsoidal height for coordinates with height.
Extensions may support additional coordinate reference systems and add
additional enum values.
type: string
enum:
- 'http://www.opengis.net/def/crs/OGC/1.3/CRS84'
- 'http://www.opengis.net/def/crs/OGC/0/CRS84h'
default: 'http://www.opengis.net/def/crs/OGC/1.3/CRS84'
temporal:
description: The temporal extent of the features in the collection.
type: object
properties:
interval:
description: |-
One or more time intervals that describe the temporal extent of the dataset.
In the Core only a single time interval is supported.
Extensions may support multiple intervals.
The first time interval describes the overall
temporal extent of the data. All subsequent time intervals describe
more precise time intervals, e.g., to identify clusters of data.
Clients only interested in the overall extent will only need
to access the first item in each array.
type: array
minItems: 1
items:
description: |-
Begin and end times of the time interval. The timestamps are in the
temporal coordinate reference system specified in `trs`. By default
this is the Gregorian calendar.
The value `null` for start or end time is supported and indicates a half-bounded time interval.
type: array
minItems: 2
maxItems: 2
items:
type: string
format: date-time
nullable: true
example:
- '2011-11-11T12:22:11Z'
- null
trs:
description: |-
Coordinate reference system of the coordinates in the temporal extent
(property `interval`). The default reference system is the Gregorian calendar.
In the Core this is the only supported temporal coordinate reference system.
Extensions may support additional temporal coordinate reference systems and add
additional enum values.
type: string
enum:
- 'http://www.opengis.net/def/uom/ISO-8601/0/Gregorian'
default: 'http://www.opengis.net/def/uom/ISO-8601/0/Gregorian'
extent-uad:
title: Extent with Uniform Additional Dimensions Schema
description: |-
The extent module only addresses spatial and temporal extents. This module extends extent by specifying how
intervals and crs properties can be used to specify additional geometries.
allOf:
- $ref: '#/components/schemas/extent'
- type: object
additionalProperties:
description: The domain intervals for any additional dimensions of the extent (envelope) beyond those described in temporal and spatial.
type: object
oneOf:
- required:
- interval
- crs
- required:
- interval
- trs
- required:
- interval
- vrs
properties:
interval:
description: |-
One or more intervals that describe the extent for this dimension of the dataset.
The value `null` is supported and indicates an unbounded or half-bounded interval.
The first interval describes the overall extent of the data for this dimension.
All subsequent intervals describe more precise intervals, e.g., to identify clusters of data.
Clients only interested in the overall extent will only need
to access the first item (a pair of lower and upper bound values).
type: array
minItems: 1
items:
description: |-
Lower and upper bound values of the interval. The values
are in the coordinate reference system specified in `crs`, `trs` or `vrs`.
type: array
minItems: 2
maxItems: 2
items:
oneOf:
- type: string
nullable: true
- type: number
example:
- '2011-11-11T12:22:11Z'
- 32.5
- null
crs:
type: string
description: generic coordinate reference system suitable for any type of dimensions
trs:
type: string
description: temporal coordinate reference system (e.g. as defined by Features for 'temporal')
vrs:
type: string
description: vertical coordinate reference system (e.g. as defined in EDR for 'vertical')
crs:
title: CRS
oneOf:
- description: Simplification of the object into a url if the other properties are not present
type: string
- type: object
oneOf:
- required:
- uri
properties:
uri:
description: Reference to one coordinate reference system (CRS)
type: string
format: uri
- required:
- wkt
properties:
wkt:
description: A string defining the CRS using the JSON encodng for Well Known Text
type: object
- required:
- referenceSystem
properties:
referenceSystem:
description: A reference system data structure as defined in the MD_ReferenceSystem of the ISO 19115
type: object
dataType:
oneOf:
- type: string
- type: string
enum:
- map
- vector
- coverage
timeStamp:
description: This property indicates the time and date when the response was generated
type: string
format: date-time
numberReturned:
description: |-
The number of features in the feature collection.
A server may omit this information in a response, if the information
about the number of features is not known or difficult to compute.
If the value is provided, the value shall be identical to the number
of items in the "features" array.
type: integer
minimum: 0
example: 10
numberMatched:
description: |-
The number of features of the feature type that match the selection
parameters like `bbox`.
type: integer
minimum: 0
example: 127
tileSet:
title: Tile Set Metadata
description: 'A resource describing a tileset based on the OGC TileSet Metadata Standard. At least one of the ''TileMatrixSet'', or a link with ''rel'' http://www.opengis.net/def/rel/ogc/1.0/tiling-scheme'
type: object
required:
- dataType
- crs
- links
properties:
title:
description: A title for this tileset
type: string
description:
description: Brief narrative description of this tile set
type: string
dataType:
allOf:
- description: Type of data represented in the tileset
- $ref: '#/components/schemas/dataType'
crs:
allOf:
- description: Coordinate Reference System (CRS)
- $ref: '#/components/schemas/crs'
tileMatrixSetURI:
description: 'Reference to a Tile Matrix Set on an offical source for Tile Matrix Sets such as the OGC NA definition server (http://www.opengis.net/def/tms/). Required if the tile matrix set is registered on an open official source.'
type: string
format: uri
links:
description: 'Links to related resources. Possible link ''rel'' values are: ''http://www.opengis.net/def/rel/ogc/1.0/dataset'' for a URL pointing to the dataset, ''item'' for a URL template to get a tile; ''alternate'' for a URL pointing to another representation of the TileSetMetadata (e.g a TileJSON file); ''http://www.opengis.net/def/rel/ogc/1.0/tiling-scheme'' for a definition of the TileMatrixSet; ''http://www.opengis.net/def/rel/ogc/1.0/geodata'' for pointing to a single collection (if the tileset represents a single collection)'
type: array
items:
$ref: '#/components/schemas/link'
tileMatrixSetLimits:
description: 'Limits for the TileRow and TileCol values for each TileMatrix in the tileMatrixSet. If missing, there are no limits other that the ones imposed by the TileMatrixSet. If present the TileMatrices listed are limited and the rest not available at all'
type: array
items:
$ref: '#/components/schemas/tileMatrixLimits'
epoch:
description: Epoch of the Coordinate Reference System (CRS)
type: number
layers:
minItems: 1
type: array
items:
type: object
required:
- id
- dataType
properties:
title:
description: 'Title of this tile matrix set, normally used for display to a human'
type: string
description:
description: 'Brief narrative description of this tile matrix set, normally available for display to a human'
type: string
keywords:
description: Unordered list of one or more commonly used or formalized word(s) or phrase(s) used to describe this layer
type: string
id:
description: Unique identifier of the Layer. Implementation of 'identifier'
type: string
dataType:
allOf:
- description: Type of data represented in the layer
- $ref: '#/components/schemas/dataType'
geometryDimension:
description: 'The geometry dimension of the features shown in this layer (0: points, 1: curves, 2: surfaces, 3: solids), unspecified: mixed or unknown'
type: integer
minimum: 0
maximum: 3
featureType:
description: Feature type identifier. Only applicable to layers of datatype 'geometries'
type: string
pointOfContact:
description: 'Useful information to contact the authors or custodians for the layer (e.g. e-mail address, a physical address, phone numbers, etc)'
type: string
publisher:
description: Organization or individual responsible for making the layer available
type: string
theme:
description: Category where the layer can be grouped
type: string
crs:
allOf:
- description: Coordinate Reference System (CRS)
- $ref: '#/components/schemas/crs'
epoch:
description: Epoch of the Coordinate Reference System (CRS)
type: number
minScaleDenominator:
description: Minimum scale denominator for usage of the layer
type: number
maxScaleDenominator:
description: Maximum scale denominator for usage of the layer
type: number
minCellSize:
description: Minimum cell size for usage of the layer
type: number
maxCellSize:
description: Maximum cell size for usage of the layer
type: number
maxTileMatrix:
description: TileMatrix identifier associated with the minScaleDenominator
type: string
minTileMatrix:
description: TileMatrix identifier associated with the maxScaleDenominator
type: string
boundingBox:
allOf:
- description: Minimum bounding rectangle surrounding the layer
- $ref: '#/components/schemas/2DBoundingBox'
created:
allOf:
- description: When the layer was first produced
- $ref: '#/components/schemas/timeStamp'
updated:
allOf:
- description: Last layer change/revision
- $ref: '#/components/schemas/timeStamp'
style:
allOf:
- description: Style used to generate the layer in the tileset
- $ref: '#/components/schemas/tileSet/properties/style/allOf/1'
geoDataClasses:
description: URI identifying a class of data contained in this layer (useful to determine compatibility with styles or processes)
type: array
items:
type: string
propertiesSchema:
allOf:
- description: Properties represented by the features in this layer. Can be the attributes of a feature dataset (datatype=geometries) or the rangeType of a coverage (datatype=coverage)
- description: Attributes of the features or rangetypes of a coverage. Defined by a subset of the JSON Schema for the properties of a feature
type: object
required:
- type
- properties
properties:
type:
type: string
enum:
- object
required:
description: Implements 'multiplicity' by citing property 'name' defined as 'additionalProperties'
type: array
minItems: 1
items:
type: string
properties:
type: object
default: {}
additionalProperties:
description: No property names are defined but any property name they should be described by JSON Schema. So 'additionalProperties' implements 'name'.
type: object
properties:
title:
type: string
description:
description: Implements 'description'
type: string
type:
type: string
enum:
- array
- boolean
- integer
- 'null'
- number
- object
- string
enum:
description: Implements 'acceptedValues'
type: array
minItems: 1
items: {}
uniqueItems: true
format:
description: Complements implementation of 'type'
type: string
contentMediaType:
description: Implements 'mediaType'
type: string
maximum:
description: Implements 'range'
type: number
exclusiveMaximum:
description: Implements 'range'
type: number
minimum:
description: Implements 'range'
type: number
exclusiveMinimum:
description: Implements 'range'
type: number
pattern:
type: string
format: regex
maxItems:
description: Implements 'upperMultiplicity'
type: integer
minimum: 0
minItems:
description: Implements 'lowerMultiplicity'
type: integer
default: 0
minimum: 0
observedProperty:
type: string
observedPropertyURI:
type: string
format: uri
uom:
type: string
uomURI:
type: string
format: uri
links:
description: 'Links related to this layer. Possible link ''rel'' values are: ''geodata'' for a URL pointing to the collection of geospatial data.'
type: array
minItems: 1
items:
$ref: '#/components/schemas/link'
boundingBox:
allOf:
- description: 'Minimum bounding rectangle surrounding the tile matrix set, in the supported CRS'
- $ref: '#/components/schemas/2DBoundingBox'
centerPoint:
allOf:
- description: Location of a tile that nicely represents the tileset. Implementations may use this center value to set the default location or to present a representative tile in a user interface
- type: object
required:
- coordinates
properties:
coordinates:
type: array
minItems: 2
maxItems: 2
items:
type: number
crs:
allOf:
- description: Coordinate Reference System (CRS) of the coordinates
- $ref: '#/components/schemas/crs'
tileMatrix:
description: TileMatrix identifier associated with the scaleDenominator
type: string
scaleDenominator:
description: Scale denominator of the tile matrix selected
type: number
cellSize:
description: Cell size of the tile matrix selected
type: number
style:
allOf:
- description: Style involving all layers used to generate the tileset
- type: object
required:
- id
properties:
id:
description: An identifier for this style. Implementation of 'identifier'
type: string
title:
description: A title for this style
type: string
description:
description: Brief narrative description of this style
type: string
keywords:
description: keywords about this style
type: array
items:
type: string
links:
description: 'Links to style related resources. Possible link ''rel'' values are: ''style'' for a URL pointing to the style description, ''styleSpec'' for a URL pointing to the specification or standard used to define the style.'
type: array
minItems: 1
items:
$ref: '#/components/schemas/link'
license:
description: License applicable to the tiles
type: string
accessConstraints:
description: Restrictions on the availability of the Tile Set that the user needs to be aware of before using or redistributing the Tile Set
type: string
default: unclassified
enum:
- unclassified
- restricted
- confidential
- secret
- topSecret
keywords:
description: keywords about this tileset
type: array
items:
type: string
version:
description: Version of the Tile Set. Changes if the data behind the tiles has been changed
type: string
created:
allOf:
- description: When the Tile Set was first produced
- $ref: '#/components/schemas/timeStamp'
updated:
allOf:
- description: Last Tile Set change/revision
- $ref: '#/components/schemas/timeStamp'
pointOfContact:
description: Useful information to contact the authors or custodians for the Tile Set
type: string
mediaTypes:
description: Media types available for the tiles
type: array
items:
type: string
tileSet-item:
title: Tile Set Metadata item
description: A minimal tileset element for use within a list of tilesets linking to full description of those tilesets.
type: object
required:
- dataType
- links
- crs
properties:
title:
description: A title for this tileset
type: string
dataType:
allOf:
- description: Type of data represented in the tileset
- $ref: '#/components/schemas/dataType'
crs:
allOf:
- description: Coordinate Reference System (CRS)
- $ref: '#/components/schemas/crs'
tileMatrixSetURI:
description: 'Reference to a Tile Matrix Set on an offical source for Tile Matrix Sets such as the OGC NA definition server (http://www.opengis.net/def/tms/). Required if the tile matrix set is registered on an open official source.'
type: string
format: uri
links:
description: 'Links to related resources. A ''self'' link to the tileset as well as a ''http://www.opengis.net/def/rel/ogc/1.0/tiling-scheme'' link to a definition of the TileMatrixSet are required.'
type: array
items:
$ref: '#/components/schemas/link'
tileMatrixSet:
title: Tile Matrix Set Definition
description: 'A definition of a tile matrix set following the Tile Matrix Set standard. For tileset metadata, such a description (in `tileMatrixSet` property) is only required for offline use, as an alternative to a link with a `http://www.opengis.net/def/rel/ogc/1.0/tiling-scheme` relation type.'
type: object
required:
- crs
- tileMatrices
properties:
title:
description: 'Title of this tile matrix set, normally used for display to a human'
type: string
description:
description: 'Brief narrative description of this tile matrix set, normally available for display to a human'
type: string
keywords:
description: Unordered list of one or more commonly used or formalized word(s) or phrase(s) used to describe this tile matrix set
type: array
items:
type: string
id:
description: Tile matrix set identifier. Implementation of 'identifier'
type: string
uri:
description: Reference to an official source for this tileMatrixSet
type: string
format: uri
orderedAxes:
type: array
minItems: 1
items:
type: string
crs:
allOf:
- description: Coordinate Reference System (CRS)
- $ref: '#/components/schemas/crs'
wellKnownScaleSet:
description: Reference to a well-known scale set
type: string
format: uri
boundingBox:
allOf:
- description: 'Minimum bounding rectangle surrounding the tile matrix set, in the supported CRS'
- $ref: '#/components/schemas/2DBoundingBox'
tileMatrices:
type: array
description: Describes scale levels and its tile matrices
items:
description: ''
type: object
required:
- id
- scaleDenominator
- cellSize
- pointOfOrigin
- tileWidth
- tileHeight
- matrixWidth
- matrixHeight
properties:
title:
description: 'Title of this tile matrix set, normally used for display to a human'
type: string
description:
description: 'Brief narrative description of this tile matrix set, normally available for display to a human'
type: string
keywords:
description: Unordered list of one or more commonly used or formalized word(s) or phrase(s) used to describe this dataset
type: array
items:
type: string
id:
description: Identifier selecting one of the scales defined in the TileMatrixSet and representing the scaleDenominator the tile. Implementation of 'identifier'
type: string
scaleDenominator:
description: Scale denominator of this tile matrix
type: number
cellSize:
description: Cell size of this tile matrix
type: number
cornerOfOrigin:
description: 'The corner of the tile matrix (_topLeft_ or _bottomLeft_) used as the origin for numbering tile rows and columns. This corner is also a corner of the (0, 0) tile.'
type: string
enum:
- topLeft
- bottomLeft
default: topLeft
pointOfOrigin:
allOf:
- description: 'Precise position in CRS coordinates of the corner of origin (e.g. the top-left corner) for this tile matrix. This position is also a corner of the (0, 0) tile. In previous version, this was ''topLeftCorner'' and ''cornerOfOrigin'' did not exist.'
- $ref: '#/components/schemas/2DPoint'
tileWidth:
type: number
description: Width of each tile of this tile matrix in pixels
format: integer
minimum: 1
multipleOf: 1
tileHeight:
type: number
description: Height of each tile of this tile matrix in pixels
format: integer
minimum: 1
multipleOf: 1
matrixHeight:
type: number
description: Width of the matrix (number of tiles in width)
format: integer
minimum: 1
multipleOf: 1
matrixWidth:
type: number
description: Height of the matrix (number of tiles in height)
format: integer
minimum: 1
multipleOf: 1
variableMatrixWidths:
description: Describes the rows that has variable matrix width
type: array
items:
description: Variable Matrix Width data structure
type: object
required:
- coalesce
- minTileRow
- maxTileRow
properties:
coalesce:
description: Number of tiles in width that coalesce in a single tile for these rows
type: number
format: integer
minimum: 2
multipleOf: 1
minTileRow:
description: First tile row where the coalescence factor applies for this tilematrix
type: number
format: integer
minimum: 0
multipleOf: 1
maxTileRow:
description: Last tile row where the coalescence factor applies for this tilematrix
type: number
format: integer
minimum: 0
multipleOf: 1
tileMatrixSet-item:
title: Tile Matrix Set Item
description: A minimal tile matrix set element for use within a list of tile matrix sets linking to a full definition.
type: object
required:
- links
properties:
id:
description: 'Optional local tile matrix set identifier, e.g. for use as unspecified `{tileMatrixSetId}` parameter. Implementation of ''identifier'''
type: string
title:
description: 'Title of this tile matrix set, normally used for display to a human'
type: string
uri:
description: Reference to an official source for this tileMatrixSet
type: string
format: uri
crs:
allOf:
- description: Coordinate Reference System (CRS)
- $ref: '#/components/schemas/crs'
links:
description: Links to related resources. A 'self' link to the tile matrix set definition is required.
type: array
items:
$ref: '#/components/schemas/link'
tileMatrixLimits:
title: TileMatrixLimits
description: A resource describing useful to create an array that describes the limits for a tile set TileMatrixSet based on the OGC TileSet Metadata Standard
type: object
required:
- tileMatrix
- minTileRow
- maxTileRow
- minTileCol
- maxTileCol
properties:
tileMatrix:
type: string
minTileRow:
type: number
format: integer
minimum: 0
maxTileRow:
type: number
format: integer
minimum: 0
minTileCol:
type: number
format: integer
minimum: 0
maxTileCol:
type: number
format: integer
minimum: 0
2DPoint:
description: A 2D Point in the CRS indicated elsewhere
type: array
minItems: 2
maxItems: 2
items:
type: number
2DBoundingBox:
description: Minimum bounding rectangle surrounding a 2D resource in the CRS indicated elsewhere
type: object
required:
- lowerLeft
- upperRight
properties:
lowerLeft:
$ref: '#/components/schemas/2DPoint'
upperRight:
$ref: '#/components/schemas/2DPoint'
crs:
$ref: '#/components/schemas/crs'
orderedAxes:
type: array
minItems: 2
maxItems: 2
items:
type: string
enumeration:
type: object
required:
- type
- enum
properties:
type:
type: string
enum:
- enum
enum:
type: array
items:
type: string
all-collections:
type: string
enum:
- blueMarble
- 'NaturalEarth:raster:HYP_HR_SR_OB_DR'
- 'NaturalEarth:cultural:ne_10m_admin_0_countries'
- 'NaturalEarth:physical:bathymetry'
- SRTM_ViewFinderPanorama
- HRDEM-Ottawa
- HRDEM-RedRiver
styles:
type: string
enum:
- default
tileMatrixSets:
type: string
enum:
- WebMercatorQuad
- WorldCRS84Quad
- GNOSISGlobalGrid
- WorldMercatorWGS84Quad
parameters:
f-metadata:
name: f
in: query
description: 'The format of the response. If no value is provided, the accept header is used to determine the format. Accepted values are ''json'' or ''html''.'
required: false
schema:
type: string
enum:
- json
- html
style: form
explode: false
collectionId-all:
name: collectionId
in: path
description: Local identifier of a collection
required: true
schema:
$ref: '#/components/schemas/all-collections'
collections:
name: collections
in: query
style: form
description: 'The collections that should be included in the response. The parameter value is a comma-separated list of collection identifiers. If the parameters is missing, some or all collections will be included. The collection will be rendered in the order specified, with the last one showing on top, unless the priority is overridden by styling rules.'
required: false
explode: false
schema:
type: array
items:
$ref: '#/components/schemas/all-collections'
bbox:
name: bbox
in: query
description: |-
Only features that have a geometry that intersects the bounding box are selected. The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth):
* Lower left corner, coordinate axis 1 * Lower left corner, coordinate axis 2 * Minimum value, coordinate axis 3 (optional) * Upper right corner, coordinate axis 1 * Upper right corner, coordinate axis 2 * Maximum value, coordinate axis 3 (optional)
The coordinate reference system of the values is WGS 84 longitude/latitude (http://www.opengis.net/def/crs/OGC/1.3/CRS84) unless a different coordinate reference system is specified in the parameter `bbox-crs`.
For WGS 84 longitude/latitude the values are in most cases the sequence of minimum longitude, minimum latitude, maximum longitude and maximum latitude. However, in cases where the box spans the antimeridian the first value (west-most box edge) is larger than the third value (east-most box edge).
If the vertical axis is included, the third and the sixth number are the bottom and the top of the 3-dimensional bounding box.
If a feature has multiple spatial geometry properties, it is the decision of the server whether only a single spatial geometry property is used to determine the extent or all relevant geometries.
required: false
schema:
type: array
oneOf:
- minItems: 4
maxItems: 4
- minItems: 6
maxItems: 6
items:
type: number
format: double
style: form
explode: false
datetime:
name: datetime
in: query
description: |-
Either a date-time or an interval, half-bounded or bounded. Date and time expressions
adhere to RFC 3339. Half-bounded intervals are expressed using double-dots.
Examples:
* A date-time: "2018-02-12T23:20:50Z"
* A bounded interval: "2018-02-12T00:00:00Z/2018-03-18T12:31:12Z"
* Half-bounded intervals: "2018-02-12T00:00:00Z/.." or "../2018-03-18T12:31:12Z"
Only features that have a temporal property that intersects the value of
`datetime` are selected.
If a feature has multiple temporal properties, it is the decision of the
server whether only a single temporal property is used to determine
the extent or all relevant temporal properties.
required: false
schema:
type: string
style: form
explode: false
subset:
name: subset
in: query
description: |
Retrieve only part of the data by slicing or trimming along one or more axis
For trimming: {axisAbbrev}({low}:{high}) (preserves dimensionality)
An asterisk (`*`) can be used instead of {low} or {high} to indicate the minimum/maximum value.
For slicing: {axisAbbrev}({value}) (reduces dimensionality)
style: form
explode: false
required: false
schema:
type: array
items:
type: string
crs:
name: crs
in: query
description: reproject the output to the given crs
required: false
style: form
explode: true
schema:
type: string
bbox-crs:
name: bbox-crs
in: query
description: crs for the specified bbox
required: false
style: form
explode: true
schema:
type: string
subset-crs:
name: subset-crs
in: query
description: crs for the specified subset
required: false
style: form
explode: true
schema:
type: string
bgcolor:
name: bgcolor
in: query
description: 'Web color name or hexadecimal 0x[AA]RRGGBB color value for the background color (default to 0x9C9C9C gray). If alpha is not specified, full opacity is assumed.'
required: false
style: form
explode: false
schema:
type: string
default: '0xFFFFFF'
transparent:
name: transparent
in: query
description: Background transparency of map (default=true).
required: false
style: form
explode: false
schema:
type: boolean
default: true
width:
name: width
in: query
description: 'Width of the map in pixel. If omitted and height is specified, defaults to the width maintaining a 1:1 aspect ratio. If both width and height are omitted, the server will select a default dimensions.'
required: false
style: form
explode: false
schema:
type: integer
height:
name: height
in: query
description: 'Height of the map in pixel. If omitted and width is specified, defaults to the height maintaining a 1:1 aspect ratio. If both width and height are omitted, the server will select a default dimensions.'
required: false
style: form
explode: false
schema:
type: integer
f-map:
name: f
in: query
description: 'The format of the map response (e.g. png). Accepted values are ''png'', ''jpg'' or ''tiff'' (GeoTIFF).'
required: false
schema:
type: string
enum:
- png
- jpg
- tiff
style: form
explode: false
styleId:
name: styleId
in: path
description: An identifier representing a specific style.
required: true
allowEmptyValue: false
schema:
$ref: '#/components/schemas/styles'
styleId-collection:
name: styleId
in: path
description: An identifier representing a specific style.
required: true
allowEmptyValue: false
schema:
type: string
tileMatrix:
name: tileMatrix
in: path
description: |-
Identifier selecting one of the scales defined in the TileMatrixSet and representing the scaleDenominator the tile. For example,
Ireland is fully within the Tile at WebMercatorQuad tileMatrix=5, tileRow=10 and tileCol=15.
required: true
schema:
type: string
example: '5'
tileRow:
name: tileRow
in: path
description: 'Row index of the tile on the selected TileMatrix. It cannot exceed the MatrixWidth-1 for the selected TileMatrix. For example, Ireland is fully within the Tile at WebMercatorQuad tileMatrix=5, tileRow=10 and tileCol=15.'
required: true
schema:
minimum: 0
type: integer
example: 10
tileCol:
name: tileCol
in: path
description: 'Column index of the tile on the selected TileMatrix. It cannot exceed the MatrixHeight-1 for the selected TileMatrix. For example, Ireland is fully within the Tile at WebMercatorQuad tileMatrix=5, tileRow=10 and tileCol=15.'
required: true
schema:
minimum: 0
type: integer
example: 15
tileMatrixSetId:
name: tileMatrixSetId
in: path
description: Identifier for a supported TileMatrixSet
required: true
allowEmptyValue: false
schema:
$ref: '#/components/schemas/tileMatrixSets'
f-mapTile:
name: f
in: query
description: 'The format of the map tile response (e.g. png). Accepted values are ''png'', ''jpg'' or ''tiff'' (GeoTIFF).'
required: false
schema:
type: string
enum:
- png
- jpg
- tiff
style: form
explode: false
responses:
NotFound:
description: 'The requested resource does not exist on the server. For example, a path parameter had an incorrect value.'
content:
application/json:
schema:
$ref: '#/components/schemas/exception'
text/html:
schema:
type: string
NotAcceptable:
description: 'Content negotiation failed. For example, the `Accept` header submitted in the request did not support any of the media types supported by the server for the requested resource.'
content:
application/json:
schema:
$ref: '#/components/schemas/exception'
text/html:
schema:
type: string
ServerError:
description: A server error occurred.
content:
application/json:
schema:
$ref: '#/components/schemas/exception'
text/html:
schema:
type: string
InvalidParameter:
description: A query parameter has an invalid value.
content:
application/json:
schema:
$ref: '#/components/schemas/exception'
text/html:
schema:
type: string
Exception:
description: An error occured.
content:
application/json:
schema:
$ref: '#/components/schemas/exception'
text/html:
schema:
type: string
LandingPage:
description: |-
The landing page provides links to the API definition (link relation `service-desc`, in this case path `/api`),
to the Conformance declaration (path `/conformance`, link relation `conformance`), and to the Collections of geospatial data (path `/collections`, link relation `data`).
content:
application/json:
schema:
$ref: '#/components/schemas/landingPage'
example:
title: Buildings in Bonn
description: Access to data about buildings in the city of Bonn via a Web API that conforms to the OGC API Tiles specification.
links:
- href: 'http://data.example.org/'
rel: self
type: application/json
title: this document
- href: 'http://data.example.org/api'
rel: service-desc
type: application/vnd.oai.openapi+json;version=3.0
title: the API definition
- href: 'http://data.example.org/api.html'
rel: service-doc
type: text/html
title: the API documentation
- href: 'http://data.example.org/conformance'
rel: conformance
type: application/json
title: OGC API conformance classes implemented by this service
- href: 'http://data.example.org/collections'
rel: data
type: application/json
title: Information about the collections
text/html:
schema:
type: string
Conformance:
description: The URIs of all conformance classes supported by the server
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/confClasses'
example:
conformsTo:
- 'http://www.opengis.net/spec/ogcapi-common-1/1.0/conf/core'
- 'http://www.opengis.net/spec/ogcapi-common-1/1.0/conf/json'
- 'http://www.opengis.net/spec/ogcapi-common-1/1.0/conf/html'
- 'http://www.opengis.net/spec/ogcapi-common-1/1.0/conf/oas30'
- 'http://www.opengis.net/spec/ogcapi-common-2/1.0/conf/collections'
- 'http://www.opengis.net/spec/ogcapi-tiles-1/1.0/conf/core'
- 'http://www.opengis.net/spec/ogcapi-tiles-1/1.0/conf/tileset'
- 'http://www.opengis.net/spec/ogcapi-tiles-1/1.0/conf/tilesets-list'
- 'http://www.opengis.net/spec/ogcapi-tiles-1/1.0/conf/geodata-tilesets'
- 'http://www.opengis.net/spec/ogcapi-tiles-1/1.0/conf/dataset-tilesets'
- 'http://www.opengis.net/spec/ogcapi-tiles-1/1.0/conf/geodata-selection'
- 'http://www.opengis.net/spec/ogcapi-tiles-1/1.0/conf/jpeg'
- 'http://www.opengis.net/spec/ogcapi-tiles-1/1.0/conf/png'
- 'http://www.opengis.net/spec/ogcapi-tiles-1/1.0/conf/mvt'
- 'http://www.opengis.net/spec/ogcapi-tiles-1/1.0/conf/geojson'
- 'http://www.opengis.net/spec/ogcapi-tiles-1/1.0/conf/tiff'
- 'http://www.opengis.net/spec/ogcapi-tiles-1/1.0/conf/netcdf'
API:
description: The OpenAPI definition of the API.
content:
application/vnd.oai.openapi+json;version=3.0:
schema:
type: object
text/html:
schema:
type: string
Enumeration:
description: An enumerated list of valid string values for API parameters.
content:
application/json:
schema:
$ref: '#/components/schemas/enumeration'
text/html:
schema:
type: string
CollectionsList:
description: |-
The collections of (mostly geospatial) data available from this API. The dataset contains one or more collections. This resource provides information about and access to the collections. The response contains the list of collections. Each collection is accessible via one or more OGC API set of specifications, for which a link to relevant accessible resources, e.g. /collections/{collectionId}/(items, coverage, map, tiles...) is provided, with the corresponding relation type, as well as key information about the collection. This information includes:
* a local identifier for the collection that is unique for the dataset;
* a list of coordinate reference systems (CRS) in which data may be returned by the server. The first CRS is the default coordinate reference system (the default is always WGS 84 with axis order longitude/latitude);
* an optional title and description for the collection;
* an optional extent that can be used to provide an indication of the spatial and temporal extent of the collection - typically derived from the data;
* for collections accessible via the Features or Records API, an optional indicator about the type of the items in the collection (the default value, if the indicator is not provided, is 'feature').
content:
application/json:
schema:
$ref: '#/components/schemas/collections'
example:
links:
- href: 'http://data.example.org/collections.json'
rel: self
type: application/json
title: this document
- href: 'http://data.example.org/collections.html'
rel: alternate
type: text/html
title: this document as HTML
- href: 'http://schemas.example.org/1.0/buildings.xsd'
rel: describedby
type: application/xml
title: GML application schema for Acme Corporation building data
- href: 'http://download.example.org/buildings.gpkg'
rel: enclosure
type: application/geopackage+sqlite3
title: Bulk download (GeoPackage)
length: 472546
collections:
- id: buildings
title: Buildings
description: Buildings in the city of Bonn.
extent:
spatial:
bbox:
- - 7.01
- 50.63
- 7.22
- 50.78
temporal:
interval:
- - '2010-02-15T12:34:56Z'
- null
links:
- href: 'http://data.example.org/collections/buildings/items'
rel: items
type: application/geo+json
title: Buildings
- href: 'http://data.example.org/collections/buildings/items.html'
rel: items
type: text/html
title: Buildings
- href: 'https://creativecommons.org/publicdomain/zero/1.0/'
rel: license
type: text/html
title: CC0-1.0
- href: 'https://creativecommons.org/publicdomain/zero/1.0/rdf'
rel: license
type: application/rdf+xml
title: CC0-1.0
text/html:
schema:
type: string
Collection:
description: |-
Information about a particular collection of (mostly geospatial) data available from this API. The collection is accessible via one or more OGC API set of specifications, for which a link to relevant accessible resources, e.g. /collections/{collectionId}/(items, coverage, map, tiles...) is contained in the response, with the corresponding relation type, as well as key information about the collection. This information includes:
* a local identifier for the collection that is unique for the dataset;
* a list of coordinate reference systems (CRS) in which data may be returned by the server. The first CRS is the default coordinate reference system (the default is always WGS 84 with axis order longitude/latitude);
* an optional title and description for the collection;
* an optional extent that can be used to provide an indication of the spatial and temporal extent of the collection - typically derived from the data;
* for collections accessible via the Features or Records API, an optional indicator about the type of the items in the collection (the default value, if the indicator is not provided, is 'feature').
content:
application/json:
schema:
$ref: '#/components/schemas/collectionInfo'
example:
id: buildings
title: Buildings
description: Buildings in the city of Bonn.
extent:
spatial:
bbox:
- - 7.01
- 50.63
- 7.22
- 50.78
temporal:
interval:
- - '2010-02-15T12:34:56Z'
- null
links:
- href: 'http://data.example.org/collections/buildings/items'
rel: items
type: application/geo+json
title: Buildings
- href: 'http://data.example.org/collections/buildings/items.html'
rel: items
type: text/html
title: Buildings
- href: 'https://creativecommons.org/publicdomain/zero/1.0/'
rel: license
type: text/html
title: CC0-1.0
- href: 'https://creativecommons.org/publicdomain/zero/1.0/rdf'
rel: license
type: application/rdf+xml
title: CC0-1.0
text/html:
schema:
type: string
Map:
description: A map image returned as a response.
content:
image/png:
schema:
type: string
format: binary
image/jpeg:
schema:
type: string
format: binary
image/tiff; application=geotiff:
schema:
type: string
format: binary
EmptyMap:
description: No data available for this map extent.
TileSetsList:
description: List of available tilesets.
content:
application/json:
schema:
type: object
required:
- tilesets
properties:
links:
type: array
items:
$ref: '#/components/schemas/link'
tilesets:
type: array
items:
$ref: '#/components/schemas/tileSet-item'
text/html:
schema:
type: string
TileSet:
description: Description of the tileset
content:
application/json:
schema:
$ref: '#/components/schemas/tileSet'
text/html:
schema:
type: string
MapTile:
description: A map tile image returned as a response.
content:
image/png:
schema:
type: string
format: binary
image/jpeg:
schema:
type: string
format: binary
image/tiff; application=geotiff:
schema:
type: string
format: binary
EmptyTile:
description: No data available for this tile.
TileMatrixSetsList:
description: List of tile matrix sets (tiling schemes).
content:
application/json:
schema:
type: object
properties:
tileMatrixSets:
type: array
items:
$ref: '#/components/schemas/tileMatrixSet-item'
text/html:
schema:
type: string
TileMatrixSet:
description: tile matrix set
content:
application/json:
schema:
$ref: '#/components/schemas/tileMatrixSet'