Earth:Web Coverage Service

From HandWiki

The Open Geospatial Consortium Web Coverage Service Interface Standard (WCS) defines Web-based retrieval of coverages – that is, digital geospatial information representing space/time-varying phenomena.

Overview

A WCS provides access to coverage data in forms that are useful for client-side rendering, as input into scientific models, and for other clients. The WCS may be compared to the OGC Web Feature Service (WFS) and the Web Map Service (WMS). As with WMS and WFS service instances, a WCS allows clients to choose portions of a server's information holdings based on spatial constraints and other query criteria.

Unlike OGC Web Map Service (WMS), which portrays spatial data to return static maps (rendered as pictures by the server), the Web Coverage Service provides available data together with their detailed descriptions; defines a rich syntax for requests against these data; and returns data with its original semantics (instead of pictures) which may be interpreted, extrapolated, etc., and not just portrayed.

Unlike OGC Web Feature Service (WFS), which returns discrete geospatial features, the Web Coverage Service returns coverages representing space/time-varying phenomena that relate a spatio-temporal domain to a (possibly multidimensional) range of properties. As such, WCS focuses on coverages as a specialized class of features and, correspondingly, defines streamlined functionality.

WCS uses the coverage model of the OGC GML Application Schema for Coverages.[1] Thus, WCS supports all coverage types supported by said Application Schema; it is not constrained to quadrilateral grid coverages like previous WCS versions.

WCS Core, Extensions, and Application Profiles

WCS Suite: Logical View
WCS Suite: Logical View

The WCS suite is organized as a Core, which every WCS implementation must support, and a set of extensions defining additional functionality. Implementers can choose which extension to support, but there are some basic rules to be obeyed - for example, every WCS implementation must support at least one communication protocol and at least one data encoding format. To ease overview, extensions have been grouped along five categories: data model, encodings, service model, protocols, and usability. Application Profiles, finally, establish domain-oriented "bundles" of the WCS Suite. Some of these specifications are briefly presented below.

Adopted WCS standards are available from the OGC WCS page.[2]

WCS Core

WCS trim and slice
WCS trim and slice

The WCS Core establishes basic spatial and temporal extraction. There are two types of subsetting, which can be combined: 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. Slicing performs a cut at the position indicated, thereby reducing the dimension of the result coverage.

Technically, WCS Core 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.

WCS Protocol Extensions

WCS requests and responses can make use of one of the following protocols:

  • GET/KVP: using the HTTP GET protocol for sending key-value pair (KVP) encoded requests and receiving XML metadata and binary coverage data.
  • POST/XML: using the HTTP POST protocol for transferring XML data and binary coverage data.
  • SOAP/XML: using the SOAP protocol for transferring XML data and binary coverage data.

WCS Format Extensions

WCS format encodings allow to deliver coverages in various data formats, such as GML, GeoTIFF, HDF-EOS, CF-netCDF or NITF.

WCS Range Subsetting

Range subsetting (not to be mixed up with the (domain) subsetting of the WCS Core) allows extracting components from structured cells ("pixels", "voxels") of a coverage. Cells are structured if they contain several components, such as the three components red, green, and blue in color images.

For example, from a 7-band Landsat satellite image a range subsetting request may extract the near-infrared, red, and green range components ("bands", "channels"). The geospatial extent is unchanged, that is: "pixels" from all the coverage's locations get delivered.

WCS-T Extension

WCS-T (T standing for transactional) establishes how to upload complete coverages to a server or modify existing coverages on a server.

WCS Processing Extension

Web Coverage Processing Service (WCPS) defines flexible ad-hoc processing and filtering on coverage sets. This is an abstract query language (like SQL and XQuery) that is independent from any other OGC service standard. The WCS Processing Extension establishes linkage of WCPS into the WCS suite, introducing an additional request type, ProcessCoverages, which accepts a WCPS query string and returns a list of response items resulting from server-side WCPS evaluation.

WCS CRS Extension

The forthcoming WCS Coordinate System Extension allows retrieving coverages in Coordinate Reference Systems (CRSs) different from the Native CRS in which the coverage is stored on the server - in other words, it allows reprojection.

Software support for WCS

OGC Compliance Testing

OGC provides the free, open-source Compliance and Interoperability Test Engine (CITE) [3] to determine compliance of a particular implementation with a given OGC specification. A list of all specification tests made available by OGC can be found on the OGC compliance page.[4]

WCS Implementations

Implementations where OGC officially acknowledges compliance can be found on the authoritative OGC page.[5] See also the discussion "compliant vs implementing".[6]

This below is an unofficial, not checked, and not OGC endorsed list of software that supports WCS as a client and/or server:

  • WCS 2.0:
    • Rasdaman[7] - server and client (read/write); adopted OGC Reference Implementation[8] for WCS 2.0.1 Core, Reference Implementation for Web Coverage Processing Service
    • MapServer - server[9]
    • EOxServer
    • GeoServer
    • PYXIS Studio - Free client integrates multiple sources of data on a hexagonal discrete global grid [10]
    • IBL "Moving Weather" and "Visual Weather" - also implements WCS MetOcean Application Profile draft[11]
    • RSI OPS GIS
    • ESRI ArcGIS 10.3
    • OPenDAP
    • Pyxis
    • OpenLayers - client
  • WCS 1.x:
    • GeoServer - reference implementation server for WCS 1.x (serve WCS)
    • PIXIA Corp'sHiPER LOOK
    • APOLLO - server and client[12]
    • GDAL - client (read)[13]
    • Geomatica Web Server Suite - client and server[14]
    • GeoMedia - client (read WCS) and server (GeoMedia WebMap)
    • gvSIG - client (read WCS)
    • ArcGIS Server - server and client[15]
    • Luciad - LuciadLightspeed and LuciadFusion server and client [16]
    • PYXIS Studio - Free client integrates multiple sources of data on a hexagonal discrete global grid [17]
    • CARIS Spatial Fusion Enterprise - server and client[18]
    • Unidata TDS (THREDDS OPeNDAP data server) - server
    • QGIS - client (supports both version 1.0 and 1.1)
    • TerraPixel Streamap Engine

See also

References

  1. https://portal.opengeospatial.org/files/?artifact_id=48553 OGC GML Application Schema for Coverages, OGC 09-146r1
  2. OGC Web Coverage Service standard document download
  3. Compliance and Interoperability Test Engine (CITE)
  4. OGC Compliance Testing
  5. http://www.opengeospatial.org/resource/products/compliant OGC list of compliant products
  6. FAQ: compliant vs implementing
  7. rasdaman - free and open-source Big Array Data Analytics server, including Web client toolkit (raswct)
  8. OGC Network: Web Coverage Service
  9. "MapServer WCS Server". http://mapserver.org/ogc/wcs_server.html. 
  10. "PYXIS Studio". https://www.pyxisinnovation.com/. 
  11. "OGC TWiki WCSMetOcean". http://external.opengeospatial.org/twiki_public/CoveragesDWG/WcsMetoc. 
  12. "ERDAS APOLLO". Archived from the original on 2011-04-06. https://web.archive.org/web/20110406064450/http://www.erdas.com/products/ERDASAPOLLO/ERDASAPOLLO/Details.aspx. 
  13. "GDAL Web Coverage Service". http://gdal.org/frmt_wcs.html. 
  14. "PCI Geomatics’ Web Coverage Server successfully passes compliancy testing". Archived from the original on 2012-10-22. https://web.archive.org/web/20121022101751/http://www.pcigeomatics.com/pressnews/2008_PCI_webtest.html. 
  15. "ESRI ArcGIS Server". http://www.esri.com/software/arcgis/arcgisserver/index.html. 
  16. "Hexagon Geospatial Products" (in en). https://www.hexagongeospatial.com/products. 
  17. "PYXIS Studio". https://www.pyxisinnovation.com/. 
  18. "CARIS Spatial Fusion Enterprise". http://www.caris.com/products/sfe/.