Frequently asked questions on coverages and coverage services. -- PeterBaumann
- 30 Jun 2014
WCS Extensions refer to WCS Core 2.0 - what about WCS 2.1?
all WCS 2.0 extensions apply equally to WCS 2.1, see the corresponding clarification in the WCS 2.1 Core specification. In other words: all WCS extension functionality work on CIS 1.1 coverages.
How to represent a 0-dimensional coverage?
What happens when all the CRS dimensions get sliced in a WCS request? How to encode the CIS/GMLCOV description?
As per CIS/GMLCOV, the domain set of a coverage cannot have 0 dimensionality: at least for the GML encoding, the //gml:domainSet/@dimension attribute shall be greater or equal than 1. There is no clear guidance on 0-D in the OGC standards,
The recommended solution
is to represent such a coverage by the single (atomic or composite) range value in the range set and an empty domain set
Example: See the rasdaman
WCS test oracle for 0-dimensional output rectified grids: browser:systemtest/testcases_services/test_wcs/oracle/18-get_coverage_0D.oracle
Are time intervals closed or open?
Discussion on the TC Discussion list
has confirmed that time intervals represent left-closed, right-open intervals, often written as [a:b). This maintains clean interval arithmetics, such as avoiding duplicate values when combining two adjacent intervals.
In its latest release, ISO 8601 seems to drop 24:00 as a valid timestamp as it is equivalent to 00:00 of the next day. This removes an ambiguity where two different notations indicated the same time.
How can I construct the URL of a CRS as needed for a coverage?
By definition, every coverage has one CRS attached; in case of a grid coverage, there is additionally the internal Cartesian coordinate system of the array representing the range set. Following OGC convention, every CRS is denoted as a URL (so that it can be resolved, ie: its definition can be looked up). There are several branches in the OGC CRS Resolver hosting CRSs, CSs, axes, etc. - see the resolver wiki
for details. In short, a CRS looks like this one: http://www.opengis.net/def/crs/EPSG/0/4326
. Where no predefined CRS exists - such as for higher-dimensional coverages - this can be composed from existing CRSs and axes, as described in the resolver wiki
- Note: CRSs are subject to the rules and constraints given by the CRS standard, ISO 19111 (which is identical to OGC Abstract Topic 2).