Evolution of OGC API Features and INSPIRE Implementing Rules
Explore the transformation of web service standards to modern OGC APIs, leveraging OpenAPI and INSPIRE guidelines for download services. Discover the evolution of OGC standards and the compliance process to INSPIRE IR using OGC API features. Dive into metadata operations, spatial data sets, and download service capabilities.
Download Presentation
Please find below an Image/Link to download the presentation.
The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. Download presentation by click this link. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.
E N D
Presentation Transcript
OGC API OGC API - - Features Features Implementation of INSPIRE Implementing Rules for Download Services
Web of Data [ ] new OGC standards in work that leverage OpenAPI and are being characterized as anything from evolutionary to revolutionary [ ] We recognized that our existing web service standards (W*S) were in effect web APIs, but that modernizing their means of getting content to the web required a fairly fundamental change in underlying design. OGC Technology Trends by George Percivall OGC APIs and the evolution of OGC standards by Scott Simmons
Process OGC API Features standard Figure out how to be compliant to INSPIRE IR using OGC API - Features Updated Technical Guidance for Download Services INSPIRE Implementing Rules for Download Services flowline Document Process Data Annotation
Download Service (1) Download Service Metadata Operations Metadata Languages: response language supported languages Spatial Data Sets Metadata Get Download Service Metadata Language Provides all necessary information about the service, the available Spatial Data Sets, and describes the service capabilities. Language Spatial Data Set Identifier Coordinate Reference System Get Spatial Data Set Spatial Data Set See also Commission Regulation (EC) No 976/2009 of 19 October 2009 implementing Directive 2007/2/EC of the European Parliament and of the Council as regards the Network Services Allows the retrieval of a Spatial Data Set.
Download Service (2) Describe Spatial Data Set Language Spatial Data Set Identifier Spatial Objects description Returns the description of all the types of Spatial Objects contained in the Spatial Data Set. Link Download Service information about Download Service Allows the declaration, by a Public Authority or a Third Party, of the availability of a Download Service for downloading Spatial Data Sets or, where practicable, Spatial Objects, through the Member State s Download Service while maintaining the downloading capability at the Public Authority or the Third Party location. See also Commission Regulation (EC) No 976/2009 of 19 October 2009 implementing Directive 2007/2/EC of the European Parliament and of the Council as regards the Network Services
Direct Access Download Service Language Spatial Data Set Identifier Coordinate Reference System Query Spatial Objects Set Spatial Objects Set Metadata Get Spatial Object Allows the retrieval of Spatial Objects based upon a query. Describe Spatial Object Type Language Spatial Object Type Spatial Object Type description Returns the description of the specified Spatial Objects types. See also Commission Regulation (EC) No 976/2009 of 19 October 2009 implementing Directive 2007/2/EC of the European Parliament and of the Council as regards the Network Services
Principle 1 INSPIRE- specific extensions
Principle 2 Use OGC API Features as intended
Discussed issue: language support Language is a request parameter in all but one operations. Language From: Technical Guidance for the implementation of INSPIRE Download Services
Discussed issue: language support INSPIRE- specific extensions Includes: media type negotiation language negotiation character encoding negotiation Solution: HTTP content negotiation = process of selecting the best representation for a given response when there are multiple representations available From: OGC API - Features - Part 1: Core
Discussed issue: language support INSPIRE- specific extensions Includes: media type negotiation language negotiation character encoding negotiation Solution: HTTP content negotiation Please give me GeoJSON or GML, in Finnish, Danish or English. GET [URL] Accept: application/geo+json, application/gml+xml Accept-Language: fi,da,en 1 HTTP/1.1 200 OK Content-Type: application/geo+json Content-Language: en 2 Ok. I ve returned GeoJSON in English. Server PNG Icon found on PNG Repo is licensed under Creative Commons BY 4.0 Laptop PNG Icon found on PNG Repo is licensed under Creative Commons BY 4.0
Same principle language negotiation media type negotiation
Discussed issue: language support Content-Language apparently not used in the Registry. Please give me CSV, in Danish. 1 GET http://inspire.ec.europa.eu/theme Accept: text/csv Accept-Language: da HTTP/1.1 200 OK Content-Type: text/csv Vary: accept,accept-language 2 Ok. I ve returned CSV. I ve used the accept header and the accept-language header to determine what to return. Server PNG Icon found on PNG Repo is licensed under Creative Commons BY 4.0 Laptop PNG Icon found on PNG Repo is licensed under Creative Commons BY 4.0
Discussed issue: language support 1 Download Service Metadata Operations Metadata Languages: response language supported languages Spatial Data Sets Metadata Get Download Service Metadata Language Content-Language: xx Accept-Language: xx INSPIRE requirement to have this HTTP header for this operation ??? (other Download Service operation) Language
Discussed issue: language support INSPIRE implementing rules language (request): natural language requested for the response response language (response): natural language used in the Get Download Service Metadata response parameters supported languages (response): list of the natural languages supported by the Download Service RFC 7231 Accept-Language: set of natural languages that are preferred in the response Note: A request without any Accept-Language header field implies that the user agent will accept any language in response. Content-Language: natural language(s) of the intended audience for the representation Note: If no Content-Language is specified, the default is that the content is intended for all language audiences. Note: Multiple languages MAY be listed for content that is intended for multiple audiences. ???
Discussed issue: fine-grained access vs bulk access 2 Language Spatial Data Set Identifier Coordinate Reference System Get Spatial Data Set Spatial Data Set The whole Spatial Data Set. Discussion paper: Is it necessary to be able to retrieve the whole data set in one request to meet the INSPIRE legal requirements, or is it ok to page through the results? Data on the Web Best Practices: Individually accessing data over many retrievals can be cumbersome and, if used to reassemble the complete dataset, can lead to inconsistent approaches to handling the data.
Use OGC API Features as intended Discussed issue: fine-grained access vs bulk access From: OGC API - Features - Part 1: Core
Use OGC API Features as intended Discussed issue: fine-grained access vs bulk access
Discussed issue: Spatial Data Set Identifier 3 Spatial Data Set Identifier (3 operations) From: OGC API - Features - Part 1: Core Discussion paper: Each API provides access to one data set. Therefore, the spatial data set identifier does not need to be mapped.
Discussed issue: Spatial Object Type 4 Describe Spatial Object Type Language Spatial Object Type Spatial Object Type description language-neutral name INSPIRE requirements: a collection contains only one spatial object type a collection has as id the language-neutral name as specified in the legislation
Discussed issue: Spatial Object Type Response for: http://data.example.org/collections/NamedPlace INSPIRE requirements: a collection contains only one spatial object type a collection has as id the language-neutral name as specified in the legislation {"id": "NamedPlace", "title": "Named Places", "description": "INSPIRE GN NamedPlaces", "links": [ {"href": "http://data.example.org/collections/NamedPlace/items", "rel": "items", title": "Named Places", "type": "application/geo+json"}, {"href": "http://schemas.example.org/NamedPlace", "rel": "describedBy", title": "Named Place JSON schema", "type": "application/json"} ]}
Discussed issue: Spatial Object Type Where parameter Spatial Object Type is not provided, it shall be assumed that all types of Spatial Objects have been selected.
Modified process 5 Including or referring to an abstract test suite Updated Technical Guidance for Download Services OGC API Features standard Figure out how to be compliant to INSPIRE IR using OGC API - Features INSPIRE Implementing Rules for Download Services Executable Test Suite
IR too technology-specific 6 Download Service Metadata Operations Metadata Languages: response language supported languages Spatial Data Sets Metadata Get Download Service Metadata Language
IR too technology-specific Get Download Service Metadata Download Service Metadata Language HTTP GET / HTTP GET [URL API definition] Get Operations Metadata Operations Metadata Language Get Spatial Data Sets Metadata Spatial Data Sets Metadata Language HTTP GET /collections HTTP GET [URL data set metadata] HTTP language negotiation
Discussion 1. HTTP language negotiation: 1. Content-Language required for Get Download Service Metadata 2. Response parameter Supported Languages for Get Download Service Metadata 2. Bulk download 3. Request parameter Spatial Data Set Identifier 4. Spatial Object Type 5. Abstract and executable test suite 6. Technology-specific Implementing Rules 7. Next steps