INSPIRE Download Services

Author

Paul van Genuchten

Published

November 10, 2022

Download services facilitate the download of vector, grid or sensor data.

If you missed the initial EJP Training on Soil data good practices, you can still have a look at a presentation about download services as Coverage and SensorThings or a presentation on Atom/WMS/WFS.

Setting up download services is an aspect of step 6) data and info sharing in the soil information workflow.

This page lists some implementation options for providing INSPIRE Download Services.

Minimal

The INSPIRE Atom Service provides a minimal download service implementation on a series of downloadable files placed in a web accessible folder. For every file a ‘dataset feed’ document can be generated and linked to a service feed describing the ‘service’. A metadata record points to the service feed to complete the implementation.

Alternatively, products like GeoNetwork and Hale Connect (Annex 1) can provide an Atom interface on top of a set of registered datasets. The TG download services also provides some PHP scripts which create an Atom OpenSearch interface for a series of files.

Cookbook Software Description
Webdav Wsgidav Setting up atom service using webdav
Zenodo zenodo Data publication on Zenodo

Traditional

Web Feature Service (WFS) and Web Coverage Service (WCS) are commonly used to download Featurecollections (vector) and Coverages (grids). Consider that most of the INSPIRE themes (including soil) require publication of hierarchical (app-schema) features, this aspect is not supported by many WFS server implementations. Some tools with this capability are listed in the table below. For WCS a good practice is available to facilitate implementation.

Cookbook Software Description
GeoServer GeoServer The app-schema plugin extends the WFS implementation with support for hierarchical features. On the fly transformation is managed from a configuration file. Marcus Sen (Onegeology) create a cookbook for this approach.
Get started with Hale Connect Hale Connect Optimized for performance, stores pregeneralised xml fragments in combination with an elastic search index for filtering
deegree deegree A java based spatial application server
Coverages with rasdaman Rasdaman A Web Coverage Service implementation
SensorThings API via FROST server FROST server Soil observation data as sensor stream

Consider that a product advertising WFS support does not automatically qualify for INSPIRE, the product has to support hierarchical GML.

Experimental

A good practice document has been adopted on the use of OGC API Features as download service. With its 20 years of history WFS and GML are out of synch with current IT practices. OGC API is a new direction of standards within OGC adopting some of the latest IT conventions, such as Open API, Rest services, JSON encodings, content negotiation, etc. The use of OGC API will increase in coming years while OGC adopts more standards. Various products exist implementing the final and/or draft specifications.

As described in the harmonization paragraph, Sensor Observation Service and SensorThings API offer an alternative download option for themes including much observation data, such as Soil.

GraphQL and SPARQL are powerfull query api’s to request data over the web. Both have not gone through the proces of Good practice adoption. But they are serious candidates to provide a modern INSPIRE download service.

Cookbook Software Description
OGC API Features via pygeoapi pygeoapi A python based open source implementation of OGC APIs including OGC API Features. Configuration is managed from a configuration file.
Proxy a WFS as OGC API Features using LDProxy ldproxy A java based open source implementation of OGC APIs. Originally developed by Interactive Instruments as an easy way to consume API (proxy) on top of existing WFS. These experiments were a main driver for OGC in the direction of OGC API. Configuration is managed from a web interface.
Soil data via GraphQL Postgraphile Soil data from a postgres database via graphQL