National Weather Service United States Department of Commerce

Background on WCS Services and Profiles

The Open Geospatial Consortium (OGC) developed a Web Coverage Service Interface Standard (WCS) that defines Web-based retrieval of coverages. The WCS suite is organized as a Core, which every WCS implementation must support, and a set of extensions defining additional functionality. Furthermore, when a computer application targets a certain user group, we call it a profile of that group. Thus, application profiles establish domain-oriented "bundles" of the WCS Core.

The figure below details how the MetOcean Profile adds functionality to this WCS Core, with the WCS Core remaining unchanged.  Ultimately, the MetOcean Profile can be used as an international standard, because it builds upon the OGC's WCS Core, which is itself an international standard. It also shows that the MetOcean Profile incorporates all prior service extensions to the WCS Core (eg Interpolation and Scaling; these “extensions” to the WCS core are more generic in that they are not tailored to any one user group).

This figure also denotes that a profile is the method a specific user community adds new functionality through the use of “hooks”. The MetOcean Application meets the definition of a “profile” because not only does it build upon the WCS Core, but it is also designed to meet a certain group’s needs. In this case, that group is the meteorological and oceanographic user community. In theory, this can be applied to other disciplines outside of the MetOcean community as they add functionality. Furthermore, the MetOcean Application Profile is a joint collaboration between the UK Met Office and NWS.
 
 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

The Issues Surrounding Coverages:

Coverages are defined as "Phenomena that vary over geospatial domains". In meteorological terms, we can think of temperature as a coverage because it varies over geography (x,y), altitude (z), and time (t).  The MetOcean Profile represents a paradigm shift from traditional ways people think of coverages, such as temperature. We need to begin to think of a stack of 2 dimensional coverages (in the x/y plane) as one true 4 dimensional coverage, as shown in the figure below (x/y/z/t). For example, the whole atmosphere can now be depicted as a multidimensional simulation with meteorological properties (e.g. temperature, wind, and humidity). Coverages are no longer defined as these properties, but instead are defined by dimensions that can contain one or more of these properties. This allows sampling of the atmosphere as a true 4D object (hyper cube), along any of the 4 axes. In short, the MetOcean Profile will allow consumers the ability to not only extract 4D data over geography, time, and altitude, but also perform the extraction more efficiently and through complex patterns. All these data can now be easily represented and referenced using the MetOcean Profile. Moreover, use of the MetOcean Profile will allow users access to even higher dimensional (5D) weather characteristics, such as emergent forecast probability based on an ensemble forecast, which then can be used to understand the likelihood of certain weather conditions happening.

 

MetOcean Profile's Benefits to the WCS Core:


Background:

 

The WCS Core establishes basic spatial and temporal extraction. There are two types of subsetting, which can be combined.

1) Trimming extracts a sub-area of a coverage indicated by a bounding box; the result has the same dimension (i.e., number of axes) as the original coverage. 

2) Slicing performs a cut at the position indicated, thereby reducing the dimension of the result coverage.

Technically, WCS Core also establishes three request types, inline with the OGC Web Service definition:

  • GetCapabilities: delivers an XML-encoded description of service properties and the data holdings offered by the server inquired;
  • DescribeCoverage: delivers XML-encoded descriptions of coverages (such as their location in space and time);
  • GetCoverage: delivers a coverage (or part thereof), either as original data or processed, in some suitable data format.

 

The MetOcean Profile and how it extends WCS Core:

 

There are 3 main benefits to the WCS Core that the MetOcean Application Profile adds. Note, numbers 1 and 2 below address metadata returned from the GetCapabilities, DescribeCoverage, and DescribeCoverageCollection Request Operations. Number 3 addresses the actual retrieval of the coverage data.

 

New Terminology the Metocean Application Profile introduces (Groups and Collections):

 

Groups

 

  • Provide a hierarchical way of nesting "services"
  • Support Service End Points, allowing for a Fully Distributed System

Coverage Collections

 

 

  • A single, uniquely identified resources.
  • Return information on collections only, not each of individual member coverages

 

Benefit 1. New Data Structural Patterns in a GetCapabilities Response
 

  • Both Groups and Coverage Collections serve to organize and reduce the amount of service metadata returned in a GetCapabilities response which increases the efficiency of web services.

 

To showcase the new terminology and the first major benefit above, here is an example of a new hierarchical grouping pattern representing a new structural mapping in a GetCapabilities response:

 

 

Benefit 2. Describing a MetOcean Coverage as an Observational Type in a Describe Coverage Response

Current observations are used as input to mathematical models to create Forecast Simulators for weather, ocean, and climate which have properties to describe the spatial and temporal domain of the model. Therefore, it makes sense to denote the metadata for a MetOcean coverage using the Observations and Measurements (O&M) International Standards type in a Describe Coverage response.
 

Benefits

  • Supports links for references to WMO registers, thus supporting a controlled vocabulary and achieving both interoperability and extensibility
  • Uses common weather/oceanic vertical reference systems
  • Supports a mechanism for quality control using a Data Mask, which denotes at what forecast projection the data is valid
  • Through the use of cis:irregular grid, non-regular axes are enumerated to support time and vertical dimensions prevalent throughout the MetOcean community
     

Benefit 3. New Operations to Query MetOcean Data

These new operations are in response to the met-ocean communities needs, including the inability to perform operations like this on coverage data today. The new extraction/query methods build upon the aforementioned WCS Core trimming/slicing functionalities.
 

Complex Data Extraction

  • Derived/Developed from Multi Dimensionality and 4D Coverages

  • Drastically More Efficient: User retrieves only the data of interest.

 

Tailored to common MetOcean Data Shapes

  • More Explicit than WCS GetCoverage Operation (may extend the GetCoverage operation).

 

New GetCorridor Operation New GetPolygon Operation

-Extracts data along a path or trajectory, such as an airline
pathway

-Showcases the need for extracting data from a 4D object


-Extracts data for a specific area or volume

 

Working Prototype:

Samples of MetOcean Coverage Metadata Requests/Responses (Click on the Requests below to see the corresponding Responses)

 

GetCapabilities:


http://ws-sandbox.iblsoft.com/wafc/kwbc?SERVICE=WCS&VERSION=2.1.0&REQUEST=GetCapabilities
 

DescribeCoverageCollection:


http://ws-sandbox.iblsoft.com/wafc/kwbc?SERVICE=WCS&VERSION=2.1.0&REQUEST=DescribeCoverageCollection&COVERAGECOLLECTIONID=KWBC_2017-03-21T06.00.00Z
 

DescribeCoverage:


http://ws-sandbox-ie.iblsoft.com/wafc/kwbc?SERVICE=WCS&VERSION=2.1.0&REQUEST=DescribeCoverage&COVERAGEID=KWBC_2017-03-21T06.00.00Z_ISBL

 

Showcasing the Benefits of the MetOcean Application Profile:

 

A Global Forecast System (GFS) model case study comparing WCS 2D/4D coverages with and without the MetOcean profile if a user wants to get information from one model run time

In order to demonstrate the value of the MetOcean Profile approach, we captured data from the GFS model in a WCS and compared access with and without the MetOcean Profile.  Specifically, we counted the number of coverages returned with the conventional 2D model versus the 4D model provided by MetOcean.

 

Effect on GetCapabilities Reponse Doc (lists the coverages):

  • 2D: ~30,000 lines of XML
  • 4D: ~200 lines of XML

Effect on GetCoverage Request Number:

  • 2D: User makes 10,000 requests
  • 4D: User makes 6 requests


We can see that there is a massive reduction in the amount of Metadata returned in a GetCapabilities Response. There is also a massive reduction in the amount of data requests a user has to make. Thus, the case study showcases the web service resource savings (both bandwidth and size). From a “Big Data” perspective, we can discern the efficiencies gained with data request on higher dimensional weather data.

 

Future Plans:

  • Multi-slicing and trimming with a single "GetCoverage" operation will allow extraction of Multi pts/cross sections from one GetCoverage operation.
  • Standardize the MetOcean CRS vertical levels, etc based on the WMO standards.
  • Add formal extension for GetCorridor & GetPolygon
  • Investigate adding a pub/sub model for offering subscription service.
  • Explore adding data formats with metadata.
  • Explore encoding coverages on JSON (CovJSON) in addition to XML.
  • Add support for 5D ensemble members.
  • Incorporate MetOcean DWG requests/comments.