Opened 11 years ago

Closed 10 years ago

#281 closed defect (fixed)

WCS GML response when all dimensions of a coverage are sliced

Reported by: Piero Campalani Owned by: Piero Campalani
Priority: critical Milestone: 9.0.x
Component: petascope Version: 9.0
Keywords: gml slice 0D Cc: Dimitar Misev, abeccati, Peter Baumann
Complexity: Medium

Description

Currently, when all dimensions are sliced in a WCS GetCoverage, the gml:Envelope (in the geo-domain) and gml:GridEnvelope (in the pixel-domain) report the whole bbox of the coverage.

See:

http://localhost:8080/petascope/?service=WCS&version=2.0.0&request=GetCoverage&coverageid=mean_summer_airtemp&subset=x(115)&subset=y(-40)

As metadata on dimensions which are sliced is removed from a response, the problem is how to report a 0D single-pixel coverage in a GML response when all dimensions are sliced in the request.

Change History (13)

comment:1 by Piero Campalani, 11 years ago

Keywords: gml slice 0D added

comment:2 by abeccati, 11 years ago

Milestone: 9.08.4

comment:3 by Piero Campalani, 11 years ago

Our proposed solution is to set the dimension attribute of the grid to 0 and simply leave the topology completely empty, removing the optional attributes (like srsName, srsDimension, etc.), like in the following example:

<gmlcov:RectifiedGridCoverage
    xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'
    xmlns='http://www.opengis.net/gml/3.2'
    xmlns:gml='http://www.opengis.net/gml/3.2'
    xmlns:gmlcov='http://www.opengis.net/gmlcov/1.0'
    xmlns:swe='http://www.opengis.net/swe/2.0'
    xmlns:wcs='http://www.opengis.net/wcs/2.0' gml:id="ID"
    xsi:schemaLocation= 'http://www.opengis.net/wcs/2.0 http://schemas.opengis.net/wcs/2.0/wcsAll.xsd'>

  <domainSet>
    <RectifiedGrid dimension="0" gml:id="ID">
      <limits>
        <GridEnvelope>
          <low></low>
          <high></high>
        </GridEnvelope>
      </limits>
      <axisLabels></axisLabels>
    <gml:origin>
        <gml:Point gml:id="ID">
            <gml:pos></gml:pos>
        </gml:Point>
    </gml:origin>
    <gml:offsetVector></gml:offsetVector>
    </RectifiedGrid>
  </domainSet>

  <rangeSet>
    <DataBlock>
      <rangeParameters/>
      <tupleList>54</tupleList>
    </DataBlock>
  </rangeSet>

  <gmlcov:rangeType>
   ...  
  </gmlcov:rangeType>
</gmlcov:RectifiedGridCoverage>

comment:4 by Piero Campalani, 11 years ago

The 'dimension' attribute must be >0, so this notation is not valid.
Still discussing whether to throw an exception or not in this case.

comment:5 by Peter Baumann, 11 years ago

Type: taskdefect

So, bottom line: for extracting values someone might want to do that, but current GML definition does not allow it. Suggest to return a 0D coverage, for user convenience, and accept that it will violate a minor GML coverage rule.

comment:6 by Piero Campalani, 11 years ago

Resolution: fixed
Status: newclosed

Ticket addressed in changeset:8a14df2.

Last edited 10 years ago by Piero Campalani (previous) (diff)

comment:7 by Piero Campalani, 10 years ago

Complexity: Very Hard
Resolution: fixed
Status: closedreopened

Re-opening since full-slicing is broken on referenceable grids.

comment:8 by Piero Campalani, 10 years ago

Complexity: Very HardMedium
Milestone: 8.49.0.x
Status: reopenedaccepted
Version: 8.39.0.0

comment:9 by Piero Campalani, 10 years ago

Resolution: fixed
Status: acceptedclosed

0D GML encoding for referenceable grids fixed in changeset:d5eca14.

comment:10 by Piero Campalani, 10 years ago

Resolution: fixed
Status: closedreopened

Re-opening as:

  • having dimension attribute to 0 is not complaint, as said already in comment:4
  • it seems a valid (compliant) and also more elegant solution to provide an empty domain set in case of 0-dimensional coverage.

comment:11 by Piero Campalani, 10 years ago

Status: reopenedaccepted

comment:12 by Piero Campalani, 10 years ago

Priority: minorcritical

Raising priority since this breaks WCS compliance (patch submitted already anyway).

comment:13 by Piero Campalani, 10 years ago

Resolution: fixed
Status: acceptedclosed

0D domain set fixed in changeset:2cd0654.

Note: See TracTickets for help on using tickets.