Learn R Programming

sos4R (version 0.4.2)

DescribeSensor: Retrieve Sensor Descriptions from a SOS

Description

The DescribeSensor operation of a Sensor Observation Service can be used to retrieve metadata of procedures that are available from a SOS. This sensor description is normally encoded in SensorML.

The method describeSensor(..) sends a DescribeSensor request for a description of the given procedure to the given Sensor Observation Service instance. If the procedure is a vector, the method will send multiple requests and combine the results in a list.

Please also consult the specification for details on possible contents of the request.

This functions should not be called directly, but instead using the function describeSensor.

Usage

describeSensor(sos, procedure, outputFormat, validTime, verbose, inspect, saveOriginal)

# internal constructors: # exactly one of outputFormat or procedureDescriptionFormat must be used SosDescribeSensor(service, version, procedure, outputFormat = NA_character_, procedureDescriptionFormat = NA_character_, validTime = NULL)

Arguments

service

The service attribute of the request, e.g. SOS.

sos

The SOS connection to use.

version

The version attribute of the request, e.g. 1.0.0.

procedure

The value of the procedure elements in the request, e.g. urn:procedure:42.

outputFormat

The value of the output format element in the request, e.g. text/xml;subtype="sensorML/1.0.1".

procedureDescriptionFormat

The desired description format for the procedure, e.g. http://www.opengis.net/sensorML/1.0.1. For using facing function describeSensor(..) the value of outputFormat is used.

validTime

An object of class GmlTimeObject, either a time instant or time period for which the returned description shall be valid; use functions sosCreateTimePeriod(..) and sosCreateTimeInstant(..) to create this parameter.

verbose

A boolean value indicating whether debug information is printed out to the console during the execution.

inspect

A boolean value to enable printing of the sent request and received response to the console.

saveOriginal

Save the received document to the current working directory. If TRUE a filename is automatically generated, if a character string is given it is used as the filename.

Value

The value of the construction function is an object of class SosDescribeSensor-class

Objects from the Class

Objects can be created by calling the construction function of the form DescribeSensor(...). The contain the procedure identifier that is to be described by a service.

Methods

signature(sos = "SOS", procedure = "character")

Method requests a description of the given procedure(s) from the given SOS.

Slots

procedure:

Object of class "character", the identifier of the procedure.

outputFormat:

Object of class "character", the requested output format.

procedureDescriptionFormat:

Object of class "character", the requested description format.

validTime:

Object of class "GmlTimeObject", the time instant or period for which the description shall be valid.

service:

Object of class "character", the service type, e.g. "SOS".

request:

Object of class "character", the name of the request, "DescribeSensor".

version:

Object of class "character", the service version, e.g. "1.0.0"

Extends

Class "'>OwsServiceOperation", directly.

Methods

encodeRequestKVP

signature(obj = "DescribeSensor"): Encode the information in the request as key-value-pairs for HTTP GET connections, see encodeRequestKVP-methods.

encodeRequestSOAP

signature(obj = "DescribeSensor"): Encode the information in the request as XML for SOAP connections, see encodeRequestSOAP-methods.

encodeRequestXML

signature(obj = "DescribeSensor"): Encode the information in the request as XML for HTTP POST connections, see encodeRequestXML-methods.

show

signature(object = "DescribeSensor"): Show a human readable excerpt of the contents of the object.

References

See OGC 06-009r6 section 8.4, or the XSD schema file at http://schemas.opengis.net/sos/1.0.0/sosDescribeSensor.xsd.

See Also

See Also SensorML and describeSensor.

Examples

Run this code
# NOT RUN {
showClass("SosDescribeSensor")

# example for construction function
describeSensorRequest <- SosDescribeSensor(service = "SOS", version = "1.0.0",
	procedure = "urn:procedure:42", outputFormat = "text/xml")
print(describeSensorRequest)

# encode the request in XML
sos <- SOS_Test()
encodeRequestXML(describeSensorRequest, sos)
toString(encodeRequestXML(describeSensorRequest, sos))

# }
# NOT RUN {
# request a sensor description
mySOS <- SOS(url = "http://sensorweb.demo.52north.org/sensorwebtestbed/service/kvp",
             binding = "KVP")
mySensor <- describeSensor(sos = mySOS,
		procedure = sosProcedures(mySOS)[[1]],
		outputFormat = 'text/xml; subtype="sensorML/1.0.1"', # space is needed!
		)
# }
# NOT RUN {
# }

Run the code above in your browser using DataLab