WCPS-Manual / sliceExpr

The sliceExpr element extracts a spatial slice (i.e., a hyperplane) from a given coverage expression along one of its axes, specified by one or more slicing axes and a slicing posi-tion thereon. For each slicing axis indicated, the resulting coverage has a dimension re-duced by 1; its axes are the axes of the original coverage, in the same sequence, with the section axis being removed from the list. CRSs not used by any remaining axis are re-moved from the coverage's CRS set.

The slicing coordinates **shall** lie inside the coverage's domain.

For syntactic convenience, both array-style addressing using brackets and function-style syntax are provided; both are equivalent in semantics.

Let

C_{1} be a coverageExpr,

n be an **integer** with 0
≤ n,

a_{1}, ... , a_{n} be pairwise
distinct **axisName**s with a_{i} ∈
axisNameSet(C_{1}) for 1 ≤ i ≤
n,

crs_{1}, ... , crs_{n} be pairwise
distinct **crsName**s with crs_{i}
∈ crsList(C_{1}) for 1 ≤ i
≤ n,

s_{1}, ... , s_{n} be
**axisPoint**s for 1 ≤ i ≤ n.

Then,

for any coverageExpr
C_{2}

where C_{2} is one of

with

Note: A server **may** decide to restrict the
CRSs available on the result, as not all CRSs may be appropriate any more.

Note: In a future version of this document this function is likely to be .extended with multi-dimensional slicing.

The following are syntactically valid, equivalent slice expressions:

C[ x(120) ] slice( C, { x(120) } )