Simple APIs for Spatial Data (OGC API - Features)
- 1. Simple APIs for Spatial Data
OGC API - Features
Easy to use Spatial Data
Sampo Savolainen, Spatineo
- 2. Geospatial sucks!
💩 Weird abbreviations: OGC, WFS, WFS-T, CSW, WMTS, GML, OWS,
WMS, WCS, WCPS, WPS, TRL, GUF, LAS, GRB, COG, TSML
💩 Indecipherable specifications (WFS 2.0.2 spec is 254 pages!)
💩 XML
💩 Coordinates that are not latitude and longitude - where on earth is
386368.59,6671646.12 ?
💩 MultiLineStrings? MultiPolygons? MultiSurfaces?
- 3. … it’s just not designed for everyone
These work great for professional software but make it difficult for
developers not in the field
Web apps, prototypes, data journalists & visualisation tools need
something else:
🐱 Easy instructions
🐱 RESTful APIs
🐱 JSON and GeoJSON
- 4. … but geospatial is great!
Geospatial is a universal dimension for data
🌍 Allows to combine different data sets
🌍 Tools and methods to correlate, analyse, and visualise data
🌍 Location can be a point, route, 3D object, or even just an address -
most data has a location one way or another
🌍 Available tools and platforms: Google Maps, OpenStreetMap,
Leaflet, Digitransit (reittiopas backend)
🌍 Context for applications (“where the user is at the moment”)
So how to benefit from this?
- 5. OGC API - Features
Upcoming, completely redesigned version of WFS (codename “WFS 3.0”).
OGC API - Features embraces OpenAPI 3.0 (ex Swagger) for providing
machine-readable service capabilities. OpenAPI enables a nice set of
development tools out-of-the-box.
JavaScript Object Notation (JSON) as the primary format for describing
functionality, data offerings, and feature data.
Compliant APIs are browser-accessible: HTML landing page for the
service, HTML encodings for data collections, API operations, and the
offered feature data.
- 6. Resource Oriented Data Access
GET /
Landing page (HTML):
GET /collections
Information about the collections of data offered:
GET /collections/{collectionId}/items?bbox=160.6,-55.95,-170,-25.89
Simple queries supported in the core standard:
GET /collections/{collectionId}/items/{featureId}
Each feature referenced with a simple permanent URL
- 7. Just another API
Key idea: An OGC API is just an API like anything else on the web
🌟 Any HTTP + JSON client can access OGC APIs
🌟 Easy integration into browser apps - no extra library necessary
🌟 Specialized clients can take advantage of advanced features
The API can include other functionalities as well: the same end-point
may offer both custom application specific functionalities and yet also
be a Features API.
- 8. Case:Simple Observation Features
Pilot (SOFP)
Proof-of-concept Features API server for delivering weather and air
quality observation and forecast data.
Define and test encodings for point observation and forecast data that
allow the data to be "put on a map" using existing Web GIS applications
and libraries.
Joint project between Spatineo, Vaisala and the Finnish Meteorological
Institute.
- 9. GeoJSON Observation Features
WFS does not define data models for the offered data. Data model &
encoding harmonization required for interoperability.
Issue: Need to share environmental observation data with a variety of
existing GIS client software (OpenLayers, GDAL & QGIS etc.), but
complex feature XML is not well supported in desktop GIS/Web GIS
client applications.
Solution: Define simpler encoding of the Observations & Measurements
(ISO 19156) data model in GeoJSON.
Proposed as an alternative encoding of O&M data in INSPIRE, future
OGC standardization options under discussion.
- 10. SOFP Features API Server
OGC API - Features
front-end
WFS 3.0 front-end
WFS 3.0 front-end
Data source 1
Data source 2
Data source 3
Back-end modules
sofp-core
Implemented using node.js
(high-performance server-side JavaScript
engine)
In the FMI weather service case, the
back-end uses the existing SmartMet
Server APIs behind the scenes.
The SOFP front-end server (sofp-core)
project is managed by Vaisala and open
sourced with the MIT license, see
https://github.com/vaisala-oss/sofp-core
- 22. Try It Out and Give Feedback
Live SOFP beta service: http://beta.fmi.fi/data/3/wfs/sofp/
Simple Observation Features data model
https://github.com/opengeospatial/omsf-profile
OGC API Hackathon: coverages, map tiles, processing.
Hosted by Ordnance Survey at the Geovation Hub, London on 20th &
21st June 2019 https://www.opengeospatial.org/OGCAPI_Hack2019
- 24. Inspire Helsinki 2019 Challenges
Event will be held in Helsinki October 22-24. Focus on spatial data, tools
and technologies. The event hosts four challenges and a number of
workshops.
🍩 Teams participating in the challenges work on their projects in
September - submission can be an idea, prototype, or data analysis
🍩 Challenge partners and organisers will support teams in September
🍩 Licenses to professional tools (ESRI ArcGIS, FME Platform)
🍩 Winners chosen at the event
🍩 Winning teams will get a trip to Dubrovnik + possible other prizes
The event is organized by the National Land Survey of Finland, the Ministry of Agriculture and
Forestry and supported by the Joint Research Centre of European Commission.
- 25. Commuting 2.0
Make planning the day-to-day commuting safer and more pleasant for
pedestrians, cyclers and other light traffic users using weather, air
quality and road condition data.
https://challenge.inspire-helsinki-2019.fi/commuting20.html
Challenge partners
- 26. By the Beautiful
Blue Danube
Discover alternative transport routings using the European waterways
and railways instead of road networks for increased efficiency and lower
the CO2 emissions.
https://challenge.inspire-helsinki-2019.fi/schonenBlauenDonau.html
Challenge partners
- 27. Find the best
seaside vacation
spot
Develop solutions to find the best location for a seaside vacation
depending on the interests and nature values ensuring sustainable
nature of the planned activities.
https://challenge.inspire-helsinki-2019.fi/seasideVacationSpot.html
Challenge partners
- 28. Let's make the
most out of
INSPIRE!
Figure out ways to improve how data is being delivered and encoded in
particular use cases (e.g. building a cross-border dataset, or using a
specific dataset in a particular software product).
Challenge partners
- 29. More information + team sign up
More information about the event at https://inspire-helsinki-2019.fi/
Challenge information and sign up
https://challenge.inspire-helsinki-2019.fi/
If you have any questions, go to https://spectrum.chat/inspire-helsinki/