The Open Geospatial Consortium (OGC) is excited to announce that version 1.0 of CoverageJSON has been approved by the OGC Membership for adoption as an official OGC Community Standard. CoverageJSON enables the development of interactive visualizations that display and manipulate spatio-temporal data within a web browser.
The key design goals for CoverageJSON are simplicity, machine and human readability, and efficiency in the storage and use of complex data.
Coverages and collections of coverages can be encoded using CoverageJSON. Coverage data may be gridded or non-gridded, and data values may represent continuous values (such as temperature) or discrete categories (such as classes of land cover).
This OGC Community Standard was an outcome of the European Union project “Maximizing the Exploitation of Linked Open Data in Enterprise and Science” (MELODIES), which ran from 2013 to 2016, and was released under a Creative Commons 4.0 License by the University of Reading. There are several widely-used open source implementations and libraries available. Furthermore, CoverageJSON is one of the encodings supported by the OGC API – Environmental Data Retrieval Standard.
CoverageJSON is based on the popular JavaScript Object Notation (JSON), and provides an effective, efficient format that’s friendly to web and application developers and consistent with the OGC API family of Standards.
CoverageJSON supports the efficient transfer of usable quantities of data from big data stores to lightweight clients, such as browsers and mobile applications. This enables straightforward local manipulation of the data by scientists and other users.
The simplest and most common use-case is to embed all the data values of all variables in a Coverage object within the CoverageJSON document to create a self-contained, standalone, document that supports the use of very simple clients.
Another simple use case is to put data values for each variable (parameter) in separate array objects in separate CoverageJSON documents that are linked from a parent CoverageJSON object. This is useful for a multi-variable dataset, such as one with temperature, humidity, wind speed, etc., to be recorded in separate files. This allows the client to load only the variables of interest.
A sophisticated use case is to use tiling objects, where the data values are partitioned spatially and temporally, so that a single variable’s data values would be split among several documents. A simple example of this use case is encoding each time step of a dataset into a separate file, but the tiles could also be divided spatially, like a tiled map server implementation.
As with any OGC Standard, the OGC CoverageJSON Community Standard is free to download and implement. Interested parties can learn more about, view, and download the Standard from OGC’s CoverageJSON Community Standard Page.