You are here: Wiki>SensorWeb Web>SensorObservationService>WildcardOffering (21 Nov 2012, CarstenHollmann)Edit Attach

Wildcard Offering extension

The Wildcard Offering extension allows to manage offerings via requests. This includes creating new offerings, update offerings and delete offerings. The requests are sent as KVP requests via HTTP-GET and the service returns JSON encoded responses.

Introduction

The Wildcard Offering extensions uses the Administration extension which offers a KVP interface via HTTP-GET requests. The Wildcard Offering extension adds the support for the following managment requests:
  • exists an offering
  • get offering information
  • create a new offering
  • update an offering
  • delete an offering

In the following sections the requests are described in detail.

Requests and responses

This section describes the Wildcard Offering extension requests in detail. The default URL is http:\\HOSTNAME:PORT\SOS_NAME\admin + the parameters defined in the following subsections.

Check for existing offering

With this request you can check if an offering exists in the SOS. The two mandatory parameters are:
parameter value description
request OfferingExists The identifier for the request type
id THE_OFFERING_ID The offering identifier to check

Here is an exmaple of the request:
/admin?request=OfferingExists&id=THE_OFFERING_ID

The returned response looks like this:
true

Get offering information

parameter value description
request GetOffering The identifier for the request type
id THE_OFFERING_ID The offering identifier to get information for
Here is an exmaple of the request:
/admin?request=GetOffering&id=THE_OFFERING_ID

The returned response looks like this:
{"id":"WATER_SPEED","name":"The waterspeed at a gage in a river", "allProcedures":true, "allObservedProperties":false, "allFeaturesOfInterest":true, "procedures":["urn:ogc:object:feature:Network:IFGI:ifgi-network-1","urn:ogc:object:feature:Sensor:IFGI:ifgi-sensor-2","urn:ogc:object:feature:Sensor:IFGI:ifgi-sensor-1","urn:ogc:object:feature:Station:IFGI:ifgi-station-1","urn:ogc:object:feature:Sensor:All-Types-Station"], "observedProperties":["urn:ogc:def:phenomenon:OGC:1.0.30:waterspeed"], "featuresOfInterest":["foi_1001","foi_2001","AllTypesFoi"]}

Create a new offering

parameter value description
request CreateOffering The identifier for the request type
id THE_OFFERING_ID The offering identifier
name THE_OFFERING_ID The offering name
allProcedures true/false Set true if all procedures should relate to the offering. If false, this parameter can be omitted
procedures PROCEDURE_IDs Comma separated list of related procedure ids. If allProcedures=true, this parameter can be omitted
allFeaturesOfInterest true/false Set true if all featuresOfInterest should relate to the offering. If false, this parameter can be omitted
featuresOfInterest FEATURE_OF_INTEREST_IDs Comma separated list of related featureOfInterest ids.If allFeaturesOfInterest=true, this parameter can be omitted
allObservedProperties true/false Set true if all observedProperties should relate to the offering. If false, this parameter can be omitted
observedProperties OBSERVED_PROPERTY_IDs Comma separated list of related observedProperty ids. If allObservedProperties=true, this parameter can be omitted

Here is an exmaple of the request:
/admin?request=CreateOffering&id=THE_OFFERING_ID&name=The name&allProcedures=true&allFeaturesOfInterest=true&observedProperties=urn:ogc:def:phenomenon:OGC:1.0.30:waterlevel,urn:ogc:def:phenomenon:OGC:1.0.30:waterspeed

The returned response looks like this:
"Offering THE_OFFERING_ID created"

Update an offering

parameter value description
request UpdateOffering The identifier for the request type
id THE_OFFERING_ID The offering identifier
name THE_OFFERING_ID The offering name
allProcedures true/false Set true if all procedures should relate to the offering. If false, this parameter can be omitted
procedures PROCEDURE_IDs Comma separated list of related procedure ids. If allProcedures=true, this parameter can be omitted
allFeaturesOfInterest true/false Set true if all featuresOfInterest should relate to the offering. If false, this parameter can be omitted
featuresOfInterest FEATURE_OF_INTEREST_IDs Comma separated list of related featureOfInterest ids.If allFeaturesOfInterest=true, this parameter can be omitted
allObservedProperties true/false Set true if all observedProperties should relate to the offering. If false, this parameter can be omitted
observedProperties OBSERVED_PROPERTY_IDs Comma separated list of related observedProperty ids. If allObservedProperties=true, this parameter can be omitted

Here is an exmaple of the request:
/admin?request=UpdateOffering&id=THE_OFFERING_ID&name=New name&allProcedures=true&allFeaturesOfInterest=true&allObservedProperties=true

The returned response looks like this:
"Offering THE_OFFERING_ID updated"

Delete an offering

parameter value description
request DeleteOffering The identifier for the request type
id THE_OFFERING_ID The offering identifier for the offering to delete

Here is an exmaple of the request:
/admin?request=DeleteOffering&id=THE_OFFERING_ID

The returned response looks like this:
"Offering THE_OFFERING_ID deleted"

Exceptions

If an invalid request is send or an error occurs during the processing a OWS exception is returned encoded in XML. Here is an example of an exception:
<?xml version="1.0" encoding="UTF-8"?>
<ows:ExceptionReport xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="0.0.1" xsi:schemaLocation="http://www.opengis.net/ows/1.1 http://schemas.opengis.net/ows/1.1.0/owsAll.xsd">
  <ows:Exception exceptionCode="InvalidRequest" locator="SosAdmin">
    <ows:ExceptionText>Offering THE_OFFERING_ID doesn't exist</ows:ExceptionText>
  </ows:Exception>
</ows:ExceptionReport>

Metadata

Topic revision: r2 - 21 Nov 2012, 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