Web Coverage Service

From Wikipedia, the free encyclopedia
Jump to: navigation, search

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[edit]

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) [4] and the Web Map Service (WMS) [5]. As 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[edit]

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[edit]

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[edit]

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[edit]

WCS format encodings allow to deliver coverages in various data format, such as GML, GeoTIFF, HDF-EOS, or NITF. As of July 2012, not all specifications are already adopted standards, but under development in OWS-9[3] with an expected publication for comment in January 2013.

WCS Range Subsetting[edit]

Range subsetting (not to be mixed up with the (domain) subsetting of the WCS Core) allows to extract 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[edit]

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[edit]

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[edit]

The forthcoming WCS Coordinate System Extension allows to retrieve 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[edit]

OGC Compliance Testing[edit]

OGC provides the free, open-source Compliance and Interoperability Test Engine (CITE) [4] 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.[5] As of August 2013, the WCS Core CITE test has been implemented and passed by rasdaman.

WCS Implementations[edit]

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

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[8] - server and client (read/write); adopted OGC Reference Implementation[9] for WCS 2.0.1 Core, Reference Implementation for WCPS
    • MapServer - server[10]
    • PYXIS WorldView - Free client integrates multiple sources of data on a hexagonal discrete global grid [11]

See also[edit]

References[edit]