1 Web Service Interface Standards Dr. Simon Jirka
Overview 2 Providing Access to Observation Data OGC Sensor Observation Service Controlling Sensors OGC Sensor Planning Service Event Notification
SOS 3
SOS Overview 4 Access to sensor data Consistent interface and data format for all kinds of sensors Returns O&M Contrast to WFS: no generic schemas Interoperability A priori-knowledge SOS 1 0 SOS 1.0 SOS 2.0 latest official version
SOS Introduction 5 Pull-based access to observations Mediator between: client data archive / simulation / real-time sensor system Hides the heterogeneous structure of proprietary sensor data formats and protocols Data formats: O&M and SensorML Versions: 1.0 and 2.0
6 SOS 1.0 Operation Profiles The SOS 1.0 interface comprises three profiles: Core Profile Mandatory Operations for accessing the sensor data and metadata Transactional Profile Optional Insertion of sensor data and metadata Enhanced Profile Optional Further operations for accessing geometries and observations
SOS 2.0 Model 7
SOS Core Profile 8 GetCapabilities operation Returns a metadata document describing the SOS instance Spatial, temporal and thematic content offerings Operator Mandatory for every OGC Web Service Structure and syntax from OWS Web Services Common specification
GetCapabilities 9 provides access to metadata and detailed information about the operations available by an SOS server. Examples base on XML implementation. Request: http://schemas.opengis.net/sos/2.0/examples/core/getcapabiliti es1.xml Response: http://schemas.opengis.net/sos/2.0/examples/core/getcapabiliti es1_response.xml Example request encoded as KVP: http://hostname:port/path?service=sos&request=getcapabilit ies&acceptversions=200 ies&acceptversions=2.0.0
SOS Core Profile 10 GetObservation operation Returns sensor data Response format is usually a O&Mdocument Supports comprehensive spatial, temporal and thematic filter criteria
SOS Core Profile 11 DescribeSensor operation Returns detailed metadata of the sensors contained in the SOS instance Response format is usually SensorML
GetObservation KVP 12 Example http://myserver.org:port/path? service=sos& version=2.0.0& request=getobservation& offering=http://www.my_namespace.org/thermometer1_observations& observedproperty=http://sweet.jpl.nasa.gov/2.0/atmothermo.owl#effe ctivetemperature& procedure=http://www.my_namespace.org/sensors/thermometer1& featureofinterest=http://wfs.example.org?request=getfeature&featurei d=building1&namespaces=xmlns(sams,http://www.opengis.net/sampli ngspatial/2.0),xmlns(om,http://www.opengis.net/om/2.0)& spatialfilter=om:featureofinterest/*/sams:shape,22.32,11.2,32.32,22.2,urn:ogc:def:crs:epsg::4326& temporalfilter=om:phenomenontime,2009-01-10t10:00:00z/2009-01- 10T11:00:00Z
Describe Sensor 13 provides access to detailed information about the sensors and sensor systems available by an SOS server. Request: http://schemas.opengis.net/sos/2.0/examples/soap/des cribesensor1_soap.xml Example request encoded d as KVP : http://www.myserver.org:port/path?service=sos&version =2.0.0&request=DescribeSensor&procedure=urn:ogc:obj 0&request=DescribeSensor&procedure=urn:ogc:obj ect:sensor:myorg:thermometer1&proceduredescriptionf ormat=http://www.opengis.net/sensorml/1.0.1&validtime =2010-01-01T18:31:42Z 01T18
SOS 2.0 Model 14
GetObservationById 15 provides access to observations from an SOS by passing only the ID of an observation. Request: http://schemas.opengis.net/sos/2.0/examples/e nhancedoperations/getobservationbyid.xml tob Response: http://schemas.opengis.net/sos/2.0/examples/e net/sos/2 nhancedoperations/getobservationbyid_respo nse.xml
GetFeatureOfInterest 16 provides access to the features of interest for which the SOS offers observations. Request / Response examples: http://schemas.opengis.net/sos/2.0/examples/enhancedoperations/ GetFOI1.xml http://schemas.opengis.net/sos/2.0/examples/enhancedoperations/ net/sos/2 GetFOI1_response.xml http://schemas.opengis.net/sos/2.0/examples/enhancedoperations/ GetFOI2.xml http://schemas.opengis.net/sos/2.0/examples/enhancedoperations/ GetFOI2_response.xml http://schemas.opengis.net/sos/2.0/examples/enhancedoperations/ h t/ /2 / h ti / GetFOI3.xml http://schemas.opengis.net/sos/2.0/examples/enhancedoperations/ GetFOI3_response.xml
SOS 2.0 Model 17
InsertSensor 18 allows registration of new sensors at the SOS. Request: http://schemas.opengis.net/sos/2.0/examples/tr ansactional/insertsensor1.xml Response: http://schemas.opengis.net/sos/2.0/examples/tr ansactional/insertsensor1_response.xmlresponse
DeleteSensor 19 allows the deletion of registered sensors and all their associated observations. Request: http://schemas.opengis.net/sos/2.0/examples/transaction al/deletesensor1.xml Response: http://schemas.opengis.net/sos/2.0/examples/transaction h t/ /2 /t ti al/deletesensor1_response.xml
InsertObservation 20.. allows the insertion of observations in an SOS server. Request: http://schemas.opengis.net/sos/2.0/exa p mples/transactional/insertobservation1.x ml Response: http://schemas.opengis.net/sos/2.0/exa net/sos/2 mples/transactional/insertobservation1_ response.xml
SOS 2.0 Model 21
InsertResult 22 allows the insertion of observation results in an SOS server. Before inserting, it is necessary that a template with observation metadata exists in the server. Request: http://schemas.opengis.net/sos/2.0/examples/resulthandl ing/insertresult1.xml Response: http://schemas.opengis.net/sos/2.0/examples/resulthandl ing/insertresult1_response.xml
InsertResultTemplate 23 allows the insertion of an observation template, containing the observation metadata and structure of the results. This operation is necessary for later insertion of observation results. Examples base on XML implementation : Request: http://schemas.opengis.net/sos/2.0/examples/resulthandl ing/insertresulttemplate1.xml Response: http://schemas.opengis.net/sos/2.0/examples/resulthandl ing/insertresulttemplate1_response.xml
GetResultTemplate 24 provides access to a template containing the structure of results returned by later invocation of the GetResult operation. Request: http://schemas.opengis.net/sos/2.0/examples/resulthandling/g etresulttemplate1.xml Response: http://schemas.opengis.net/sos/2.0/examples/resulthandling/g etresulttemplate1_response.xml l t l Response: http://schemas.opengis.net/sos/2.0/examples/resulthandling/g etresult1_resultingdataarray.xml lti t l
GetResult 25 provides access to an observation result without the observation metadata and without the information about the structure of the results. Request: http://schemas.opengis.net/sos/2.0/examples/resulthandl ing/getresult1.xml Response: http://schemas.opengis.net/sos/2.0/examples/resulthandl ing/getresult1_response.xml
SOS 2.0 Model 26
Filtering 27 Minimum required filters: BBOX http://schemas.opengis.net/sos/2.0/examples/spatialfilteringprofile/ GetObservation1_spatialFilteringProfile.xml spatialfilteringprofile http://schemas.opengis.net/sos/2.0/examples/spatialfilteringprofile/ GetObservation1_spatialFilteringProfile_response.xml Temporal filters: TEquals operator in conjunction with the TimeInstant type (e.g. http://schemas.opengis.net/sos/2.0/examples/core/getobservation 1_obsProps.xml) TDuring operator in conjunction with the TimePeriod type http://schemas.opengis.net/sos/2.0/examples/core/getobservation p p 1_obsProps.xml http://schemas.opengis.net/sos/2.0/examples/core/getobservation 1_obsProps_response.xml
SOS 2.0 Model 28 XML Encoding KVP Binding SOAP Binding
SOS Workflow 29 Sensor 1 RegisterSensor Sensor ID InsertObservation GetCapabilities Capabilities Observation ID RegisterSensor SOS DescribeSensor SensorML Client Sensor 2 Sensor ID InsertObservation Observation ID GetObservation O&M
SOS 2.0 Changes 30 Increased interoperability: Minimum set of filter operators and operands Improved spatial filtering of observations Improved metadata provision: Restructuring t of offerings: one sensor/procedure per offering Improved filter functionality in GetFeatureOfInterest Know for which periods of time observations are available for certain observed properties, sensors/procedures, features of interest
SOS 2.0 Changes (cont.) 31 Re-use of models, operations and mechanisms defined by SWE Service Model (OGC 09-001) Sensor description management operations Service metadata (contents) section with property inheritance it mechanism (decrease size of Capabilities document)
SOS 2.0 Changes 32 Removed operations DescribeResultModel l DescribeFeatureType DescribeObservationType GetFeatureOfInterestTime New Bindings KVP SOAP
Implementation 33 52 North SOS > Live demo today! http://52north.org/communities/sensorweb/sos/ Open Source CITE Testing ongoing (Reference Impl.) http://www.opengeospatial.org/ p p g p g resource/products/ byspec
Eventing 34
Outline 35 Sensor Alert Service Event Pattern Markup Language Sensor Event Service
Sensor Alert Service 36
SAS Introduction 37 Sensor Alert Service (SAS) Part of the OGC SWE framework Push based delivery of sensor data Filtering of sensor data No event processing concepts Publish/subscribe mechanism relying on XMPP OGC document 06-028r3 Best Practice paper Use no longer recommended
38 Event Pattern Markup Language
EML Introduction 39 Event Pattern Markup Language (EML) OGC pending document 08-132 Released as an OGC Discussion Paper Used to describe patterns for Complex Event Processing (CEP) and Event Stream Processing (ESP)
EML Example 40 Temperature surveillance with treshold Event stream with temperature mesurements Simple filtering (SAS): a warning for every measurement breaking the treshold
EML Example 41 Complex processing (EML based): Complex pattern: low temperature followed by high temperature a warning per hot period
EML Example 42 Fire detection Hot periods combined with smoke detection
Sensor Event Service 43
SES Introduction 44 Sensor Event Service (SES) OGC Discussion Paper Document number 08-133 Based upon OASIS WS-Notification mainstream IT standards are used Enhanced filtering capabilities in order to address the shortcomings of the SAS
SES Introduction 45 Sensor side of the interface is optional Sensor side of the interface is optional Client side of the interface is mandatory
SES Features 46 Topic and content based filtering Three filter levels: XPath (mandatory) OGC Filter Encoding (optional) EML (optional) Not restricted to a specific transport protocol Default binding: SOAP via HTTP Default binding: SOAP via HTTP Unit conversion
Outlook 47 OGC Publish Subscribe Standards OGC Publish Subscribe Standards Working Group
SPS 48
Need for SPS 49 Tasking sensors so that they deliver the required data (e.g. setting pan, tilt and zoom parameters of a camera) Checking through a standardized interface if sensors will be able to perform certain tasks now or in the future (e.g. investigating if a satellite will cover a certain area during a time period that is of interest)
Introduction 50 Standardized interface for tasking sensors and sensor systems Task management Defining tasks Checking tasks Updating/modifying g takss Cancelling tasks Does not archive the data itself points to access points for the data
Introduction 51 Usage: Parameterization of: Sensors Simulations Planning and executing of: UAVs Robots Satellites Asynchronous communication with clients that submit tasks via WNS (e.g. notification if a task is completed)
Operations 52 Mandatory in SPS 1.0 and 2.0 GetCapabilities: Request a self description of a SPS instance DescribeTasking: Request which information is needed for submitting a task Submit: Submitting tasks DescribeResultAccess: Request information where the data resulting of a task can be retrieved
Operations 53 Optional in SPS 1.0 and mandatory in SPS 2.0 GetStatus: Request status information about a task Missing in SPS 1.0 and mandatory in SPS 2.0 DescribeSensor: Retrieving the description of a sensor GetTask: Request complete information about a task
Operations 54 Optional GetFeasibility: Check if a task can be executed before submitting it to the SPS Update: Change the parameters of a task Cancel: Cancel a task that was submitted Missing in SPS 1.0 and optional in SPS 2.0 Reserve: Reserving a task Confirm: Execute a reserved task UpdateSensorDescription: Updating the description of a sensor
SPS workflow 55
Controllable Camera 56 AXIS Pan-Tilt-Zoom Camera SPS for setting the pan, tilt and zoom parameters Additional feature: Block specific parts of the field of view (e.g. for privacy reasons)
Controllable Camera 57
Thank you for your Attention! 58 Questions? Contact: jirka@52north.org More information: i http://www.52north.org h