Register binding


Introduction

With the register binding a user can register a new sensor with the raw sensor description via HTTP POST. The SOS then fetches the necessary information from the sensor description. But it is also possible to force some information via parameter in the URL.

URL parameter

In the following table the supported parameters are described.

parameter value definition
procedure single The procedure identifier
offering multi The offering identifier(s)
observableProperty multi The observableProperty identifier(s)
observationType multi The observationType(s)
featureOfInterestType multi The featureOfInterestType(s)
isType single, should be true Indicator if the description is a sensor type,

multi = a single or comma separated values.

Example:

.../service/register?procedure=123&offering=321&observableProperty=obsProp-1,obsProp-2

Information fetching

If no URL parameters defined the SOS tries to fetch the required information from the sensor description (currently only supported for SensorML 1.0.1/2.0) or uses default values.

Procedure identifier

The procedure identifier will be fetched from the
  • gml:identifier with codeSpace="uniqueID" (SensorML 2.0 only)
  • sml:identification with
    • [...]
      <sml:identification>
        <sml:IdentifierList>
          <sml:identifier name="uniqueID">
            <sml:Term definition="urn:ogc:def:identifier:OGC:1.0:uniqueID">
              <sml:value>http://www.52north.org/test/procedure/9</sml:value>
            </sml:Term>
          </sml:identifier>
        </sml:identification>
      </sml:IdentifierList>
      [...]

Offering identifier(s)

The offering identifier(s) will be fetched from the sml:capabilities

SensorML 1.0.1

<sml:capabilities name="offerings">
  <!-- Special capabilities used to specify offerings. -->
  <!-- Parsed and removed during InsertSensor/UpdateSensorDescription, added during DescribeSensor. -->
  <!-- Offering is generated if not specified. -->
  <swe:SimpleDataRecord>
    <!-- Field name or gml:name is used for the offering's name -->
    <swe:field name="Offering for sensor 9">
      <swe:Text definition="urn:ogc:def:identifier:OGC:offeringID">
        <gml:name>Offering for sensor 9</gml:name>
        <swe:value>http://www.52north.org/test/offering/9</swe:value>
      </swe:Text>
    </swe:field>
  </swe:SimpleDataRecord>
</sml:capabilities>

SensorML 2.0

<sml:capabilities name="offerings">
  <sml:CapabilityList>
    <!-- Special capabilities used to specify offerings. -->
    <!-- Parsed and removed during InsertSensor/UpdateSensorDescription, added during DescribeSensor. -->
    <!-- Offering is generated if not specified. -->
    <sml:capability name="offeringID">
      <swe:Text definition="urn:ogc:def:identifier:OGC:offeringID">
        <swe:label>offeringID</swe:label>
        <swe:value>http://www.52north.org/test/offering/9</swe:value>
      </swe:Text>
    </sml:capability>
  </sml:CapabilityList>
</sml:capabilities>

ObservableProperty

The SOS checks the sml:outputs for observableProperties and fetches the identifier in the following order:
  1. gml:identifier (SensorML 2.0 only)
  2. definition attribute
  3. name attribute of or of a swe:DataRecord if the sml:output element is a swe:DataRecord

ObservationType(s)

The SOS checks the sml:outputs element types to get the valid observationType, e.g.
  • swe:Quantity -> http://www.opengis.net/def/observationType/OGC-OM/2.0/OM_Measurement

FeatureOfInterestTyp(s)

The SOS sets all supported featureOfInterestTypes.

Back to main SOS page
Topic revision: r2 - 12 May 2016, CarstenHollmann
Legal Notice | Privacy Statement


This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Wiki? Send feedback