This page points to servers implementing drafts of the OGC API Records series.
Servers:
Clients:
Parsers/Encoders:
The following server implements a good portion of the current draft OpenAPI document for OGC API - Records. This is a very rough implementation and still needs quite a bit of work but feel free to play with it.
I have currently harvested a bunch of RADARSAT metadata and will shortly have harvested all the SENTINEL-1 metadata that is available on AWS.
Landing page:
API document:
Conformance Page:
List of catalogues:
Describe sentinel1cat catalogue:
Queryables:
Records:
The pygeoapi project implements most of the current OGC API - Records draft.
A sample instance is deployed using sample metadata records from the Dutch Nationaal georegister.
Landing page:
API document:
Conformance page:
List of catalogues:
Describe sample metadata records from Dutch Nationaal georegister
- https://demo.pygeoapi.io/master/collections/dutch-metadata
- https://demo.pygeoapi.io/master/collections/dutch-metadata?f=json
Queryables:
Records:
- https://demo.pygeoapi.io/master/collections/dutch-metadata/items
- https://demo.pygeoapi.io/master/collections/dutch-metadata/items?f=json&title=Luchtfoto%202015%20Almelo%20service
- https://demo.pygeoapi.io/master/collections/dutch-metadata/items?f=json&title=Luchtfoto%202015%20Almelo%20service&f=json
- https://demo.pygeoapi.io/master/collections/dutch-metadata/items?bbox=4,51,7,53
- https://demo.pygeoapi.io/master/collections/dutch-metadata/items?bbox=4,51,7,53&f=json
- https://demo.pygeoapi.io/master/collections/dutch-metadata/items?q=Natuurmeting
- https://demo.pygeoapi.io/master/collections/dutch-metadata/items?q=Natuurmeting&f=json
Single record:
- https://demo.pygeoapi.io/master/collections/dutch-metadata/items/554a799c-ed4e-4a8d-82f3-efb9c72247e4
- https://demo.pygeoapi.io/master/collections/dutch-metadata/items/554a799c-ed4e-4a8d-82f3-efb9c72247e4?f=json
This Esri Geoportal Server 2.6.4 public sandbox has now been extended with a work-in-progress implementation of the OGC Records API.
Landing page:
API document:
Conformance page:
List of catalogues:
Describe geoportal_264 catalogue:
- TODO - geoss.esri.com/ogcrecords/master
Queryables:
- TODO - geoss.esri.com/ogcrecords/collections/master/queryables
Records:
- https://geoss.esri.com/ogcrecords/collections/master/items
- https://geoss.esri.com/ogcrecords/collections/master/items/89ed638c5eed41df9fe25473677d9df4 - get individual item based on item identifier
GeoNetwork is a java/xml oriented catalogue application. As part of an ongoing effort, the GeoNetwork API component is extended to support OGC API Records. The work in progress is available at geonetwork/geonetwork-microservices#23.
GeoNetwork has a concept of sub-portals. In the OGC API Records implementation these subportals are available as collections of records. GeoNetwork uses an Elastic Search backend, supporting a configurable set of queryables. Records are available in various encodings, such as text/html, application/geo+json, application/dcat.ld+json, application/iso19139+xml, application/iso19115-3+xml, application/dublin-core+xml, application/datacite+xml, through the accept-header mechanism. The html encoding of records contains an embedded schema-org json-ld snippet to facilitate search engines. A Sitemap endpoint is available to notify the search engine of available records.
GeoNetwork supports basic authentication, but can also be set up with alternative authentication mechanisms to facilitate autorisation on subsets of records.
ldproxy supports (most of) the core/cql/json/html conformance classes of the current draft of OGC API Records.
A sample instance with enumerations and codelists from the data specification of the German mapping and cadastral authorities for topographic, cadastral, geodetic, land use and land cover data ("GeoInfoDok NEU") is available at https://demo.ldproxy.net/geoinfodok. Sample URLs are shown below, to override content negotiation use f=html
for HTML and f=json
for JSON.
Landing page:
API definition / documentation:
Conformance declaration:
List of collections (each enumeration or codelists is a collection):
Landing page of the AX_Gebaeudefunktion enumeration (building functions):
Queryables:
Response schema (not part of OGC API Records, JSON Schema only):
Records (enums in the AX_Gebaeudefunktion enumeration):
- https://demo.ldproxy.net/geoinfodok/collections/ax_gebaeudefunktion/items
- https://demo.ldproxy.net/geoinfodok/collections/ax_gebaeudefunktion/items?title=Brauerei
- https://demo.ldproxy.net/geoinfodok/collections/ax_gebaeudefunktion/items?theme.concept=DLM250
- https://demo.ldproxy.net/geoinfodok/collections/ax_gebaeudefunktion/items?theme.concept=DLKM%20(Grunddatenbestand)
- https://demo.ldproxy.net/geoinfodok/collections/ax_gebaeudefunktion/items?q=Tier
- https://demo.ldproxy.net/geoinfodok/collections/ax_gebaeudefunktion/items?q=DLM250,Tier
- https://demo.ldproxy.net/geoinfodok/collections/ax_gebaeudefunktion/items?filter=theme.concept='DLKM%20(Grunddatenbestand)'%20AND%20title%20LIKE%20'Wohn%'
Single record (enum):
pycsw is an OGC CSW server implementation written in Python. Implementation of OGC API - Records is a work in progress for pycsw.
Landing page:
Conformance page:
List of catalogues:
Describe sample metadata records from CSW CITE tests
Queryables:
Records:
- http://147.102.109.27:8000/collections/metadata:main/items
- http://147.102.109.27:8000/collections/metadata:main/items?filter=type%20=%20%22dataset%22
Single record:
OWSLib is an OGC Web Services client written in Python which also implements the evolving OGC API standards. See the documentation for example workflow.
pygeometa is a Python package to generate metadata for geospatial datasets. Supports OGC API - Records record metadata generation.