Grid Topologies
Introduction
This page tries to inspect many of the different types of N-dimensional (spatiotemporal) gridded coverage topologies that could be stored in rasdaman
, accompanying every case with GML Web Coverage Service (WCS) responses upon both trimming and slicing.
Despite some cases might rarely have a practical real-world example, here we want to give examples for as many allowed geometries as possible.
Slicing on a certain CRS axis means that its knowledge is removed in the output result, so that the dimensionality of the CRS gets decreased for each slicing appearing in the WCS request. However, this does not mean that the grid dimensionality gets decreasead as well: N-D grids can span an (N+M)-D CRS space, having (M≥0), so as long as the grids can exist in the sliced space, their dimensions will not be reduced.
When a CRS is sliced on each of its defined axes, then it can be safely removed from the output description. However, a CRS might be partially sliced on a subsets of the axes it defines, hence this prompts the issue of defining a CRS URI nomencalture to specify that only certain axes are considered within that CRS definition. Still the issue is open, so by now we will propose an interim solution: e.g. if slicing on longitude is applied on a WGS84 geographic 3D CRS (e.g. EPSG:4327, axes Lat
, Long
and h
), then we will identify the sliced CRS as http://rasdaman.org:8080/def/crs/EPSG/0/4326?axes='Lat,h'
.
All responses will highlight the domainSet
of each coverage, which will all translate to some gml:Grid rectified or referenceable subtype.
We will assume that warped grid will be described via ReferenceableGridByArray
, although an alternative description via origin, offset vectors and matrices of coefficients is also possible.
In case of mixed rectilinear/curvilinear geometries, a non-standard so-called ReferenceableGridByArrayAndVectors
type [1] will be used, for a more compact and convenient GML description. Coefficients in a ReferenceableGridByVector
are also kept optional, to allow mixing of regularly and irregularly spaced axis in a same geometry (see again [1]).
It should be noted that in some examples the type of the geometry gets simplified from a referenceable to a rectified grid (e.g. see case 2a-ITS). This might happen that trimming or slicing would extract a part of the whole grid with simpler geometry indeed (think of a time slice in an irregular time series of regularly gridded images). Geometry simplification is not mandatory however, nor it is prescribed by WCS standard. A regular grid can always we described via a ReferenceableGridBy* GML type.
When determining which CRS type should be bound to a certain coverage, the term SpatialCRS
will mean any Earth or Planetary (or Image) related CRS, like VerticalCRS
, GeographicCRS
, ProjectedCRS
, etc. See GML 3.2.1 (OGC 07-036) for more info on the available CRS types.
Finally, we will assume that all the time series will be referenced by the daily-resolution (UoM=days [d]) ANSI-Date CRS along the temporal dimension, which (by default) has a t
positive-onwards axis.
By default the composition order of spatiotemporal CRSs here is first space, then time; this however is not required at all.
NB. The axes labels expressed in the geometric domain of a coverage are the labels of the coverage axes, which here will be labelled as increasing numbers (0, 1, 2, ...)
, by default. Indeed, they are independent from the axes labels of its CRS, which are instead used in the WCS GetCoverage requests.
Abbreviations:
GML
: Geographic Markup LanguageCRS
: Coordinate Reference SystemSO
: Single objectRTS
: Regular Time SeriesITS
: Irregular Time SeriesMRTS
: Moving Regular Time SeriesMITS
: Moving Irregular Time Series
[1] P. Campalani, A. Beccati, and P. Baumann. Improving Efficiency of Grid Representation in GML, 2013. EnviroInfo'13.
Topologies Index
Due to the high number of possible cases, hereinafter we propose a first main table for global view which puts purely-spatial types of topology per row, which can then be repeated, or evolve, in time with or without regular time steps (columns).
Each cell then links to a dedicated subsection with the GML descriptions (assume default namespace is "gml
").
In the 1D case, it is also clear how the gridded coverages can cover datasets which are not usually associated with the concept of grids (e.g. trajectories)
id | description | dim | SO | RTS | ITS | MRTS | MITS | |
1 | Temporal series of data with no spatial reference | 1D | —- | link | link | —- | —- | |
2 | Point measurements (with spatial reference) on a straight line … | 1D | ||||||
2a | … parallel to a CRS axis (2D space) | " | link | link | link | link | link | |
2b | … diagonal wrt CRS axes (in 2D space) | " | link | link | link | link | link | |
2c | … diagonal wrt CRS axes (in 3D space) | " | link | link | link | link | link | |
2d | … diagonal in 3D space with irregular spacing | " | link | link | link | link | link | |
3 | Point measurements (with spatial reference) on a curvilinear line … | 1D | ||||||
3a | … in the 2D space | " | link | link | link | link | link | |
3b | … in the 3D space | " | link | link | link | link | link | |
4 | Gridded geo-image in the 2D space … | 2D | ||||||
4a | … with regular spacing, aligned with CRS axes | " | link | link | link | link | link | |
4b | … with regular spacing, and rotation | " | link | link | link | link | link | |
4c | … with irregular spacing, and rotation | " | link | link | link | link | link | |
4d | … with curvilinear axes (warped grid) | " | link | link | link | link | link | |
4e | … warped grid, and 2 (real+simulation) time axes | " | —- | link | link | link | link | |
5 | Gridded geo-image in the 3D space (oblique plane) … | 2D | ||||||
5a | … with regular spacing | " | link | link | link | link | link | |
5b | … with irregular spacing | " | link | link | link | link | link | |
5c | … with curvilinear axes (warped grid) | " | link | link | link | link | link | |
6 | Gridded 3D geo-cubes … | 3D | ||||||
6a | … with regular spacing | " | link | link | link | link | link | |
6b | … with regular XY spacing, but irregular heights | " | link | link | link | link | link | |
6c | … with irregular XYH spacing | " | link | link | link | link | link | |
6d | … with curvilinear axes (warped cube) | " | link | link | link | link | link | |
6e | … warped cube, and 2 (real+simulation) time axes | " | —- | link | link | link | link |
Examples
Case 1
1D TEMPORAL SERIES OF ASPATIAL DATA.
This section covers time series of point observations with no spatial reference (or where the spatial reference was not considered relevant): in this case the only distinction is whether there is a regular time step between observations, or not. In its degenerate case, the series turns to a single point.
(Attach a scan of the sketches here with all types in this subcategory?)
1-RTS
GML coverage type | GML domainSet | native CRS | CRS dim |
RectifiedGridCoverage | RectifiedGrid | TemporalCRS | 1D |
- WCS trimming:
...subset=t("2013-01-21","2013-04-25")...
<domainSet> <RectifiedGrid id="1-RTS_t" dimension="1" uomLabels="d" srsDimension="1" srsName="http://rasdaman.org:8080/def/crs/OGC/0/AnsiDate"> <limits> <GridEnvelope> <low>0</low> <high>4</high> </GridEnvelope> </limits> <axisLabels>0</axisLabels> <origin> <Point id="O"> <pos>150501</pos><!-- ANSI date for 2013-01-21 --> </Point> </origin> <offsetVector>1</offsetVector><!-- daily data --> </RectifiedGrid> </domainSet>
- WCS slicing:
...subset=t("2013-01-21")...
<domainSet> <!-- 0D geometry: slicing removes one dimension --> <RectifiedGrid id="1-RTS_s" dimension="0"> <limits> <GridEnvelope> <low></low> <high></high> </GridEnvelope> </limits> <axisLabels></axisLabels> <origin> <Point id="O"> <pos></pos> </Point> </origin> <offsetVector></offsetVector> </RectifiedGrid> </domainSet>
1-ITS
GML coverage type | GML domainSet | native CRS | CRS dim |
ReferenceableGridCoverage | ReferenceableGridByVectors | TemporalCRS | 1D |
- WCS trimming:
...subset=t("2013-01-21","2013-04-28")...
<domainSet> <ReferenceableGridByVectors id="1-ITS_t" dimension="1" uomLabels="d" srsDimension="1" srsName="http://rasdaman.org:8080/def/crs/OGC/0/AnsiDate"> <limits> <GridEnvelope> <low>0</low> <high>4</high> </GridEnvelope> </limits> <axisLabels>0</axisLabels> <origin> <Point id="O"> <pos>150501</pos> </Point> </origin> <generalGridAxis> <GeneralGridAxis> <offsetVector>1</offsetVector> <coefficients>0 1 3 6 7</coefficients> <gridAxesSpanned>0</gridAxesSpanned> <sequenceRule axisOrder="+1">Linear</sequenceRule> </GeneralGridAxis> </generalGridAxis> </ReferenceableGridByVectors> </domainSet>
- WCS slicing:
...subset=t("2013-01-21")...
<domainSet> <!-- 0D geometry: slicing removes one dimension --> <ReferenceableGridByVectors id="1-ITS_s" dimension="0"> <limits> <GridEnvelope> <low></low> <high></high> </GridEnvelope> </limits> <axisLabels></axisLabels> <origin> <Point id="O"> <pos></pos> </Point> </origin> <generalGridAxis> <GeneralGridAxis> <offsetVector></offsetVector> <coefficients></coefficients> <gridAxesSpanned></gridAxesSpanned> <sequenceRule></sequenceRule> </GeneralGridAxis> </generalGridAxis> </ReferenceableGridByVectors> </domainSet>
Case 2
1D SPATIAL OBSERVATIONS ON A STRAIGHT LINE …
This section covers (time series of) point observations with spatial reference. In particular here we have a measurements which lie along a straight (and not curvilinear) line. Several sub-cases are covered, depending on the regular/irregular spacing between the points, the alignment of this line to one of the axes of the CRS, and the dimensionality of the encompassing space (i.e. the dimensionality of the CRS).
(Attach a scan of the sketches here with all types in this subcategory?)
Case 2a
… parallel to a CRS axis.
2a-SO
GML coverage type | GML domainSet | native CRS | CRS dim |
RectifiedGridCoverage | RectifiedGrid | SpatialCRS | 1D/2D |
- WCS trimming:
...subset=D(25,105)...
<domainSet> <RectifiedGrid id="2a-SO_t" dimension="1" uomLabels="metre" srsDimension="1" srsName="http://rasdaman.org:8080/def/crs/EPSG/0/5715"> <limits> <GridEnvelope> <low>0</low> <high>4</high> </GridEnvelope> </limits> <axisLabels>0</axisLabels> <origin> <Point id="O"> <pos>25</pos> </Point> </origin> <offsetVector>20</offsetVector> </RectifiedGrid> </domainSet>
- WCS slicing:
...subset=D(25)...
<domainSet> <!-- 0D geometry: slicing removes one dimension --> <RectifiedGrid id="2a-SO_s" dimension="0"> <limits> <GridEnvelope> <low></low> <high></high> </GridEnvelope> </limits> <axisLabels></axisLabels> <origin> <Point id="O"> <pos></pos> </Point> </origin> <offsetVector></offsetVector> </RectifiedGrid> </domainSet>
2a-RTS
GML coverage type | GML domainSet | native CRS | CRS dim |
RectifiedGridCoverage | RectifiedGrid | SpatialCRS+TemporalCRS | 2D/3D |
- WCS trimming:
...subset=D(25,105),subset=t("2013-01-06","2013-02-03")...
<domainSet> <RectifiedGrid id="2a-RTS_t" dimension="2" uomLabels="metre d" srsDimension="2" srsName="http://rasdaman.org:8080/def/crs-compound? 1=http://rasdaman.org:8080/def/crs/EPSG/0/5715& 2=http://rasdaman.org:8080/def/crs/OGC/0/AnsiDate"> <limits> <GridEnvelope> <low>0 0</low> <high>4 3</high> </GridEnvelope> </limits> <axisLabels>0 1</axisLabels> <origin> <Point id="O"> <pos>25 150486</pos> </Point> </origin> <offsetVector>20 0</offsetVector> <offsetVector> 0 7</offsetVector> </RectifiedGrid> </domainSet>
- WCS slicing:
...subset=D(25,105),subset=t("2013-01-06")...
<domainSet> <RectifiedGrid id="2a-RTS_s" dimension="1" uomLabels="metre" srsDimension="1" srsName="http://rasdaman.org:8080/def/crs/EPSG/0/5715"> <limits> <GridEnvelope> <low>0</low> <high>4</high> </GridEnvelope> </limits> <axisLabels>0</axisLabels> <origin> <Point id="O"> <pos>25</pos> </Point> </origin> <offsetVector>20</offsetVector> </RectifiedGrid> </domainSet>
2a-ITS
GML coverage type | GML domainSet | native CRS | CRS dim |
ReferenceableGridCoverage | ReferenceableGridByVectors | SpatialCRS+TemporalCRS | 2D/3D |
- WCS trimming:
...subset=D(25,105),subset=t("2013-01-06","2013-02-17")...
<domainSet> <ReferenceableGridByVectors id="2a-ITS_t" dimension="2" uomLabels="metre d" srsDimension="2" srsName="http://rasdaman.org:8080/def/crs-compound? 1=http://rasdaman.org:8080/def/crs/EPSG/0/5715& 2=http://rasdaman.org:8080/def/crs/OGC/0/AnsiDate"> <limits> <GridEnvelope> <low>0 0</low> <high>4 3</high> </GridEnvelope> </limits> <axisLabels>0 1</axisLabels> <origin> <Point id="O"> <pos>25 150486</pos> </Point> </origin> <generalGridAxis> <GeneralGridAxis> <!-- Regular axis in ReferenceableGrid: no coefficients (not official GML) --> <offsetVector>10 0</offsetVector> <gridAxesSpanned>0</gridAxesSpanned> </GeneralGridAxis> </generalGridAxis> <generalGridAxis> <GeneralGridAxis> <!-- Irregular spacing in time --> <offsetVector>0 7</offsetVector> <coefficients>0 1 3 6</coefficients> <gridAxesSpanned>1</gridAxesSpanned> <sequenceRule axisOrder="+1">Linear</sequenceRule> </GeneralGridAxis> </generalGridAxis> </ReferenceableGridByVectors> </domainSet>
- WCS slicing:
...subset=D(25,105),subset=t("2013-01-06")...
In this case the sliced geometry is regular, so we could either describe it viaRectifiedGrid
or, if we want to preserve the GML type of the whole coverage, as well as aReferenceableGridByVectors
.<domainSet> <RectifiedGrid id="2a-ITS_s" dimension="1" uomLabels="metre" srsDimension="1" srsName="http://rasdaman.org:8080/def/crs/EPSG/0/5715"> <limits> <GridEnvelope> <low>0</low> <high>3</high> </GridEnvelope> </limits> <axisLabels>0</axisLabels> <origin> <Point id="O"> <pos>25</pos> </Point> </origin> <offsetVector>10</offsetVector> </RectifiedGrid> </domainSet>
2a-MRTS
GML coverage type | GML domainSet | native CRS | CRS dim |
ReferenceableGridCoverage | ReferenceableGridByArrayAndVectors | SpatialCRS+TemporalCRS | 2D/3D |
- WCS trimming:
...subset=D(19,73),subset=t("2012-12-31","2013-01-15")...
<domainSet> <ReferenceableGridByArrayAndVectors gml:id="2a-MRTS_s" dimension="2" uomLabels="metre d" srsDimension="2" srsName="http://rasdaman.org:8080/def/crs-compound? 1=http://rasdaman.org:8080/def/crs/EPSG/0/5715& 2=http://rasdaman.org:8080/def/crs/OGC/0/AnsiDate"> <limits> <GridEnvelope> <low>0 0</low> <high>2 3</high> </GridEnvelope> </limits> <axisLabels>0 1</axisLabels> <!-- The moving series is shifting along the vertical CRS, but it has fixed spacing: --> <!-- there is hence a pattern in time (described in the posList) that acts as origin --> <!-- which is repeated for every observation along the vertical axis. --> <posList> 20 150480 23 150485 19 150490 18 150495 </posList> <gmlrgrid:gridAxesSpanned>1</gmlrgrid:gridAxesSpanned> <sequenceRule axisOrder="+1">Linear</sequenceRule> <gmlrgrid:generalGridAxis> <gmlrgrid:GeneralGridAxis> <offsetVector>25 0</offsetVector> <gmlrgrid:gridAxesSpanned>0</gmlrgrid:gridAxesSpanned> </gmlrgrid:GeneralGridAxis> </gmlrgrid:generalGridAxis> </ReferenceableGridByArrayAndVectors> <\domainSet>
- WCS slicing (S):
...subset=D(25),subset=t("2012-12-31","2013-01-15")...
…what to put in here? - WCS slicing (T):
...subset=D(19,73),subset=t("2012-12-31")...
See 2a-SO.
2a-MITS
GML coverage type | GML domainSet | native CRS | CRS dim |
ReferenceableGridCoverage | ReferenceableGridByArrayAndVectors | SpatialCRS+TemporalCRS | 2D/3D |
- WCS trimming:
...subset=D(19,73),subset=t("2012-12-31","2013-01-11")...
<domainSet> <ReferenceableGridByArrayAndVectors gml:id="2a-MITS_s" dimension="2" uomLabels="metre d" srsDimension="2" srsName="http://rasdaman.org:8080/def/crs-compound? 1=http://rasdaman.org:8080/def/crs/EPSG/0/5715& 2=http://rasdaman.org:8080/def/crs/OGC/0/AnsiDate"> <limits> <GridEnvelope> <low>0 0</low> <high>2 3</high> </GridEnvelope> </limits> <axisLabels>0 1</axisLabels> <posList> 20 150480 23 15086 19 150489 18 150491 </posList> <gmlrgrid:gridAxesSpanned>1</gmlrgrid:gridAxesSpanned> <sequenceRule axisOrder="+1">Linear</sequenceRule> <gmlrgrid:generalGridAxis> <gmlrgrid:GeneralGridAxis> <offsetVector>25 0</offsetVector> <gmlrgrid:gridAxesSpanned>0</gmlrgrid:gridAxesSpanned> </gmlrgrid:GeneralGridAxis> </gmlrgrid:generalGridAxis> </ReferenceableGridByArrayAndVectors> <\domainSet>
- WCS slicing (S):
...subset=D(25),subset=t("2013-01-01","2013-01-31")...
…? - WCS slicing (T):
...subset=D(19,73),subset=t("2012-12-31")...
See 2a-SO.
Case 2b
… diagonal line, not parallel to a CRS axis.
2b-SO
GML coverage type | GML domainSet | native CRS | CRS dim |
RectifiedGridCoverage | RectifiedGrid | SpatialCRS | 2D |
- WCS trimming:
...subset=E(167000,169000),subset=N(4320000,4323000)...
<domainSet> <RectifiedGrid id="2b-SO-t" dimension="1" uomLabels="metre metre" srsDimension="2" srsName="http://rasdaman.org:8080/def/crs/EPSG/0/32633"> <limits> <GridEnvelope> <low>0</low> <high>2</high> </GridEnvelope> </limits> <axisLabels>0</axisLabels> <origin> <Point id="O"> <pos>167000 4320000</pos> </Point> </origin> <offsetVector>1000 1500</offsetVector> </RectifiedGrid> </domainSet>
- WCS slicing:
...subset=E(167000,169000),subset=N(4320000)...
<domainSet> <RectifiedGrid id="2b-SO_s" dimension="1" uomLabels="metre" srsDimension="1" srsName="http://rasdaman.org:8080/def/crs/EPSG/0/32633?axes='E'"> <limits> <GridEnvelope> <low>0</low> <high>0</high> </GridEnvelope> </limits> <axisLabels>0</axisLabels> <origin> <Point id="O"> <pos>167000</pos> </Point> </origin> <offsetVector>1000</offsetVector> </RectifiedGrid> </domainSet>
2b-RTS
GML coverage type | GML domainSet | native CRS | CRS dim |
RectifiedGridCoverage | RectifiedGrid | SpatialCRS+TemporalCRS | 3D |
- WCS trimming:
...subset=E(167000,169000),subset=N(4320000,4323000),subset=t("2013-01-06","2013-02-15")...
<domainSet> <RectifiedGrid id="2b-SO-t" dimension="2" uomLabels="metre metre d" srsDimension="3" srsName="http://rasdaman.org:8080/def/crs-compound? 1=http://rasdaman.org:8080/def/crs/EPSG/0/32633& 2=http://rasdaman.org:8080/def/crs/OGC/0/AnsiDate"> <limits> <GridEnvelope> <low>0 0</low> <high>2 3</high> </GridEnvelope> </limits> <axisLabels>0 1</axisLabels> <origin> <Point id="O"> <pos>167000 4320000 150486</pos> </Point> </origin> <offsetVector>1000 1500 10</offsetVector> </RectifiedGrid> </domainSet>
- WCS slicing (S):
...subset=E(167000),subset=N(4320000),subset=t("2013-01-06","2013-02-15")...
<domainSet> <RectifiedGrid id="2b-SO_s" dimension="1" uomLabels="d" srsDimension="1" srsName="http://rasdaman.org:8080/def/crs/OGC/0/AnsiDate"> <limits> <GridEnvelope> <low>0</low> <high>3</high> </GridEnvelope> </limits> <axisLabels>0</axisLabels> <origin> <Point id="O"> <pos>150486</pos> </Point> </origin> <offsetVector>10</offsetVector> </RectifiedGrid> </domainSet>
- WCS slicing (T):
...subset=E(167000,169000),subset=N(4320000,4323000),subset=t("2013-01-06")...
See 2b-SO.
2b-ITS
GML coverage type | GML domainSet | native CRS | CRS dim |
ReferenceableGridCoverage | ReferenceableGridByVectors | SpatialCRS+TemporalCRS | 3D |
- WCS trimming:
...subset=E(167000,169000),subset=N(4320000,4324500),subset=t("2013-01-06","2013-02-05")...
<domainSet> <ReferenceableGridByVectors id="2b-ITS_t" dimension="2" uomLabels="metre metre d" srsDimension="3" srsName="http://rasdaman.org:8080/def/crs-compound? 1=http://rasdaman.org:8080/def/crs/EPSG/0/32633& 2=http://rasdaman.org:8080/def/crs/OGC/0/AnsiDate"> <limits> <GridEnvelope> <low>0 0</low> <high>2 3</high> </GridEnvelope> </limits> <axisLabels>0 1</axisLabels> <origin> <Point id="O"> <pos>167000 4320000 150486</pos> </Point> </origin> <generalGridAxis> <GeneralGridAxis> <!-- Regular spacing in the geo-space --> <offsetVector>1000 1500 0</offsetVector> <gridAxesSpanned>0</gridAxesSpanned> </GeneralGridAxis> </generalGridAxis> <generalGridAxis> <GeneralGridAxis> <!-- Irregular spacing in time --> <offsetVector>0 0 5</offsetVector> <coefficients>0 1 3 6</coefficients> <gridAxesSpanned>1</gridAxesSpanned> <sequenceRule axisOrder="+1">Linear</sequenceRule> </GeneralGridAxis> </generalGridAxis> </ReferenceableGridByVectors> </domainSet>
- WCS slicing (S):
...subset=E(167000),subset=N(4320000),subset=t("2013-01-06","2013-02-05")...
<domainSet> <ReferenceableGridByVectors id="2b-ITS_s" dimension="1" uomLabels="d" srsDimension="1" srsName="http://rasdaman.org:8080/def/crs/OGC/0/AnsiDate"> <limits> <GridEnvelope> <low>0</low> <high>3</high> </GridEnvelope> </limits> <axisLabels>1</axisLabels> <origin> <Point id="O"> <pos>150486</pos> </Point> </origin> <GeneralGridAxis> <offsetVector>5</offsetVector> <coefficients>0 1 3 6</coefficients> <gridAxesSpanned>1</gridAxesSpanned> <sequenceRule axisOrder="+1">Linear</sequenceRule> </GeneralGridAxis> </generalGridAxis> </ReferenceableGridByVectors> </domainSet>
- WCS slicing (T):
...subset=E(167000,169000),subset=N(4320000,4324500),subset=t("2013-01-06")...
See 2b-SO.
2b-MRTS
2b-MITS
Case 2c
… diagonal line in the 3D geo-space.
2c-SO
GML coverage type | GML domainSet | native CRS | CRS dim |
RectifiedGridCoverage | RectifiedGrid | SpatialCRS | 3D |
- WCS trimming:
...subset=Lat(40,41),subset=Long(9,10),subset=h(200,300)...
<domainSet> <RectifiedGrid id="2c-SO-t" dimension="1" uomLabels="DMSH DMSH metre" srsDimension="3" srsName="http://rasdaman.org:8080/def/crs/EPSG/0/4327"> <limits> <GridEnvelope> <low>0</low> <high>2</high> </GridEnvelope> </limits> <axisLabels>0</axisLabels> <origin> <Point id="O"> <pos>40 9 200</pos> </Point> </origin> <offsetVector>0.5 0.5 50</offsetVector> </RectifiedGrid> </domainSet>
- WCS slicing:
...subset=Lat(40,41),subset=Long(9,10),subset=h(200)...
<domainSet> <RectifiedGrid id="2c-SO-s" dimension="1" uomLabels="DMSH DMSH" srsDimension="2" srsName="http://rasdaman.org:8080/def/crs/EPSG/0/4327?axes='Lat,Long'"> <limits> <GridEnvelope> <low>0</low> <high>0</high> </GridEnvelope> </limits> <axisLabels>0</axisLabels> <origin> <Point id="O"> <pos>40 9</pos> </Point> </origin> <offsetVector>0.5 0.5</offsetVector> </RectifiedGrid> </domainSet>
2c-RTS
GML coverage type | GML domainSet | native CRS | CRS dim |
RectifiedGridCoverage | RectifiedGrid | SpatialCRS+TemporalCRS | 4D |
- WCS trimming:
...subset=Lat(40,41),subset=Long(9,10),subset=h(200,300),subset=t("2013-01-06","2013-01-21")...
<domainSet> <RectifiedGrid id="2c-RTS-t" dimension="2" uomLabels="DMSH DMSH metre d" srsDimension="4" srsName="http://rasdaman.org:8080/def/crs-compound? 1=http://rasdaman.org:8080/def/crs/EPSG/0/4327& 2=http://rasdaman.org:8080/def/crs/OGC/0/AnsiDate"> <limits> <GridEnvelope> <low>0 0</low> <high>2 3</high> </GridEnvelope> </limits> <axisLabels>0 1</axisLabels> <origin> <Point id="O"> <pos>40 9 200 150486</pos> </Point> </origin> <offsetVector>0.5 0.5 50 5</offsetVector> </RectifiedGrid> </domainSet>
- WCS slicing (S):
...subset=Lat(40),subset=Long(9),subset=h(200),subset=t("2013-01-06","2013-01-21")...
<domainSet> <RectifiedGrid id="2c-RTS-s" dimension="1" uomLabels="d" srsDimension="1" srsName="http://rasdaman.org:8080/def/crs/OGC/0/AnsiDate"> <limits> <GridEnvelope> <low>0</low> <high>3</high> </GridEnvelope> </limits> <axisLabels>0</axisLabels> <origin> <Point id="O"> <pos>150486</pos> </Point> </origin> <offsetVector>5</offsetVector> </RectifiedGrid> </domainSet>
- WCS slicing (T):
...subset=Lat(40,41),subset=Long(9,10),subset=h(200,300),subset=t("2013-01-06")...
See 2c-SO.
2c-ITS
GML coverage type | GML domainSet | native CRS | CRS dim |
ReferenceableGridCoverage | ReferenceableGridByVectors | SpatialCRS+TemporalCRS | 4D |
- WCS trimming:
...subset=Lat(40,41),subset=Long(9,10),subset=h(200,300),subset=t("2013-01-06","2013-02-05")...
<domainSet> <ReferenceableGridByVectors id="2c-ITS_t" dimension="2" uomLabels="DMSH DMSH metre d" srsDimension="4" srsName="http://rasdaman.org:8080/def/crs-compound? 1=http://rasdaman.org:8080/def/crs/EPSG/0/4327& 2=http://rasdaman.org:8080/def/crs/OGC/0/AnsiDate"> <limits> <GridEnvelope> <low>0 0</low> <high>2 3</high> </GridEnvelope> </limits> <axisLabels>0 1</axisLabels> <origin> <Point id="O"> <pos>40 9 200 150486</pos> </Point> </origin> <generalGridAxis> <GeneralGridAxis> <!-- Regular spacing in the geo-space --> <offsetVector>0.5 0.5 50 0</offsetVector> <gridAxesSpanned>0</gridAxesSpanned> </GeneralGridAxis> </generalGridAxis> <generalGridAxis> <GeneralGridAxis> <!-- Irregular spacing in time --> <offsetVector>0 0 0 5</offsetVector> <coefficients>0 1 3 6</coefficients> <gridAxesSpanned>1</gridAxesSpanned> <sequenceRule axisOrder="+1">Linear</sequenceRule> </GeneralGridAxis> </generalGridAxis> </ReferenceableGridByVectors> </domainSet>
- WCS slicing (S):
...subset=Lat(40),subset=Long(9),subset=h(200),subset=t("2013-01-06","2013-02-05")...
<domainSet> <ReferenceableGridByVectors id="2c-ITS_s" dimension="1" uomLabels="d" srsDimension="1" srsName="http://rasdaman.org:8080/def/crs/OGC/0/AnsiDate"> <limits> <GridEnvelope> <low>0</low> <high>3</high> </GridEnvelope> </limits> <axisLabels>1</axisLabels> <origin> <Point id="O"> <pos>150486</pos> </Point> </origin> <GeneralGridAxis> <offsetVector>5</offsetVector> <coefficients>0 1 3 6</coefficients> <gridAxesSpanned>1</gridAxesSpanned> <sequenceRule axisOrder="+1">Linear</sequenceRule> </GeneralGridAxis> </generalGridAxis> </ReferenceableGridByVectors> </domainSet>
- WCS slicing (T):
...subset=Lat(40,41),subset=Long(9,10),subset=h(200,300),subset=t("2013-01-06")...
See 2c-SO.
2c-MRTS
2c-MITS
Case 2d
… along a diagonal line in the 3D geo-space with irregular spacing.
2d-SO
GML coverage type | GML domainSet | native CRS | CRS dim |
ReferenceableGridCoverage | ReferenceableGridByVectors | SpatialCRS | 3D |
- WCS trimming:
...subset=Lat(40,42),subset=Long(9,11),subset=h(200,400)...
<domainSet> <ReferenceableGridByVectors id="2d-SO_t" dimension="1" uomLabels="DMSH DMSH metre" srsDimension="3" srsName="http://rasdaman.org:8080/def/crs/EPSG/0/4327"> <limits> <GridEnvelope> <low>0</low> <high>2</high> </GridEnvelope> </limits> <axisLabels>0</axisLabels> <origin> <Point id="O"> <pos>40 9 200</pos> </Point> </origin> <generalGridAxis> <GeneralGridAxis> <!-- Irregular spacing in the geo-space --> <offsetVector>0.5 0.5 50</offsetVector> <coefficients>0 3 4</coefficients> <gridAxesSpanned>1</gridAxesSpanned> <sequenceRule axisOrder="+1">Linear</sequenceRule> </GeneralGridAxis> </generalGridAxis> </ReferenceableGridByVectors> </domainSet>
- WCS slicing:
...subset=Lat(40,42),subset=Long(9,11),subset=h(200)...
<domainSet> <!-- Just a single point, a RectifiedGrid could also be used --> <ReferenceableGridByVectors id="2d-SO_s" dimension="1" uomLabels="DMSH DMSH" srsDimension="2" srsName="http://rasdaman.org:8080/def/crs/EPSG/0/4327?axes='Lat,Long'"> <limits> <GridEnvelope> <low>0</low> <high>0</high> </GridEnvelope> </limits> <axisLabels>0</axisLabels> <origin> <Point id="O"> <pos>40 9</pos> </Point> </origin> <GeneralGridAxis> <offsetVector>0.5 0.5</offsetVector> <coefficients>0</coefficients> <gridAxesSpanned>1</gridAxesSpanned> <sequenceRule axisOrder="+1">Linear</sequenceRule> </GeneralGridAxis> </generalGridAxis> </ReferenceableGridByVectors> </domainSet>
2d-RTS
2d-ITS
2d-MRTS
2d-MITS
Case 3
1D SPATIAL OBSERVATIONS ON A CURVILINEAR LINE …
This section covers (time series of) point observations with spatial reference. In particular here we have a measurements which lie along a curvilinear (and not straight) line. In this case, the only interesting distinction regards the dimensionality of the space (CRS) into which the points span.
(Attach a scan of the sketches here with all types in this subcategory?)
Case 3a
… in the 2D geo-space.
3a-SO
GML coverage type | GML domainSet | native CRS | CRS dim |
ReferenceableGridCoverage | ReferenceableGridByArray | SpatialCRS | 2D |
- WCS trimming:
...subset=E(167000,169350),subset=N(4320000,4410000)...
<domainSet> <ReferenceableGridByArray gml:id="3a-SO_s" dimension="1" uomLabels="metre metre" srsDimension="2" srsName="http://rasdaman.org:8080/def/crs/EPSG/0/32633"> <limits> <GridEnvelope> <low>0</low> <high>2</high> </GridEnvelope> </limits> <axisLabels>0</axisLabels> <posList> 167000 4320000 167500 4350000 169350 4410000 </posList> <sequenceRule axisOrder="+1">Linear</sequenceRule> </ReferenceableGridByArray> <\domainSet>
- WCS slicing (S):
...subset=E(167000),subset=N(4320000)...
<domainSet> <!-- 0D geometry: both dimensions where sliced --> <RectifiedGrid id="3a-SO_s" dimension="0"> <limits> <GridEnvelope> <low></low> <high></high> </GridEnvelope> </limits> <axisLabels></axisLabels> <origin> <Point id="O"> <pos></pos> </Point> </origin> <offsetVector></offsetVector> </RectifiedGrid> </domainSet>
3a-RTS
3a-ITS
3a-MRTS
3a-MITS
Case 3b
… in the 3D geo-space.
3b-SO
GML coverage type | GML domainSet | native CRS | CRS dim |
ReferenceableGridCoverage | ReferenceableGridByArray | SpatialCRS | 3D |
- WCS trimming:
...subset=Lat(40,41),subset=Long(9,10),subset=h(200,240)...
<domainSet> <ReferenceableGridByArray gml:id="3b-SO_t" dimension="1" uomLabels="DMSH DMSH metre" srsDimension="3" srsName="http://rasdaman.org:8080/def/crs/EPSG/0/4327"> <limits> <GridEnvelope> <low>0</low> <high>2</high> </GridEnvelope> </limits> <axisLabels>0</axisLabels> <posList> 40 9 200 40.1 9.2 240 41 10 215 </posList> <sequenceRule axisOrder="+1">Linear</sequenceRule> </ReferenceableGridByArray> <\domainSet>
- WCS slicing (S):
...subset=Lat(40,41),subset=Long(9,10),subset=h(200)...
<domainSet> <!-- Just a single point, a RectifiedGrid could also be used --> <ReferenceableGridByArray gml:id="3b-SO_s" dimension="1" uomLabels="DMSH DMSH" srsDimension="2" srsName="http://rasdaman.org:8080/def/crs/EPSG/0/4327?axes='Lat,Long'"> <limits> <GridEnvelope> <low>0</low> <high>0</high> </GridEnvelope> </limits> <axisLabels>0</axisLabels> <posList> 40 9 </posList> <sequenceRule axisOrder="+1">Linear</sequenceRule> </ReferenceableGridByArray> <\domainSet>
3b-RTS
3b-ITS
3b-MRTS
3b-MITS
Case 4
2D GRIDDED GEO-IMAGE IN THE 2D SPACE …
This section covers (time series of) 2D geo-images which only span a 2-dimensional space (CRS). They can have different geometric layouts, depending on the regularity of the retained grid shape, going from a simple aligned grid with regular pixel size, to a completely warped grid like for instance would be applied to a raw unrectified spaceborne/airborne image.
(Attach a scan of the sketches here with all types in this subcategory?)
Case 4a
… with regular spacing, aligned with CRS axes.
4a-SO
GML coverage type | GML domainSet | native CRS | CRS dim |
RectifiedGridCoverage | RectifiedGrid | SpatialCRS | 2D |
- WCS trimming:
...subset=E(167000,169000),subset=N(4320000,4324500)...
<domainSet> <RectifiedGrid id="4a-SO-t" dimension="2" uomLabels="metre metre" srsDimension="2" srsName="http://rasdaman.org:8080/def/crs/EPSG/0/32633"> <limits> <GridEnvelope> <low>0 0</low> <high>2 3</high> </GridEnvelope> </limits> <axisLabels>0 1</axisLabels> <origin> <Point id="O"> <pos>167000 4320000</pos> </Point> </origin> <offsetVector>1000 0</offsetVector> <offsetVector> 0 1500</offsetVector> </RectifiedGrid> </domainSet>
- WCS slicing:
...subset=E(167000,169000),subset=N(4320000)...
<domainSet> <RectifiedGrid id="4a-SO-t" dimension="1" uomLabels="metre" srsDimension="1" srsName="http://rasdaman.org:8080/def/crs/EPSG/0/32633?axes='E'"> <limits> <GridEnvelope> <low>0</low> <high>2</high> </GridEnvelope> </limits> <axisLabels>0 1</axisLabels> <origin> <Point id="O"> <pos>167000</pos> </Point> </origin> <offsetVector>1000</offsetVector> </RectifiedGrid> </domainSet>
4a-RTS
GML coverage type | GML domainSet | native CRS | CRS dim |
RectifiedGridCoverage | RectifiedGrid | SpatialCRS+TemporalCRS | 3D |
- WCS trimming:
...subset=E(167000,169000),subset=N(4320000,4324500),subset=t("2013-01-06","2013-01-26")...
<domainSet> <RectifiedGrid id="4a-RTS-t" dimension="3" uomLabels="metre metre d" srsDimension="3" srsName="http://rasdaman.org:8080/def/crs-compound? 1=http://rasdaman.org:8080/def/crs/EPSG/0/32633& 2=http://rasdaman.org:8080/def/crs/OGC/0/AnsiDate"> <limits> <GridEnvelope> <low>0 0 0</low> <high>2 3 4</high> </GridEnvelope> </limits> <axisLabels>0 1 2</axisLabels> <origin> <Point id="O"> <pos>167000 4320000 150486</pos> </Point> </origin> <offsetVector>1000 0 0</offsetVector> <offsetVector> 0 1500 0</offsetVector> <offsetVector> 0 0 5</offsetVector> </RectifiedGrid> </domainSet>
- WCS slicing (S):
...subset=E(167000),subset=N(4320000,4324500),subset=t("2013-01-06","2013-01-26")...
<domainSet> <RectifiedGrid id="4a-SO-t" dimension="2" uomLabels="metre d" srsDimension="2" srsName="http://rasdaman.org:8080/def/crs-compound? 1=http://rasdaman.org:8080/def/crs/EPSG/0/32633?axes='N'& 2=http://rasdaman.org:8080/def/crs/OGC/0/AnsiDate"> <limits> <GridEnvelope> <low>0 0</low> <high>3 4</high> </GridEnvelope> </limits> <axisLabels>1 2</axisLabels> <origin> <Point id="O"> <pos>4320000 150486</pos> </Point> </origin> <offsetVector>1500 0</offsetVector> <offsetVector> 0 5</offsetVector> </RectifiedGrid> </domainSet>
- WCS slicing (T):
...subset=E(166000,169000),subset=N(4320000,4324500),subset=t("2013-01-06")...
See 4a-SO.
4a-ITS
GML coverage type | GML domainSet | native CRS | CRS dim |
ReferenceableGridCoverage | ReferenceableGridByVectors | SpatialCRS+TemporalCRS | 3D |
- WCS trimming:
...subset=E(167000,170000),subset=N(4320000,4324500),subset=t("2013-01-02","2013-01-27")...
<domainSet> <ReferenceableGridByVectors id="4a-ITS_t" dimension="3" uomLabels="metre metre d" srsDimension="3" srsName="http://rasdaman.org:8080/def/crs-compound? 1=http://rasdaman.org:8080/def/crs/EPSG/0/32633& 2=http://rasdaman.org:8080/def/crs/OGC/0/AnsiDate"> <limits> <GridEnvelope> <low>0 0 0</low> <high>2 3 4</high> </GridEnvelope> </limits> <axisLabels>0 1 2</axisLabels> <origin> <Point id="O"> <pos>167000 4320000 150482</pos> </Point> </origin> <generalGridAxis> <GeneralGridAxis> <!-- Regular easting --> <offsetVector>1500 0 0</offsetVector> <gridAxesSpanned>0</gridAxesSpanned> </GeneralGridAxis> </generalGridAxis> <generalGridAxis> <GeneralGridAxis> <!-- Regular northing --> <offsetVector>0 1500 0</offsetVector> <gridAxesSpanned>1</gridAxesSpanned> </GeneralGridAxis> </generalGridAxis> <generalGridAxis> <GeneralGridAxis> <!-- Irregular time intervals --> <offsetVector>0 0 5</offsetVector> <coefficients>0 1 3 5</coefficients> <gridAxesSpanned>2</gridAxesSpanned> <sequenceRule axisOrder="+1">Linear</sequenceRule> </GeneralGridAxis> </generalGridAxis> </ReferenceableGridByVectors> </domainSet>
- WCS slicing (S):
...subset=E(167000),subset=N(4320000),subset=t("2013-01-02","2013-01-27")...
<domainSet> <ReferenceableGridByVectors id="4a-ITS_s" dimension="1" uomLabels="d" srsDimension="1" srsName="http://rasdaman.org:8080/def/crs/OGC/0/AnsiDate"> <limits> <GridEnvelope> <low>0</low> <high>4</high> </GridEnvelope> </limits> <axisLabels>2</axisLabels> <origin> <Point id="O"> <pos>150482</pos> </Point> </origin> <GeneralGridAxis> <offsetVector>5</offsetVector> <coefficients>0 1 3 5</coefficients> <gridAxesSpanned>2</gridAxesSpanned> <sequenceRule axisOrder="+1">Linear</sequenceRule> </GeneralGridAxis> </generalGridAxis> </ReferenceableGridByVectors> </domainSet>
- WCS slicing (T):
...subset=E(167000,170000),subset=N(4320000,4420000),subset=t("2013-01-02")...
See 4a-SO.
4a-MRTS
4a-MITS
Case 4b
… with regular spacing, and rotation.
4b-SO
GML coverage type | GML domainSet | native CRS | CRS dim |
RectifiedGridCoverage | RectifiedGrid | SpatialCRS | 2D |
- WCS trimming:
...subset=E(167400,168600),subset=N(4320000,4324500)...
<domainSet> <RectifiedGrid id="4b-SO-t" dimension="2" uomLabels="metre metre" srsDimension="2" srsName="http://rasdaman.org:8080/def/crs/EPSG/0/32633"> <limits> <GridEnvelope> <low>0 0</low> <high>2 3</high> </GridEnvelope> </limits> <axisLabels>0 1</axisLabels> <origin> <Point id="O"> <pos>168000 4320000</pos> </Point> </origin> <offsetVector> 300 1500</offsetVector> <offsetVector>-200 750</offsetVector> </RectifiedGrid> </domainSet>
- WCS slicing:
...subset=E(167400,168600),subset=N(4320000)...
([!] what to return in this case ?)
4b-RTS
GML coverage type | GML domainSet | native CRS | CRS dim |
RectifiedGridCoverage | RectifiedGrid | SpatialCRS+TemporalCRS | 3D |
- WCS trimming:
...subset=E(167400,168600),subset=N(4320000,4324500),subset=t("2013-01-06","2013-01-26")...
<domainSet> <RectifiedGrid id="4a-RTS-t" dimension="3" uomLabels="metre metre d" srsDimension="3" srsName="http://rasdaman.org:8080/def/crs-compound? 1=http://rasdaman.org:8080/def/crs/EPSG/0/32633& 2=http://rasdaman.org:8080/def/crs/OGC/0/AnsiDate"> <limits> <GridEnvelope> <low>0 0 0</low> <high>2 3 4</high> </GridEnvelope> </limits> <axisLabels>0 1 2</axisLabels> <origin> <Point id="O"> <pos>168000 4320000 150486</pos> </Point> </origin> <offsetVector> 300 1500 0</offsetVector> <offsetVector>-200 750 0</offsetVector> <offsetVector> 0 0 5</offsetVector> </RectifiedGrid> </domainSet>
- WCS slicing (S):
...subset=E(167400),subset=N(4320000,4324500),subset=t("2013-01-06","2013-01-26")...
…? - WCS slicing (T):
...subset=E(167400,168600),subset=N(4320000,4324500),subset=t("2013-01-06")...
See 4b-SO.
4b-ITS
GML coverage type | GML domainSet | native CRS | CRS dim |
ReferenceableGridCoverage | ReferenceableGridByVectors | SpatialCRS+TemporalCRS | 3D |
- WCS trimming:
...subset=E(167400,168600),subset=N(4320000,4324500),subset=t("2013-01-02","2013-01-27")...
<domainSet> <ReferenceableGridByVectors id="4b-ITS_t" dimension="3" uomLabels="metre metre d" srsDimension="3" srsName="http://rasdaman.org:8080/def/crs-compound? 1=http://rasdaman.org:8080/def/crs/EPSG/0/32633& 2=http://rasdaman.org:8080/def/crs/OGC/0/AnsiDate"> <limits> <GridEnvelope> <low>0 0 0</low> <high>2 3 4</high> </GridEnvelope> </limits> <axisLabels>0 1 2</axisLabels> <origin> <Point id="O"> <pos>168000 4320000 150482</pos> </Point> </origin> <generalGridAxis> <GeneralGridAxis> <!-- Rotated regularly-spaced spatial grid axis --> <offsetVector>300 1500 0</offsetVector> <gridAxesSpanned>0</gridAxesSpanned> </GeneralGridAxis> </generalGridAxis> <generalGridAxis> <GeneralGridAxis> <!-- Rotated regularly-spaced spatial grid axis --> <offsetVector>-200 750 0</offsetVector> <gridAxesSpanned>1</gridAxesSpanned> </GeneralGridAxis> </generalGridAxis> <generalGridAxis> <GeneralGridAxis> <!-- Irregular time intervals --> <offsetVector>0 0 5</offsetVector> <coefficients>0 1 3 5</coefficients> <gridAxesSpanned>2</gridAxesSpanned> <sequenceRule axisOrder="+1">Linear</sequenceRule> </GeneralGridAxis> </generalGridAxis> </ReferenceableGridByVectors> </domainSet>
- WCS slicing (S):
...subset=E(167400),subset=N(4320000,4324500),subset=t("2013-01-02","2013-01-27")...
…? - WCS slicing (T):
...subset=E(167400,168600),subset=N(4320000,4324500),subset=t("2013-01-02")...
See 4b-SO.
4b-MRTS
4b-MITS
Case 4c
… with irregular spacing, and rotation.
4c-SO
GML coverage type | GML domainSet | native CRS | CRS dim |
ReferenceableGridCoverage | ReferenceableGridByVectors | SpatialCRS | 2D |
- WCS trimming:
...subset=E(167000,170500),subset=N(4320000,4321500)...
<domainSet> <ReferenceableGridByVectors id="4c-SO_t" dimension="2" uomLabels="metre metre" srsDimension="2" srsName="http://rasdaman.org:8080/def/crs/EPSG/0/32633"> <limits> <GridEnvelope> <low>0 0</low> <high>2 3</high> </GridEnvelope> </limits> <axisLabels>0 1</axisLabels> <origin> <Point id="O"> <pos>167000 4320000</pos> </Point> </origin> <generalGridAxis> <GeneralGridAxis> <offsetVector>100 500</offsetVector> <coefficients>0 1 3</coefficients> <gridAxesSpanned>0</gridAxesSpanned> <sequenceRule axisOrder="+1">Linear</sequenceRule> </GeneralGridAxis> </generalGridAxis> <generalGridAxis> <GeneralGridAxis> <offsetVector>500 100</offsetVector> <coefficients>0 4 5 7</coefficients> <gridAxesSpanned>1</gridAxesSpanned> <sequenceRule axisOrder="+1">Linear</sequenceRule> </GeneralGridAxis> </generalGridAxis> </ReferenceableGridByVectors> </domainSet>
- WCS slicing:
...subset=E(167000,170500),subset=N(4320000)...
([!] what to return in this case ?)
4c-RTS
4c-ITS
4c-MRTS
4c-MITS
Case 4d
… with curvilinear axes (warped grid).
4d-SO
GML coverage type | GML domainSet | native CRS | CRS dim |
ReferenceableGridCoverage | ReferenceableGridByArray | SpatialCRS | 2D |
- WCS trimming:
...subset=E(167000,170000),subset=N(4320000,4419800)...
<domainSet> <ReferenceableGridByArray gml:id="4d-SO_t" dimension="2" uomLabels="metre metre" srsDimension="2" srsName="http://rasdaman.org:8080/def/crs/EPSG/0/32633"> <limits> <GridEnvelope> <low>0 0</low> <high>2 3</high> </GridEnvelope> </limits> <axisLabels>0 1</axisLabels> <posList> 167000 4320000 167500 4350000 169350 4410000 167200 4320500 167550 4354000 169650 4410700 167250 4320780 168900 4354550 169700 4412300 167280 4320790 168990 4357900 170000 4419800 </posList> <sequenceRule axisOrder="+1 +2">Linear</sequenceRule> </ReferenceableGridByArray> <\domainSet>
- WCS slicing (S):
...subset=E(160000,170000),subset=N(4320000)...
([!] what to return in this case ?)
4d-RTS
4d-ITS
4d-MRTS
4d-MITS
Case 4e
… warped grid, and 2 (real+simulation) time axes
4e-RTS
GML coverage type | GML domainSet | native CRS | CRS dim |
ReferenceableGridCoverage | ReferenceableGridByArrayAndVectors | SpatialCRS+TemporalCRS+TemporalCRS | 4D |
- WCS trimming:
...subset=E(167000,170000),subset=N(4320000,4419800),subset=t("2013-01-06","2013-01-18"),subset=t_sim("2013-02-06","2013-02-18")...
<domainSet> <ReferenceableGridByArrayAndVectors gml:id="4e-RTS_t" dimension="4" uomLabels="metre metre d d" srsDimension="4" srsName="http://rasdaman.org:8080/def/crs-compound? 1=http://rasdaman.org:8080/def/crs/EPSG/0/32633& 2=http://rasdaman.org:8080/def/crs/OGC/0/AnsiDate& 3=http://rasdaman.org:8080/def/crs/OGC/0/AnsiDate?axis-label='t_sim'"> <limits> <GridEnvelope> <low>0 0 0 0</low> <high>2 3 4 4</high> </GridEnvelope> </limits> <axisLabels>0 1 2 3</axisLabels> <posList> 167000 4320000 150486 150517 167500 4350000 150486 150517 169350 4410000 150486 150517 167200 4320500 150486 150517 167550 4354000 150486 150517 169650 4410700 150486 150517 167250 4320780 150486 150517 168900 4354550 150486 150517 169700 4412300 150486 150517 167280 4320790 150486 150517 168990 4357900 150486 150517 170000 4419800 150486 150517 </posList> <gmlrgrid:gridAxesSpanned>0 1</gmlrgrid:gridAxesSpanned> <sequenceRule axisOrder="+1 +2">Linear</sequenceRule> <gmlrgrid:generalGridAxis> <gmlrgrid:GeneralGridAxis> <!-- "Real" time axis (regular intervals of three days) --> <offsetVector>0 0 3 0</offsetVector> <gmlrgrid:gridAxesSpanned>2</gmlrgrid:gridAxesSpanned> </gmlrgrid:GeneralGridAxis> </gmlrgrid:generalGridAxis> <gmlrgrid:generalGridAxis> <gmlrgrid:GeneralGridAxis> <!-- "Simulation" time axis (regular intervals of three days) --> <offsetVector>0 0 0 3</offsetVector> <gmlrgrid:gridAxesSpanned>3</gmlrgrid:gridAxesSpanned> </gmlrgrid:GeneralGridAxis> </gmlrgrid:generalGridAxis> </ReferenceableGridByArrayAndVectors> <\domainSet>
- WCS slicing (S):
...subset=E(160000),subset=N(4320000),subset=t("2013-01-06","2013-01-18"),subset=t_sim("2013-02-06","2013-02-18")...
<domainSet> <RectifiedGrid id="4e-RTS_s" dimension="2" uomLabels="d d" srsDimension="2" srsName="http://rasdaman.org:8080/def/crs-compound? 1=http://rasdaman.org:8080/def/crs/OGC/0/AnsiDate 2=http://rasdaman.org:8080/def/crs/OGC/0/AnsiDate?axis-label='t_sim'"> <limits> <GridEnvelope> <low>0 0</low> <high>4 4</high> </GridEnvelope> </limits> <axisLabels>2 3</axisLabels> <origin> <Point id="O"> <pos>150486 150517</pos> </Point> </origin> <offsetVector>3 0</offsetVector> <offsetVector>0 3</offsetVector> </RectifiedGrid> </domainSet>
- WCS slicing (ST):
...subset=E(160000),subset=N(4320000),subset=t("2013-01-06"),subset=t_sim("2013-02-06","2013-02-18")...
<domainSet> <RectifiedGrid id="4e-RTS_s" dimension="1" uomLabels="d" srsDimension="1" srsName="http://rasdaman.org:8080/def/crs/OGC/0/AnsiDate?axis-label='t_sim'"> <limits> <GridEnvelope> <low>0</low> <high>4</high> </GridEnvelope> </limits> <axisLabels>3</axisLabels> <origin> <Point id="O"> <pos>150517</pos> </Point> </origin> <offsetVector>3</offsetVector> </RectifiedGrid> </domainSet>
- WCS slicing (T):
...subset=E(167000,170000),subset=N(4320000,4419800),subset=t("2013-01-06"),subset=t_sim("2013-02-06")...
See 4d-SO.
4e-ITS
4e-MRTS
4e-MITS
Case 5
2D GRIDDED GEO-IMAGE IN THE 3D SPACE (oblique plane) …
This section covers (time series of) 2D geo-images which transversely span a 3-dimensional space (CRS). They can have different geometric layouts, depending on the regularity of the retained grid shape, going from a simple aligned grid with regular pixel size, to a gridded curvilinear surface/drape.
(Attach a scan of the sketches here with all types in this subcategory?)
Case 5a
… with regular spacing.
5a-SO
GML coverage type | GML domainSet | native CRS | CRS dim |
RectifiedGridCoverage | RectifiedGrid | SpatialCRS | 3D |
- WCS trimming:
...subset=Lat(40,41),subset=Long(9,10.5),subset=h(200,350)...
<domainSet> <RectifiedGrid id="5a-SO-t" dimension="2" uomLabels="DMSH DMSH metre" srsDimension="3" srsName="http://rasdaman.org:8080/def/crs/EPSG/0/4327"> <limits> <GridEnvelope> <low>0 0</low> <high>2 3</high> </GridEnvelope> </limits> <axisLabels>0 1</axisLabels> <origin> <Point id="O"> <pos>40 9 200</pos> </Point> </origin> <!-- assume the grid is aligned with horizontal axes (XY-plane view is an aligned rectangle) --> <offsetVector>0.5 0 0</offsetVector> <offsetVector> 0 0.5 50</offsetVector> </RectifiedGrid> </domainSet>
- WCS slicing:
...subset=Lat(40,41),subset=Long(9,10.5),subset=h(200)...
<domainSet> <RectifiedGrid id="5a-SO-s" dimension="2" uomLabels="DMSH DMSH" srsDimension="2" srsName="http://rasdaman.org:8080/def/crs/EPSG/0/4327?axes='Lat,Long'"> <limits> <GridEnvelope> <low>0 0</low> <high>2 0</high> </GridEnvelope> </limits> <axisLabels>0 1</axisLabels> <origin> <Point id="O"> <pos>40 9</pos> </Point> </origin> <!-- assume the grid is aligned with horizontal axes (XY-plane view is an aligned rectangle) --> <offsetVector>0.5 0</offsetVector> <offsetVector> 0 0.5</offsetVector> </RectifiedGrid> </domainSet>
5a-RTS
5a-ITS
5a-MRTS
5a-MITS
Case 5b
… with irregular spacing.
5b-SO
GML coverage type | GML domainSet | native CRS | CRS dim |
ReferenceableGridCoverage | ReferenceableGridByVectors | SpatialCRS | 3D |
- WCS trimming:
...subset=Lat(40,41.5),subset=Long(9,11.4),subset=h(200,600)...
<domainSet> <ReferenceableGridByVectors id="5b-SO_t" dimension="2" uomLabels="DMSH DMSH metre" srsDimension="3" srsName="http://rasdaman.org:8080/def/crs/EPSG/0/4327"> <limits> <GridEnvelope> <low>0 0</low> <high>2 3</high> </GridEnvelope> </limits> <axisLabels>0 1</axisLabels> <origin> <Point id="O"> <pos>40 9 200</pos> </Point> </origin> <!-- assume the grid is aligned with horizontal axes (XY-plane view is an aligned rectangle) --> <generalGridAxis> <GeneralGridAxis> <offsetVector>0.5 0 0</offsetVector> <coefficients>0 1 3</coefficients> <gridAxesSpanned>0</gridAxesSpanned> <sequenceRule axisOrder="+1">Linear</sequenceRule> </GeneralGridAxis> </generalGridAxis> <generalGridAxis> <GeneralGridAxis> <offsetVector>0 0.3 50</offsetVector> <coefficients>0 3 6 8</coefficients> <gridAxesSpanned>1</gridAxesSpanned> <sequenceRule axisOrder="+1">Linear</sequenceRule> </GeneralGridAxis> </generalGridAxis> </ReferenceableGridByVectors> </domainSet>
- WCS slicing:
...subset=Lat(40,41.5),subset=Long(9,11),subset=h(200)...
<domainSet> <ReferenceableGridByVectors id="5b-SO_t" dimension="2" uomLabels="DMSH DMSH" srsDimension="2" srsName="http://rasdaman.org:8080/def/crs/EPSG/0/4327?axes='Lat,Long'"> <limits> <GridEnvelope> <low>0 0</low> <high>2 0</high> </GridEnvelope> </limits> <axisLabels>0 1</axisLabels> <origin> <Point id="O"> <pos>40 9</pos> </Point> </origin> <!-- assume the grid is aligned with horizontal axes (XY-plane view is an aligned rectangle) --> <generalGridAxis> <GeneralGridAxis> <offsetVector>0.5 0</offsetVector> <coefficients>0 1 3</coefficients> <gridAxesSpanned>0</gridAxesSpanned> <sequenceRule axisOrder="+1">Linear</sequenceRule> </GeneralGridAxis> </generalGridAxis> <generalGridAxis> <GeneralGridAxis> <offsetVector>0 0.3</offsetVector> <coefficients>0</coefficients> <gridAxesSpanned>1</gridAxesSpanned> <sequenceRule axisOrder="+1">Linear</sequenceRule> </GeneralGridAxis> </generalGridAxis> </ReferenceableGridByVectors> </domainSet>
5b-RTS
5b-ITS
5b-MRTS
5b-MITS
Case 5c
… with curvilinear axes (warped grid).
5c-SO
GML coverage type | GML domainSet | native CRS | CRS dim |
ReferenceableGridCoverage | ReferenceableGridByArray | SpatialCRS | 3D |
- WCS trimming:
...subset=Lat(40,41),subset=Long(9,10),subset=h(200,300)...
<domainSet> <ReferenceableGridByArray gml:id="5c-SO_t" dimension="2" uomLabels="DMSH DMSH metre" srsDimension="3" srsName="http://rasdaman.org:8080/def/crs/EPSG/0/4327"> <limits> <GridEnvelope> <low>0 0</low> <high>2 3</high> </GridEnvelope> </limits> <axisLabels>0 1</axisLabels> <posList> 40 9.2 200 40.1 9.3 200 40.3 9.5 200 40.1 9.3 240 40.3 9.5 240 40.4 9.7 240 40.4 9.4 245 40.7 9.7 245 40.8 9.8 245 40.6 9.5 290 40.8 9.7 290 41 9.9 300 </posList> <sequenceRule axisOrder="+1 +2">Linear</sequenceRule> </ReferenceableGridByArray> <\domainSet>
- WCS slicing:
...subset=Lat(40,41),subset=Long(9,10),subset=h(240)...
<domainSet> <ReferenceableGridByArray gml:id="5c-SO_s" dimension="1" uomLabels="DMSH DMSH" srsDimension="2" srsName="http://rasdaman.org:8080/def/crs/EPSG/0/4327?axes='Lat,Long'"> <limits> <GridEnvelope> <low>0</low> <high>3</high> </GridEnvelope> </limits> <axisLabels>1</axisLabels> <posList> 40.1 9.3 40.3 9.5 40.4 9.7 </posList> <sequenceRule axisOrder="+1">Linear</sequenceRule> </ReferenceableGridByArray> <\domainSet>
5c-RTS
5c-ITS
5c-MRTS
5c-MITS
Case 6
3D GRIDDED GEO-CUBE …
This section covers (time series of) 3D geo-cubes. They can have different geometric layouts, depending on the regularity of the retained gridded shape, going from a simple aligned cube with regular voxel size, to a completely warped cube with curvilinear axes.
(Attach a scan of the sketches here with all types in this subcategory?)
Case 6a
… with regular spacing.
6a-SO
GML coverage type | GML domainSet | native CRS | CRS dim |
RectifiedGridCoverage | RectifiedGrid | SpatialCRS | 3D |
- WCS trimming:
...subset=Lat(40,41),subset=Long(9,10.5),subset=h(200,260)...
<domainSet> <RectifiedGrid id="6a-SO-t" dimension="3" uomLabels="DMSH DMSH metre" srsDimension="3" srsName="http://rasdaman.org:8080/def/crs/EPSG/0/4327"> <limits> <GridEnvelope> <low>0 0 0</low> <high>2 3 4</high> </GridEnvelope> </limits> <axisLabels>0 1 2</axisLabels> <origin> <Point id="O"> <pos>40 9 200</pos> </Point> </origin> <offsetVector>0.5 0 0</offsetVector> <offsetVector> 0 0.5 0</offsetVector> <offsetVector> 0 0 15</offsetVector> </RectifiedGrid> </domainSet>
- WCS slicing:
...subset=Lat(40),subset=Long(9,10.5),subset=h(200,260)...
<domainSet> <RectifiedGrid id="6a-SO-s" dimension="2" uomLabels="DMSH metre" srsDimension="2" srsName="http://rasdaman.org:8080/def/crs/EPSG/0/4327?axes='Long,h'"> <limits> <GridEnvelope> <low>0 0</low> <high>3 4</high> </GridEnvelope> </limits> <axisLabels>1 2</axisLabels> <origin> <Point id="O"> <pos>9 200</pos> </Point> </origin> <offsetVector>0.5 0</offsetVector> <offsetVector> 0 15</offsetVector> </RectifiedGrid> </domainSet>
6a-RTS
6a-ITS
6a-MRTS
6a-MITS
Case 6b
… with regular XY spacing, but irregular heights.
6b-SO
GML coverage type | GML domainSet | native CRS | CRS dim |
ReferenceableGridCoverage | ReferenceableGridByVectors | SpatialCRS | 3D |
- WCS trimming:
...subset=Lat(40,41),subset=Long(9,10.5),subset=h(200,305)...
<domainSet> <ReferenceableGridByVectors id="6b-SO_t" dimension="3" uomLabels="DMSH DMSH metre" srsDimension="3" srsName="http://rasdaman.org:8080/def/crs/EPSG/0/4327"> <limits> <GridEnvelope> <low>0 0 0</low> <high>2 3 4</high> </GridEnvelope> </limits> <axisLabels>0 1</axisLabels> <origin> <Point id="O"> <pos>40 9 200</pos> </Point> </origin> <generalGridAxis> <GeneralGridAxis> <!-- regularly spaced northing --> <offsetVector>0.5 0 0</offsetVector> <gridAxesSpanned>0</gridAxesSpanned> </GeneralGridAxis> </generalGridAxis> <generalGridAxis> <GeneralGridAxis> <!-- regularly spaced easting --> <offsetVector>0 0.5 0</offsetVector> <gridAxesSpanned>1</gridAxesSpanned> </GeneralGridAxis> </generalGridAxis> <generalGridAxis> <GeneralGridAxis> <!-- irregularly spaced heights --> <offsetVector>0 0 15</offsetVector> <coefficients>0 3 4 6 7</coefficients> <gridAxesSpanned>2</gridAxesSpanned> <sequenceRule axisOrder="+1">Linear</sequenceRule> </GeneralGridAxis> </generalGridAxis> </ReferenceableGridByVectors> </domainSet>
- WCS slicing:
...subset=Lat(40,41),subset=Long(9,10.5),subset=h(245)...
<domainSet> <ReferenceableGridByVectors id="6b-SO_s" dimension="2" uomLabels="DMSH DMSH" srsDimension="2" srsName="http://rasdaman.org:8080/def/crs/EPSG/0/4327?axes='Lat,Long'"> <limits> <GridEnvelope> <low>0 0</low> <high>2 3</high> </GridEnvelope> </limits> <axisLabels>0 1</axisLabels> <origin> <Point id="O"> <pos>40 9</pos> </Point> </origin> <generalGridAxis> <GeneralGridAxis> <!-- regularly spaced northing --> <offsetVector>0.5 0</offsetVector> <gridAxesSpanned>0</gridAxesSpanned> </GeneralGridAxis> </generalGridAxis> <generalGridAxis> <GeneralGridAxis> <!-- regularly spaced easting --> <offsetVector>0 0.5</offsetVector> <gridAxesSpanned>1</gridAxesSpanned> </GeneralGridAxis> </generalGridAxis> </ReferenceableGridByVectors> </domainSet>
6b-RTS
6b-ITS
6b-MRTS
6b-MITS
Case 6c
… with irregular XYH spacing.
6c-SO
GML coverage type | GML domainSet | native CRS | CRS dim |
ReferenceableGridCoverage | ReferenceableGridByVectors | SpatialCRS | 3D |
- WCS trimming:
...subset=Lat(40,41.5),subset=Long(9,11.5),subset=h(200,305)...
<domainSet> <ReferenceableGridByVectors id="6c-SO_t" dimension="3" uomLabels="DMSH DMSH metre" srsDimension="3" srsName="http://rasdaman.org:8080/def/crs/EPSG/0/4327"> <limits> <GridEnvelope> <low>0 0 0</low> <high>2 3 4</high> </GridEnvelope> </limits> <axisLabels>0 1</axisLabels> <origin> <Point id="O"> <pos>40 9 200</pos> </Point> </origin> <generalGridAxis> <GeneralGridAxis> <offsetVector>0.5 0 0</offsetVector> <coefficients>0 1 3</coefficients> <gridAxesSpanned>0</gridAxesSpanned> <sequenceRule axisOrder="+1">Linear</sequenceRule> </GeneralGridAxis> </generalGridAxis> <generalGridAxis> <GeneralGridAxis> <offsetVector>0 0.5 0</offsetVector> <coefficients>0 3 4 5</coefficients> <gridAxesSpanned>1</gridAxesSpanned> <sequenceRule axisOrder="+1">Linear</sequenceRule> </GeneralGridAxis> </generalGridAxis> <generalGridAxis> <GeneralGridAxis> <offsetVector>0 0 15</offsetVector> <coefficients>0 3 4 6 7</coefficients> <gridAxesSpanned>2</gridAxesSpanned> <sequenceRule axisOrder="+1">Linear</sequenceRule> </GeneralGridAxis> </generalGridAxis> </ReferenceableGridByVectors> </domainSet>
- WCS slicing:
...subset=Lat(40,41.5),subset=Long(9,11.5),subset=h(245)...
<domainSet> <ReferenceableGridByVectors id="6b-SO_s" dimension="2" uomLabels="DMSH DMSH" srsDimension="2" srsName="http://rasdaman.org:8080/def/crs/EPSG/0/4327?axes='Lat,Long'"> <limits> <GridEnvelope> <low>0 0</low> <high>2 3</high> </GridEnvelope> </limits> <axisLabels>0 1</axisLabels> <origin> <Point id="O"> <pos>40 9</pos> </Point> </origin> <generalGridAxis> <GeneralGridAxis> <offsetVector>0.05 0</offsetVector> <coefficients>0 1 3</coefficients> <gridAxesSpanned>0</gridAxesSpanned> <sequenceRule axisOrder="+1">Linear</sequenceRule> </GeneralGridAxis> </generalGridAxis> <generalGridAxis> <GeneralGridAxis> <offsetVector>0 0.05</offsetVector> <coefficients>0 3 4 5</coefficients> <gridAxesSpanned>1</gridAxesSpanned> <sequenceRule axisOrder="+1">Linear</sequenceRule> </GeneralGridAxis> </generalGridAxis> </ReferenceableGridByVectors> </domainSet>
6c-RTS
6c-ITS
6c-MRTS
6c-MITS
Case 6d
… with curvilinear axes (warped cube).
6d-SO
GML coverage type | GML domainSet | native CRS | CRS dim |
ReferenceableGridCoverage | ReferenceableGridByArray | SpatialCRS | 3D |
- WCS trimming:
...subset=Lat(40,41),subset=Long(9,10),subset=h(200,295)...
<domainSet> <ReferenceableGridByArray gml:id="6d-SO_t" dimension="3" uomLabels="DMSH DMSH metre" srsDimension="3" srsName="http://rasdaman.org:8080/def/crs/EPSG/0/4327"> <limits> <GridEnvelope> <low>0 0 0</low> <high>2 3 1</high> </GridEnvelope> </limits> <axisLabels>0 1 2</axisLabels> <posList> 40 9.2 200 40.1 9.3 200 40.3 9.5 210 40.1 9.3 205 40.3 9.5 220 40.4 9.7 225 40.4 9.4 215 40.7 9.7 225 40.8 9.8 235 40.6 9.5 220 40.8 9.7 230 40.9 9.9 240 40.0 9.1 205 40.1 9.2 210 40.4 9.6 230 40.2 9.5 220 40.2 9.4 240 40.7 9.7 240 40.5 9.7 225 40.5 9.6 245 40.8 9.8 285 40.7 9.8 230 40.6 9.8 290 41 10 295 </posList> <sequenceRule axisOrder="+1 +2 +3">Linear</sequenceRule> </ReferenceableGridByArray> <\domainSet>
- WCS slicing:
...subset=Lat(40,41),subset=Long(9,10),subset=h(200,295)...
…?
6d-RTS
6d-ITS
6d-MRTS
6d-MITS
Case 6e
… warped cube, and 2 (real+simulation) time axes.
6e-RTS
GML coverage type | GML domainSet | native CRS | CRS dim |
ReferenceableGridCoverage | ReferenceableGridByArrayAndVectors | SpatialCRS+TemporalCRS+TemporalCRS | 5D |
- WCS trimming:
...subset=Lat(40,41),subset=Long(9,10),subset=h(200,300),subset=t("2013-01-06","2013-01-09"),subset=t_sim("2013-02-06","2013-02-09")...
<domainSet> <ReferenceableGridByArrayAndVectors gml:id="6e-SO_t" dimension="5" uomLabels="DMSH DMSH metre d d" srsDimension="5" srsName="http://rasdaman.org:8080/def/crs-compound? 1=http://rasdaman.org:8080/def/crs/EPSG/0/4327& 2=http://rasdaman.org:8080/def/crs/OGC/0/AnsiDate 3=http://rasdaman.org:8080/def/crs/OGC/0/AnsiDate?axis-label='t_sim'"> <limits> <GridEnvelope> <low>0 0 0 0 0</low> <high>2 3 1 1 1</high> </GridEnvelope> </limits> <axisLabels>0 1 2 3 4</axisLabels> <posList> 40 9.2 200 150486 150517 40.1 9.3 200 150486 150517 40.3 9.5 210 150486 150517 40.1 9.3 205 150486 150517 40.3 9.5 220 150486 150517 40.4 9.7 225 150486 150517 40.4 9.4 215 150486 150517 40.7 9.7 225 150486 150517 40.8 9.8 235 150486 150517 40.6 9.5 220 150486 150517 40.8 9.7 230 150486 150517 40.9 9.9 240 150486 150517 40.0 9.1 205 150486 150517 40.1 9.2 210 150486 150517 40.4 9.6 230 150486 150517 40.2 9.5 220 150486 150517 40.2 9.4 240 150486 150517 40.7 9.7 240 150486 150517 40.5 9.7 225 150486 150517 40.5 9.6 245 150486 150517 40.8 9.8 285 150486 150517 40.7 9.8 230 150486 150517 40.6 9.8 290 150486 150517 41 9.9 295 150486 150517 </posList> <gmlrgrid:gridAxesSpanned>0 1 2</gmlrgrid:gridAxesSpanned> <sequenceRule axisOrder="+1 +2 +3">Linear</sequenceRule> <gmlrgrid:generalGridAxis> <gmlrgrid:GeneralGridAxis> <!-- "Real" time axis (regular intervals of three days) --> <offsetVector>0 0 0 3 0</offsetVector> <gmlrgrid:gridAxesSpanned>3</gmlrgrid:gridAxesSpanned> </gmlrgrid:GeneralGridAxis> </gmlrgrid:generalGridAxis> <gmlrgrid:generalGridAxis> <gmlrgrid:GeneralGridAxis> <!-- "Simulation" time axis (regular intervals of three days) --> <offsetVector>0 0 0 0 3</offsetVector> <gmlrgrid:gridAxesSpanned>4</gmlrgrid:gridAxesSpanned> </gmlrgrid:GeneralGridAxis> </gmlrgrid:generalGridAxis> </ReferenceableGridByArrayAndVectors> <\domainSet>
- WCS slicing: