DescribeSensor.RdThe 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.
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)
| 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 |
| validTime | An object of class |
| 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 |
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.
signature(sos = "SOS", procedure = "character")Method requests a description of the given procedure(s) from the given SOS.
The value of the construction function is an object of class SosDescribeSensor-class
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"
Class "OwsServiceOperation", directly.
signature(obj = "DescribeSensor"): Encode the information in the request as key-value-pairs for HTTP GET connections, see encodeRequestKVP-methods.
signature(obj = "DescribeSensor"): Encode the information in the request as XML for SOAP connections, see encodeRequestSOAP-methods.
signature(obj = "DescribeSensor"): Encode the information in the request as XML for HTTP POST connections, see encodeRequestXML-methods.
signature(object = "DescribeSensor"): Show a human readable excerpt of the contents of the object.
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 SensorML and describeSensor.
showClass("SosDescribeSensor")#> Class "SosDescribeSensor" [package "sos4R"] #> #> Slots: #> #> Name: procedure outputFormat #> Class: character character #> #> Name: procedureDescriptionFormat validTime #> Class: character GmlTimeObjectOrNULL #> #> Name: service request #> Class: character character #> #> Name: version #> Class: character #> #> Extends: "OwsServiceOperation"# example for construction function describeSensorRequest <- SosDescribeSensor(service = "SOS", version = "1.0.0", procedure = "urn:procedure:42", outputFormat = "text/xml") print(describeSensorRequest)#> Object of class SosDescribeSensor: service: SOS , version: 1.0.0 , outputFormat: text/xml #> Procedure: urn:procedure:42 #> procedureDescriptionFormat: NA #> validTime:#> {xml_document} #> <DescribeSensor service="SOS" outputFormat="text/xml" version="1.0.0" xmlns="http://www.opengis.net/sos/1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> #> [1] <procedure>urn:procedure:42</procedure>#> [1] "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<DescribeSensor xmlns=\"http://www.opengis.net/sos/1.0\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" service=\"SOS\" outputFormat=\"text/xml\" version=\"1.0.0\">\n <procedure>urn:procedure:42</procedure>\n</DescribeSensor>\n"if (FALSE) { # 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! ) }