Introduction
One method of obtaining metadata that describes the characteristics of an observation procedure (sensor or sensor constellation) is to retrieve it from a catalog. However, a catalog may only contain high-level information about the observable properties, locations, contact information, etc. Due to the possibly voluminous amounts of sensor related metadata, the “describe” operations support retrieval of the highest level of detail about the platforms and sensors associated with an SOS.
DescribeSensor is designed to request detailed sensor metadata. Likewise, the response to a
GetCapabilities request could provide a list of sensors associated with an SOS. Sensors are devices for the measurement of physical quantities. Both Sensor Model Language (
SensorML) and Transducer Markup Language (TML) provide a detailed definition of a sensor for In-situ and Remote Sensors specification. For the purpose of this discussion, there are two main kinds of sensor, in-situ and remotedynamic. The
DescribeSensor operation is useful for obtaining detailed information of sensor characteristics encoded in either
SensorML or TML. The sensor characteristics can include lists and definitions of observables supported by the sensor. The
SensorML and TML specifications detail the response model for the
DescribeSensor operation. (SOS-Spec, OGC 06-009r6)
The current version of the SOS supports HTTP POST requests as well as HTTP GET requests for
DescribeSensor operation.
Examples HTTP POST
<?xml version="1.0" encoding="UTF-8"?>
<DescribeSensor version="1.0.0" service="SOS" mobileEnabled="true" xmlns="http://www.opengis.net/sos/1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opengis.net/sos/1.0 http://schemas.opengis.net/sos/1.0.0/sosDescribeSensor.xsd" outputFormat="text/xml;subtype="sensorML/1.0.1"">
<procedure>urn:ogc:object:feature:Sensor:IFGI:ifgi-sensor-1</procedure>
</DescribeSensor>
<?xml version="1.0" encoding="UTF-8"?>
<DescribeSensor version="1.0.0" service="SOS" xmlns="http://www.opengis.net/sos/1.0"
xmlns:ogc="http://www.opengis.net/ogc" xmlns:gml="http://www.opengis.net/gml"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opengis.net/sos/1.0 http://schemas.opengis.net/sos/1.0.0/sosDescribeSensor.xsd" outputFormat="text/xml;subtype="sensorML/1.0.1"">
<procedure>urn:ogc:object:feature:Sensor:IFGI:ifgi-sensor-3</procedure>
<time>
<ogc:TM_After>
<ogc:PropertyName>om:samplingTime</ogc:PropertyName>
<gml:TimeInstant>
<gml:timePosition>2008-04-01T17:44:15+02</gml:timePosition>
</gml:TimeInstant>
</ogc:TM_After>
</time>
</DescribeSensor>
<?xml version="1.0" encoding="UTF-8"?>
<DescribeSensor version="1.0.0" service="SOS" xmlns="http://www.opengis.net/sos/1.0"
xmlns:gml="http://www.opengis.net/gml"
xmlns:ogc="http://www.opengis.net/ogc"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opengis.net/sos/1.0 http://schemas.opengis.net/sos/1.0.0/sosDescribeSensor.xsd" outputFormat="text/xml;subtype="sensorML/1.0.1"">
<procedure>urn:ogc:object:feature:Sensor:IFGI:ifgi-sensor-3</procedure>
<time>
<ogc:TM_During>
<ogc:PropertyName>om:samplingTime</ogc:PropertyName>
<gml:TimePeriod>
<gml:beginPosition>2008-03-01T17:44:15+00</gml:beginPosition>
<gml:endPosition>2008-05-01T17:50:15+00</gml:endPosition>
</gml:TimePeriod>
</ogc:TM_During>
</time>
</DescribeSensor>
For more information about the supportet time filters look at
SensorObservationService main page or at the SOS specification.
Examples HTTP GET
The following parameters are supported:
Parameter |
Name |
Definition |
Multiplicity and Use of the Parameter |
request |
operation name |
DescribeSensor |
One (mandatory) |
procedure |
process or sensor system, for which the description should be returned |
anyURI |
One (mandatory) |
service |
service type identifier |
SOS |
One (mandatory) |
version |
specification version of the SOS accepted by client |
1.0.0 |
One (mandatory) |
outputFormat |
specifies the desired output format |
text/xml;subtype=sensorML/1.0.1 |
One (mandatory) |
The abstract
DescribeSensor GET request looks like this:
http://SERVERNAME:PORT/SOS_WEBAPP_NAME/sos?REQUEST=DescribeSensor&SERVICE=SOS&VERSION=1.0.0&PROCEDURE=[anyURI]&OUTPUTFORMAT=text/xml;subtype=sensorML/1.0.1
On your local computer with default tomcat installation and no change of the SOS webapp name the request is like:
http://localhost:8080/52nSOSv3/sos?REQUEST=DescribeSensor&SERVICE=SOS&VERSION=1.0.0&PROCEDURE=[anyURI]&OUTPUTFORMAT=text/xml;subtype=sensorML/1.0.1
The attributes of the
DescribeSensor request are detailed in the Table 3 of the Sensor Observation Service specification 1.0 (OGC 06-009r6).
--
StephanKuenster - 26 Jun 2009