OGC APIs and the evolution of OGC standards
By now many of you have heard about new OGC standards in work that leverage OpenAPI and are being characterized as anything from evolutionary to revolutionary. I’d like to give you a few minutes’ read to explain these exciting developments in OGC.
The work is not really all that new: OGC members and staff have been investigating OpenAPI (and its commercial equivalent, Swagger) in a concentrated way since 2016. 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. Two documents really provided the initial energy to get serious about redesign: the OGC Open Geospatial APIs White Paper, edited by George Percivall, and the Spatial Data on the Web Best Practices, jointly developed by OGC and W3C. These documents highlighted how geospatial data should be more native to the web. Further, OGC staff were working on “implementer-friendly” views of our standards and experimented with an OpenAPI definition for the Web Map Tile Service (WMTS) and we became aware of work by the United Kingdom Hydrographic Office (UKHO) to publish OpenAPI definitions for OGC Web Map Service (WMS) of Electronic Navigational Charts.
But perhaps the most important impact was the leap of the OGC Web Feature Service (WFS) and Filter Encoding Service (FES) team (WFS/FES Standards Working Group, aka, WFS/FES SWG) who rebuilt the WFS standard with an integrated OpenAPI definition as core to description of how to build against the standard. Clemens Portele and Panagiotis (Peter) Vretanos developed a major draft revision to the standard (then known as WFS3) and a group of developers tested the concepts and improved the content through a two day Hackathon in 2018. This work can be reviewed on GitHub.
Other OGC web service SWGs have been independently assessing OpenAPI and watching the WFS/FES SWG work closely. Numerous discussions occurred at OGC quarterly Technical Committee (TC) Meetings to consider those elements being developed in each SWG which should be common to all web API standards. These discussions came to a head at the February 2019 TC Meeting in Singapore, where a series of working group meetings and common sessions for the whole TC Membership reinforced the desire to work on a common framework for many OGC web standards and to develop a nomenclature for labeling these standards. Thus, the pattern “OGC API - [resource]” was coined. The discussions in Singapore also resulted in the planning of an OGC API Hackathon to define and test common elements from Coverages, Map Tiles, and Processing standards work using foundational material from the Features work. The hackathon is hosted by the Ordnance Survey at the Geovation Hub in London, UK from 20 - 21 June 2019. The output of this hackathon should lead to a solid, common core and advancement of a whole new generation of OGC standards that are flexible in modern IT environments.
So why am I so excited about these developments? OGC members have worked hard to develop a number of popular standards for getting geospatial content to the web. Those standards have had remarkably long lives, but were not always developed or revised in concert. We now are taking the initiative to work across disciplines in the OGC to get the next generation of these standards aligned early in their development and sufficiently modular to maximize their flexibility. Further, the use of OpenAPI makes it much easier for developers to implement the standards as requirements are defined in YAML or JSON, not just text. OpenAPI allows easy implementation in a number of languages and patterns and has proven very simple to use in creating RESTful implementations. Personally and as a non-developer, I think it looks enough like pseudocode that even I could hack something together!
You can get involved in many ways. Visit ogcapi.org for the latest info. Participate in the next OGC Member Meeting. Watch the activities of the various SWGs (some are open to the public through GitHub: see the references at the bottom of the OGC API Hackathon page). Follow the OGC Blog as more information will appear in the coming months. Or reach out directly to OGC for more information. Expect some of the OGC API standards to start being approved and published this year - You can monitor their progress using the OGC Standards Roadmap.