Opened 16 years ago

Closed 16 years ago

#2561 closed defect (fixed)

A GetObservation request with an invalid procedure value sent to a SOS 1.0.0 server must return an exception

Reported by: nsavard Owned by: tomkralidis
Priority: normal Milestone: 5.2 release
Component: SOS Server Version: svn-trunk (development)
Severity: normal Keywords: OGC, Cite, TEAM, SOS 1.0.0
Cc: assefa

Description

An invalid procedure in a GetObservation request sent to a SOS 1.0.0 server must return an exception. Actually all observations are returned.

The exceptionCode must be "InvalidParameterValue" and the locator "procedure".

You can test is with the following client application:

http://dev1.lan.mapgears.com/manwe/post-tests/

The CITE test is: getObservation:core-SOS.GetObservation-RequestInvalidProcedure.1 (s0003)

The request is:

URL: http://dev1.lan.mapgears.com/manwe/cgi-bin/mssos100_ogc_cite?
Body: 
<GetObservation xmlns="http://www.opengis.net/sos/1.0" xmlns:ogc="http://www.opengis.net/ogc"
                xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                xmlns:ctl="http://www.occamlab.com/ctl"
                xmlns:parsers="http://www.occamlab.com/te/parsers"
                xmlns:xows="http://www.opengeospatial.net/ows"
                xmlns:xi="http://www.w3.org/2001/XInclude"
                xmlns:html="http://www.w3.org/1999/xhtml"
                xmlns:sos="http://www.opengis.net/sos/1.0"
                xmlns:xsd="http://www.w3.org/2001/XMLSchema"
                xmlns:te="java:com.occamlab.te.TECore"
                xmlns:sosFunctions="https://cite.opengeospatial.org/sos-1.0.0/src/ctl/functions.xml"
                xmlns:xlink="http://www.w3.org/1999/xlink"
                xmlns:getObservation="https://cite.opengeospatial.org/sos-1.0.0/src/ctl/GetObservation.xml"
                xmlns:gml="http://www.opengis.net/gml"
                xmlns:tml="http://www.opengis.net/tml"
                xmlns:om="http://www.opengis.net/om/1.0"
                xmlns:ows="http://www.opengis.net/ows/1.1"
                xmlns:tep="http://teamengine.sourceforge.net/parsers"
                service="SOS"
                version="1.0.0"
                xsi:schemaLocation="http://www.opengis.net/sos/1.0           http://schemas.opengis.net/sos/1.0.0/sosGetObservation.xsd">
         <offering>Water</offering>
         <procedure>urn:ogc:object:procedure:CITE:WeatherService:ThisIsInvalid</procedure>
         <observedProperty>WaterQuality</observedProperty>
         <responseFormat>text/xml; subtype=om/1.0.0</responseFormat>
      </GetObservation>

Change History (6)

comment:1 by nsavard, 16 years ago

I made a copy/paste mistake. Sorry.

"Actually all observations are returned." should read:

"Actually only the observations bbox is returned."

comment:2 by tomkralidis, 16 years ago

Owner: changed from mapserverbugs to tomkralidis
Status: newassigned

comment:3 by tomkralidis, 16 years ago

Cc: assefa added

Working on this. When sos_procedure is defined, this is implemented (not committed).

From Assefa: """

2- if sos_procedure is not set and sos_procedure_item is set, then we

need to query the layer and loop through the features (until you find one, or until the end of the feature list) to find if the value of the attribute (procedure_item) is equal to the value of the procedure passed in the request.

This can be costly, but that is what we do when we advertise the

procedures in the capabilities (around line 1522) """

comment:4 by tomkralidis, 16 years ago

Fixed:

Props to Assefa for advisory.

Norm: can you test and verify?

comment:5 by nsavard, 16 years ago

This is fixed.

comment:6 by tomkralidis, 16 years ago

Resolution: fixed
Status: assignedclosed
Note: See TracTickets for help on using tickets.