SlideShare a Scribd company logo
4th International Workshop on Semantic Sensor Networks
                        ISWC 2011




Semantic Sensor Data Search in a
   Federated Sensor Network



       Jean-Paul Calbimonte1, Hoyoung Jeung2,
           Oscar Corcho1 and Karl Aberer2
                       1Ontology   Engineering Group.
         Facultad de Informática, Universidad Politécnica de Madrid.
                 2Distributed Information Systems Laboratory

       School of Computer Science & Communication Systems, EPFL.



                        jp.calbimonte@upm.es


                                                                       Date: 23/10/2011
Outline


• Introduction
    • Sensor data
    • Sensor metadata
•   Ontological representation
•   Mapping sensor streams
•   Sensor data search
•   Query translation
    • GSN URL API
• Conclusions




                             2
Swiss-Experiment


  • FP7 Network of Excellence

             Environmental and GeoScience research
                           Swiss Alps
   Geo
Researcher
                                                     ...               Snow,
                                                           Real-time   Wind,
                                                     ...     data
                                                     ...               Radiation.
                                                                       Lots of stuff




       I want data to
         create my
•How much snow is lost to evaporation?
         models and
•Snow redistribution by wind
          compare
• Wind erosion of sand
• ...


                                           3
Swiss-Experiment Infrastructure


• Global Sensor Networks, deployment for SwissEx.



• Distributed environment: GSN Davos, GSN Zurich,
  etc.
   • In each site, a number of sensors available
   • Each one with different Sensor observations
                             schema
• Metadata stored in wiki
   • Federated metadata management:
   •                                     Sensor metadata
       Jeung H., Sarni, S., Paparrizos, I., Sathe, S., Aberer, K., Dawes, N., Papaioannus, T.,
       Lehning, M.Effective Metadata Management in federated Sensor Networks. in SUTC,
       2010




                                              4
Sensor Metadata



        station

            location

                       sensors

model


                        properties




                  5
Sensor Metadata


• What properties are measured

• Which sensors available

• Where are they located

• How are they configured

• Who is responsible




                            6
Sensor Data: Observations




Heterogeneity

Integration




  7
W3C SSN-XG Ontology


• SSN Ontology

                             ssn:isProducedBy
                                                        ssn:SensorOutput
         ssn:Sensor

                      ssn:observedBy
                                            ssn:observationResult             ssn:hasValue


                            ssn:Observation                          ssn:ObservationValue

 ssn:observes
                                                    ssn:featureOfInterest
                                                                                             quantityValue
                   ssn:observedProperty

                                             ssn:FeatureOfInterest

                                                                                         xsd:datatype

            ssn:Property                  ssn:hasProperty




                                                        8
W3C SSN-XG Ontology


                                                          ssn:OperatingRange


                                                                    ssn:hasOperatingRange
                                                                                                       ssn:Deployment
               ssn:Sensing                                                 ssn:hasDeployment

                                                              ssn:System
                               ssn:implements                                                  ssn:deployedOnPlatform


                         ssn:Sensor                                         ssn:onPlatform


                                                              ssn:Device                                 ssn:Platform
ssn:hasMeasurementCapability




    ssn:MeasurementCapability


                                                ssn:SensingDevice




                                                                9
Example

swissex:Sensor1
   rdf:type ssn:Sensor;
   ssn:onPlatform swissex:Station1;
   ssn:observes [rdf:type sweetSpeed:WindSpeed].
swissex:Sensor2
                                                    station
   rdf:type ssn:Sensor;
   ssn:onPlatform swissex:Station1;
   ssn:observes [rdf:type sweetTemp:Temperature].
swissex:Station1
   :hasGeometry [ rdf:type wgs84:Point;
                   wgs84:lat "46.8037166";
                   wgs84:long "9.7780305"].




                                          10
Example

swissex:WindSpeedObservation1
   rdf:type ssn:Observation;
   ssn:featureOfInterest [rdf:type sweetAtmoWind:Wind];
   ssn:observedProperty [rdf:type sweetSpeed:WindSpeed];
   ssn:observationResult [rdf:type ssn:SensorOutput;
   ssn:hasValue [qudt:numericValue "6.245"^^xsd:double]];
   ssn:observationResultTime [time:inXSDDatatime "2011-10-26T21:32:52"];
   ssn:observedBy swissex:Sensor1 ;

                                WindSpeed : 6.245
                                   At: 2011-10-
                                  26T21:32:52




                                       11
Where is the Data?

GSN server instance

                       ..                       wan7
                       sensor1
                       sensor2             timed: datetime PK
      GSN              sensor3             sp_wind: float
                       …




                                      Mappings

     ssn:Observation




                                 12
Creating Mappings



                                                                 ssn:observedProperty

                                       ssn:Observation                                  ssn:Property
                                                     http://swissex.ch/data#
                     ssn:observationResult     Wan7/WindSpeed/Observation{timed}           sweetSpeed:WindSpeed



      wan7                            ssn:SensorOutput
timed: datetime PK                                     http://swissex.ch/data#
sp_wind: float                ssn:hasValue      Wan7/ WindSpeed/ ObsOutput{timed}


                                      ssn:ObservationValue
                                                       http://swissex.ch/data#
                           qudt:numericValue      Wan7/WindSpeed/ObsValue{timed}


                                         xsd:decimal
                                                             sp_wind




                                                        13
R2RML


• RDB2RDF W3C Group, R2RML Mapping language:
     • http://www.w3.org/2001/sw/rdb2rdf/r2rml/
  :Wan4WindSpeed a rr:TriplesMapClass;
    rr:tableName "wan7";
    rr:subjectMap [ rr:template
        "http://swissex.ch/ns#WindSpeed/Wan7/{timed}";
         rr:class ssn:ObservationValue; rr:graph ssg:swissexsnow.srdf ];
    rr:predicateObjectMap [ rr:predicateMap [ rr:predicate ssn:hasQuantityValue ];
    rr:objectMap[ rr:column "sp_wind" ] ];      .




<http://swissex.ch/ns#/WindSpeed/Wan7/2011-05-20:20:00 >
a ssn:ObservationValue
<http://swissex.ch/ns#/WindSpeed/Wan7/2011-05-20:20:00 >
ssn:hasQuantityValue " 4.5"



                                         14
Searching for Sensors


• Transformed wiki metadata to SSN instances in RDF
• Generated R2RML mappings for all sensors
• Numbers: 28 Deployments
   • Aprox. 50 sensors in each deployment. More than 1500
     sensors

SELECT DISTINCT?lat ?long ?platformName ?deploymentName
WHERE {
        ?sensor ssn:observes [a prop:MotionProperty];
        ?system ssn:hasSubSystem ?sensor;
                  ssn:onPlatform ?platform;
                  ssn:hasDeployment ?deployment.
        ?deployment foaf:name ?deploymentName.
        ?platform dul:hasLocation [swissex:hasGeometry ?link];
                  foaf:name ?platformName.
        ?link omgeo:within(46.3 8.7 47.2 9.8);
                  geo-pos:lat ?lat;
                  geo-pos:long ?long. }

                                     15
Sensor Data Portal Application


• Problems
   • Too many sensors
   • Too Heterogeneous
• Any sensors available in this region?
• Sensors that measure wind speed?
• How about getting the data?




                           16
Playing with it




17
Querying the Observations


• Implementation of Ontology-based querying over
  GSN
• Using the R2RML mappings
• Fronting GSN with SPARQL-Stream queries
• Query & Data translation process




                          18
Query & Data Translation
  SELECT ?waveheight
  FROM STREAM <www.ssg4env.eu/SensorReadings.srdf>
  [NOW -10 MINUTES TO NOW]
  WHERE {
   ?WaveObs a ssn:Observation;
              sea:hasValue ?waveheight; }


                             Query
               q          translation
                                         Target query




                                                                          Sensor Networks
         SPARQLStream
                                        q’
                           mappings                  Query
Client




                                                   Processing
                                        d’
               d
                             Data            [tuple]            [tuple]
          [triple]        translation


                        Ontology-based sensor query service




                                   19
Data Access


• GSN Web Services
• GSN URL API
     • Compose the query as a URL:


        http://montblanc.slf.ch :22001/ multidata ?vs [0]= wan7 &
        field [0]= sp_wind &
        from =15/05/2011+05:00:00& to =15/05/2011+10:00:00&
        c_vs [0]= wan7 & c_field [0]= sp_wind & c_min [0]=10




    SELECT sp_wind FROM wan7 [NOW -5 HOUR] WHERE sp_wind >10
                                                                                                   ?
                                    SPARQL-Stream
Calbimonte, J-P., Corcho O., Gray, A. Enabling Ontology-based Access to Streaming Data Sources. In ISWC 2010.

                                                    20
Using the Mappings


                                                                             π timed,
                                                                                   sp_wind
SELECT ?waveheight

                                                                             σ
FROM STREAM <www.ssg4env.eu/SensorReadings.srdf>
[NOW – 5 HOUR TO NOW]
                                                                                   sp_wind>10
WHERE {
 ?WaveObs a ssn:ObservationValue;
            qudt:numericalValue ?waveheight;                                 ω 5 Hour
 FILTER (?waveheight>10) }
                                                                           wan7



            wan7                     ssn:ObservationValue
                                                       http://swissex.ch/data#
      timed: datetime PK    qudt:numericalValue   Wan7/WindSpeed/ObsValue{timed}
      sp_wind: float

                                  xsd:datatype
                                                             sp_wind


                                         21
Algebra expressions



π timed,              http://montblanc.slf.ch :22001/ multidata ?vs [0]= wan7 &
                      field [0]= sp_wind &
                      from =15/05/2011+05:00:00& to =15/05/2011+10:00:00&
   sp_wind            c_vs [0]= wan7 & c_field [0]= sp_wind & c_min [0]=10



σ sp_wind>10

ω 5 Hour
               SELECT sp_wind FROM wan7 [NOW -5 HOUR] WHERE sp_wind >10

wan7


                                 22
Algebra construction


              π timed,
                   sp_wind
windsensor1
windsensor2   σ sp_wind>10

              ω 5 Hour

              wan7



              23
Static optimization




           π timed,             π timed,         π timed,
                    sp_wind        windvalue        windvalue


           σ sp_wind>10         σ windvalue>10   σ windvalue>10

          ω 5 Hour              ω 5 Hour         ω 5 Hour

        wan7                    windsensor1      windsensor2
Sensors, Mappings and Queries          24
Querying the Observations
                        SELECT ?waveheight
                        FROM STREAM <www.ssg4env.eu/SensorReadings.srdf>
                        [NOW -10 MINUTES TO NOW STEP 1 MINUTE]
                        WHERE {
                         ?WaveObs a sea:WaveHeightObservation; :22001/ multidata ?vs [0]= wan7 &
                                           http://montblanc.slf.ch
                                           field [0]= sp_wind
                                    sea:hasValue ?waveheight; }


                                           Query
:Wan4WindSpeed a rr:TriplesMapClass;    translation      GSN
  rr:tableName "wan7";
                  SPARQLStream                           API
  rr:subjectMap [ rr:template

"http://swissex.ch/ns#WindSpeed/Wan7/{timed}";
Client




        rr:class ssn:ObservationValue; rr:graph
ssg:swissexsnow.srdf ];                       Mappings             Query
    rr:predicateObjectMap [ rr:predicateMap [                    Processing
rr:predicate ssn:hasQuantityValue ];                                           Sensor
    rr:objectMap[ rr:column "sp_wind" ] ];                                     Network


                                                              [tuples]
                                           Data
            [triples]                   translation


                R2RML
                Mappings

                                                         25
Translation overhead




Sensors, Mappings and Queries   26
Conclusions


• Use of the SSN Ontology
   • Sensor metadata
   • Sensor observations
• Using R2RML mappings for virtual sensors
• We can translate to query languages and APIs
   • Abstract expressions for representing queries
• Applications
   • Improved sensor search
   • Federated environment
   • Schema heterogeneity




                               27
TODO


•   Explore expressivity of queries
•   Expose as Linked Stream Data
•   Integrate with stored RDF data
•   Apply to other environments
    •   Complex-event-processing engines
    •   OGC SOS Services
    •   Pachube
    •   etc
• Experimentation
    •   Latency
    •   Performance
    •   Tuple rates
    •   Query complexity

                                28
Thanks!



http://code.google.com/p/semanticstreams/




           Questions, please.

         jp.calbimonte@upm.es
                    29

More Related Content

Similar to SSN11: Semantic Sensor Data Search in a Federated Sensor Network

XGSN: An Open-source Semantic Sensing Middleware for the Web of Things
XGSN: An Open-source Semantic Sensing Middleware for the Web of ThingsXGSN: An Open-source Semantic Sensing Middleware for the Web of Things
XGSN: An Open-source Semantic Sensing Middleware for the Web of Things
Jean-Paul Calbimonte
 
Quality Reasoning in the Semantic Web
Quality Reasoning in the Semantic WebQuality Reasoning in the Semantic Web
Quality Reasoning in the Semantic Web
Chris Baillie
 
Linked Sensor Data 101 (FIS2011)
Linked Sensor Data 101 (FIS2011)Linked Sensor Data 101 (FIS2011)
Linked Sensor Data 101 (FIS2011)
Jean-Paul Calbimonte
 
Publishing consuming Linked Sensor Data meetup Cuenca
Publishing consuming Linked Sensor Data meetup CuencaPublishing consuming Linked Sensor Data meetup Cuenca
Publishing consuming Linked Sensor Data meetup Cuenca
Jean-Paul Calbimonte
 
System monitoring and network intrusion using DDS and CEP
System monitoring and network intrusion using DDS and CEPSystem monitoring and network intrusion using DDS and CEP
System monitoring and network intrusion using DDS and CEP
Gerardo Pardo-Castellote
 
“Efficient Neuromorphic Computing with Dynamic Vision Sensor, Spiking Neural ...
“Efficient Neuromorphic Computing with Dynamic Vision Sensor, Spiking Neural ...“Efficient Neuromorphic Computing with Dynamic Vision Sensor, Spiking Neural ...
“Efficient Neuromorphic Computing with Dynamic Vision Sensor, Spiking Neural ...
Edge AI and Vision Alliance
 
StarFL - A new Metadata Language for Sensor Descriptions
StarFL - A new Metadata Language for Sensor DescriptionsStarFL - A new Metadata Language for Sensor Descriptions
StarFL - A new Metadata Language for Sensor Descriptions
Cybera Inc.
 
APPLICATION OF WIRELESS NANO SENSOR NETWORKS FOR WILD LIVES
APPLICATION OF WIRELESS NANO SENSOR NETWORKS FOR WILD LIVESAPPLICATION OF WIRELESS NANO SENSOR NETWORKS FOR WILD LIVES
APPLICATION OF WIRELESS NANO SENSOR NETWORKS FOR WILD LIVES
Amy Roman
 
Sensors presentation-06a
Sensors presentation-06aSensors presentation-06a
Sensors presentation-06a
abhijitrao
 
Bi24385389
Bi24385389Bi24385389
Bi24385389
IJERA Editor
 
SRBench Streaming RDF SPARQL Benchmark
SRBench Streaming  RDF SPARQL BenchmarkSRBench Streaming  RDF SPARQL Benchmark
SRBench Streaming RDF SPARQL Benchmark
Jean-Paul Calbimonte
 
BehavioMetrics: A Big Data Approach
BehavioMetrics: A Big Data ApproachBehavioMetrics: A Big Data Approach
BehavioMetrics: A Big Data Approach
Jiang Zhu
 
Semantic Sensor Network Ontology: Description et usage
Semantic Sensor Network Ontology: Description et usageSemantic Sensor Network Ontology: Description et usage
Semantic Sensor Network Ontology: Description et usage
catherine roussey
 
Jirka - Integrating the ogc sensor web enablement framework into the ogc cata...
Jirka - Integrating the ogc sensor web enablement framework into the ogc cata...Jirka - Integrating the ogc sensor web enablement framework into the ogc cata...
Jirka - Integrating the ogc sensor web enablement framework into the ogc cata...
Arne Bröring
 
Lviv Data Science Club (Oles Petriv)
Lviv Data Science Club   (Oles Petriv)Lviv Data Science Club   (Oles Petriv)
Lviv Data Science Club (Oles Petriv)
Lviv Startup Club
 
Citron : Context Information Acquisition Framework on Personal Devices
Citron : Context Information Acquisition Framework on Personal DevicesCitron : Context Information Acquisition Framework on Personal Devices
Citron : Context Information Acquisition Framework on Personal Devices
Tetsuo Yamabe
 
Prediction Based Moving Object Tracking in Wireless Sensor Network
Prediction Based Moving Object Tracking in Wireless Sensor NetworkPrediction Based Moving Object Tracking in Wireless Sensor Network
Prediction Based Moving Object Tracking in Wireless Sensor Network
IRJET Journal
 
Semantics and Sensors
Semantics and SensorsSemantics and Sensors
Semantics and Sensors
Joshua Shinavier
 
Prdc2012
Prdc2012Prdc2012
Prdc2012
Yusuke Shimizu
 
Sensors and location based services
Sensors and location based servicesSensors and location based services
Sensors and location based services
Chinmay V S
 

Similar to SSN11: Semantic Sensor Data Search in a Federated Sensor Network (20)

XGSN: An Open-source Semantic Sensing Middleware for the Web of Things
XGSN: An Open-source Semantic Sensing Middleware for the Web of ThingsXGSN: An Open-source Semantic Sensing Middleware for the Web of Things
XGSN: An Open-source Semantic Sensing Middleware for the Web of Things
 
Quality Reasoning in the Semantic Web
Quality Reasoning in the Semantic WebQuality Reasoning in the Semantic Web
Quality Reasoning in the Semantic Web
 
Linked Sensor Data 101 (FIS2011)
Linked Sensor Data 101 (FIS2011)Linked Sensor Data 101 (FIS2011)
Linked Sensor Data 101 (FIS2011)
 
Publishing consuming Linked Sensor Data meetup Cuenca
Publishing consuming Linked Sensor Data meetup CuencaPublishing consuming Linked Sensor Data meetup Cuenca
Publishing consuming Linked Sensor Data meetup Cuenca
 
System monitoring and network intrusion using DDS and CEP
System monitoring and network intrusion using DDS and CEPSystem monitoring and network intrusion using DDS and CEP
System monitoring and network intrusion using DDS and CEP
 
“Efficient Neuromorphic Computing with Dynamic Vision Sensor, Spiking Neural ...
“Efficient Neuromorphic Computing with Dynamic Vision Sensor, Spiking Neural ...“Efficient Neuromorphic Computing with Dynamic Vision Sensor, Spiking Neural ...
“Efficient Neuromorphic Computing with Dynamic Vision Sensor, Spiking Neural ...
 
StarFL - A new Metadata Language for Sensor Descriptions
StarFL - A new Metadata Language for Sensor DescriptionsStarFL - A new Metadata Language for Sensor Descriptions
StarFL - A new Metadata Language for Sensor Descriptions
 
APPLICATION OF WIRELESS NANO SENSOR NETWORKS FOR WILD LIVES
APPLICATION OF WIRELESS NANO SENSOR NETWORKS FOR WILD LIVESAPPLICATION OF WIRELESS NANO SENSOR NETWORKS FOR WILD LIVES
APPLICATION OF WIRELESS NANO SENSOR NETWORKS FOR WILD LIVES
 
Sensors presentation-06a
Sensors presentation-06aSensors presentation-06a
Sensors presentation-06a
 
Bi24385389
Bi24385389Bi24385389
Bi24385389
 
SRBench Streaming RDF SPARQL Benchmark
SRBench Streaming  RDF SPARQL BenchmarkSRBench Streaming  RDF SPARQL Benchmark
SRBench Streaming RDF SPARQL Benchmark
 
BehavioMetrics: A Big Data Approach
BehavioMetrics: A Big Data ApproachBehavioMetrics: A Big Data Approach
BehavioMetrics: A Big Data Approach
 
Semantic Sensor Network Ontology: Description et usage
Semantic Sensor Network Ontology: Description et usageSemantic Sensor Network Ontology: Description et usage
Semantic Sensor Network Ontology: Description et usage
 
Jirka - Integrating the ogc sensor web enablement framework into the ogc cata...
Jirka - Integrating the ogc sensor web enablement framework into the ogc cata...Jirka - Integrating the ogc sensor web enablement framework into the ogc cata...
Jirka - Integrating the ogc sensor web enablement framework into the ogc cata...
 
Lviv Data Science Club (Oles Petriv)
Lviv Data Science Club   (Oles Petriv)Lviv Data Science Club   (Oles Petriv)
Lviv Data Science Club (Oles Petriv)
 
Citron : Context Information Acquisition Framework on Personal Devices
Citron : Context Information Acquisition Framework on Personal DevicesCitron : Context Information Acquisition Framework on Personal Devices
Citron : Context Information Acquisition Framework on Personal Devices
 
Prediction Based Moving Object Tracking in Wireless Sensor Network
Prediction Based Moving Object Tracking in Wireless Sensor NetworkPrediction Based Moving Object Tracking in Wireless Sensor Network
Prediction Based Moving Object Tracking in Wireless Sensor Network
 
Semantics and Sensors
Semantics and SensorsSemantics and Sensors
Semantics and Sensors
 
Prdc2012
Prdc2012Prdc2012
Prdc2012
 
Sensors and location based services
Sensors and location based servicesSensors and location based services
Sensors and location based services
 

More from Jean-Paul Calbimonte

Towards Collaborative Creativity in Persuasive Multi-agent Systems
Towards Collaborative Creativity in Persuasive Multi-agent SystemsTowards Collaborative Creativity in Persuasive Multi-agent Systems
Towards Collaborative Creativity in Persuasive Multi-agent Systems
Jean-Paul Calbimonte
 
A Platform for Difficulty Assessment and Recommendation of Hiking Trails
A Platform for Difficulty Assessment andRecommendation of Hiking TrailsA Platform for Difficulty Assessment andRecommendation of Hiking Trails
A Platform for Difficulty Assessment and Recommendation of Hiking Trails
Jean-Paul Calbimonte
 
Stream reasoning agents
Stream reasoning agentsStream reasoning agents
Stream reasoning agents
Jean-Paul Calbimonte
 
Decentralized Management of Patient Profiles and Trajectories through Semanti...
Decentralized Management of Patient Profiles and Trajectories through Semanti...Decentralized Management of Patient Profiles and Trajectories through Semanti...
Decentralized Management of Patient Profiles and Trajectories through Semanti...
Jean-Paul Calbimonte
 
Personal Data Privacy Semantics in Multi-Agent Systems Interactions
Personal Data Privacy Semantics in Multi-Agent Systems InteractionsPersonal Data Privacy Semantics in Multi-Agent Systems Interactions
Personal Data Privacy Semantics in Multi-Agent Systems Interactions
Jean-Paul Calbimonte
 
RDF data validation 2017 SHACL
RDF data validation 2017 SHACLRDF data validation 2017 SHACL
RDF data validation 2017 SHACL
Jean-Paul Calbimonte
 
SanTour: Personalized Recommendation of Hiking Trails to Health Pro files
SanTour: Personalized Recommendation of Hiking Trails to Health ProfilesSanTour: Personalized Recommendation of Hiking Trails to Health Profiles
SanTour: Personalized Recommendation of Hiking Trails to Health Pro files
Jean-Paul Calbimonte
 
Multi-agent interactions on the Web through Linked Data Notifications
Multi-agent interactions on the Web through Linked Data NotificationsMulti-agent interactions on the Web through Linked Data Notifications
Multi-agent interactions on the Web through Linked Data Notifications
Jean-Paul Calbimonte
 
The MedRed Ontology for Representing Clinical Data Acquisition Metadata
The MedRed Ontology for Representing Clinical Data Acquisition MetadataThe MedRed Ontology for Representing Clinical Data Acquisition Metadata
The MedRed Ontology for Representing Clinical Data Acquisition Metadata
Jean-Paul Calbimonte
 
Linked Data Notifications for RDF Streams
Linked Data Notifications for RDF StreamsLinked Data Notifications for RDF Streams
Linked Data Notifications for RDF Streams
Jean-Paul Calbimonte
 
Fundamentos de Scala (Scala Basics) (español) Catecbol
Fundamentos de Scala (Scala Basics) (español) CatecbolFundamentos de Scala (Scala Basics) (español) Catecbol
Fundamentos de Scala (Scala Basics) (español) Catecbol
Jean-Paul Calbimonte
 
Connecting Stream Reasoners on the Web
Connecting Stream Reasoners on the WebConnecting Stream Reasoners on the Web
Connecting Stream Reasoners on the Web
Jean-Paul Calbimonte
 
RDF Stream Processing Tutorial: RSP implementations
RDF Stream Processing Tutorial: RSP implementationsRDF Stream Processing Tutorial: RSP implementations
RDF Stream Processing Tutorial: RSP implementations
Jean-Paul Calbimonte
 
Query Rewriting in RDF Stream Processing
Query Rewriting in RDF Stream ProcessingQuery Rewriting in RDF Stream Processing
Query Rewriting in RDF Stream Processing
Jean-Paul Calbimonte
 
Toward Semantic Sensor Data Archives on the Web
Toward Semantic Sensor Data Archives on the WebToward Semantic Sensor Data Archives on the Web
Toward Semantic Sensor Data Archives on the Web
Jean-Paul Calbimonte
 
Detection of hypoglycemic events through wearable sensors
Detection of hypoglycemic events through wearable sensorsDetection of hypoglycemic events through wearable sensors
Detection of hypoglycemic events through wearable sensors
Jean-Paul Calbimonte
 
RDF Stream Processing and the role of Semantics
RDF Stream Processing and the role of SemanticsRDF Stream Processing and the role of Semantics
RDF Stream Processing and the role of Semantics
Jean-Paul Calbimonte
 
The Schema Editor of OpenIoT for Semantic Sensor Networks
The Schema Editor of OpenIoT for Semantic Sensor NetworksThe Schema Editor of OpenIoT for Semantic Sensor Networks
The Schema Editor of OpenIoT for Semantic Sensor Networks
Jean-Paul Calbimonte
 
Scala Programming for Semantic Web Developers ESWC Semdev2015
Scala Programming for Semantic Web Developers ESWC Semdev2015Scala Programming for Semantic Web Developers ESWC Semdev2015
Scala Programming for Semantic Web Developers ESWC Semdev2015
Jean-Paul Calbimonte
 
Streams of RDF Events Derive2015
Streams of RDF Events Derive2015Streams of RDF Events Derive2015
Streams of RDF Events Derive2015
Jean-Paul Calbimonte
 

More from Jean-Paul Calbimonte (20)

Towards Collaborative Creativity in Persuasive Multi-agent Systems
Towards Collaborative Creativity in Persuasive Multi-agent SystemsTowards Collaborative Creativity in Persuasive Multi-agent Systems
Towards Collaborative Creativity in Persuasive Multi-agent Systems
 
A Platform for Difficulty Assessment and Recommendation of Hiking Trails
A Platform for Difficulty Assessment andRecommendation of Hiking TrailsA Platform for Difficulty Assessment andRecommendation of Hiking Trails
A Platform for Difficulty Assessment and Recommendation of Hiking Trails
 
Stream reasoning agents
Stream reasoning agentsStream reasoning agents
Stream reasoning agents
 
Decentralized Management of Patient Profiles and Trajectories through Semanti...
Decentralized Management of Patient Profiles and Trajectories through Semanti...Decentralized Management of Patient Profiles and Trajectories through Semanti...
Decentralized Management of Patient Profiles and Trajectories through Semanti...
 
Personal Data Privacy Semantics in Multi-Agent Systems Interactions
Personal Data Privacy Semantics in Multi-Agent Systems InteractionsPersonal Data Privacy Semantics in Multi-Agent Systems Interactions
Personal Data Privacy Semantics in Multi-Agent Systems Interactions
 
RDF data validation 2017 SHACL
RDF data validation 2017 SHACLRDF data validation 2017 SHACL
RDF data validation 2017 SHACL
 
SanTour: Personalized Recommendation of Hiking Trails to Health Pro files
SanTour: Personalized Recommendation of Hiking Trails to Health ProfilesSanTour: Personalized Recommendation of Hiking Trails to Health Profiles
SanTour: Personalized Recommendation of Hiking Trails to Health Pro files
 
Multi-agent interactions on the Web through Linked Data Notifications
Multi-agent interactions on the Web through Linked Data NotificationsMulti-agent interactions on the Web through Linked Data Notifications
Multi-agent interactions on the Web through Linked Data Notifications
 
The MedRed Ontology for Representing Clinical Data Acquisition Metadata
The MedRed Ontology for Representing Clinical Data Acquisition MetadataThe MedRed Ontology for Representing Clinical Data Acquisition Metadata
The MedRed Ontology for Representing Clinical Data Acquisition Metadata
 
Linked Data Notifications for RDF Streams
Linked Data Notifications for RDF StreamsLinked Data Notifications for RDF Streams
Linked Data Notifications for RDF Streams
 
Fundamentos de Scala (Scala Basics) (español) Catecbol
Fundamentos de Scala (Scala Basics) (español) CatecbolFundamentos de Scala (Scala Basics) (español) Catecbol
Fundamentos de Scala (Scala Basics) (español) Catecbol
 
Connecting Stream Reasoners on the Web
Connecting Stream Reasoners on the WebConnecting Stream Reasoners on the Web
Connecting Stream Reasoners on the Web
 
RDF Stream Processing Tutorial: RSP implementations
RDF Stream Processing Tutorial: RSP implementationsRDF Stream Processing Tutorial: RSP implementations
RDF Stream Processing Tutorial: RSP implementations
 
Query Rewriting in RDF Stream Processing
Query Rewriting in RDF Stream ProcessingQuery Rewriting in RDF Stream Processing
Query Rewriting in RDF Stream Processing
 
Toward Semantic Sensor Data Archives on the Web
Toward Semantic Sensor Data Archives on the WebToward Semantic Sensor Data Archives on the Web
Toward Semantic Sensor Data Archives on the Web
 
Detection of hypoglycemic events through wearable sensors
Detection of hypoglycemic events through wearable sensorsDetection of hypoglycemic events through wearable sensors
Detection of hypoglycemic events through wearable sensors
 
RDF Stream Processing and the role of Semantics
RDF Stream Processing and the role of SemanticsRDF Stream Processing and the role of Semantics
RDF Stream Processing and the role of Semantics
 
The Schema Editor of OpenIoT for Semantic Sensor Networks
The Schema Editor of OpenIoT for Semantic Sensor NetworksThe Schema Editor of OpenIoT for Semantic Sensor Networks
The Schema Editor of OpenIoT for Semantic Sensor Networks
 
Scala Programming for Semantic Web Developers ESWC Semdev2015
Scala Programming for Semantic Web Developers ESWC Semdev2015Scala Programming for Semantic Web Developers ESWC Semdev2015
Scala Programming for Semantic Web Developers ESWC Semdev2015
 
Streams of RDF Events Derive2015
Streams of RDF Events Derive2015Streams of RDF Events Derive2015
Streams of RDF Events Derive2015
 

Recently uploaded

Main Java[All of the Base Concepts}.docx
Main Java[All of the Base Concepts}.docxMain Java[All of the Base Concepts}.docx
Main Java[All of the Base Concepts}.docx
adhitya5119
 
South African Journal of Science: Writing with integrity workshop (2024)
South African Journal of Science: Writing with integrity workshop (2024)South African Journal of Science: Writing with integrity workshop (2024)
South African Journal of Science: Writing with integrity workshop (2024)
Academy of Science of South Africa
 
Walmart Business+ and Spark Good for Nonprofits.pdf
Walmart Business+ and Spark Good for Nonprofits.pdfWalmart Business+ and Spark Good for Nonprofits.pdf
Walmart Business+ and Spark Good for Nonprofits.pdf
TechSoup
 
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdfANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
Priyankaranawat4
 
clinical examination of hip joint (1).pdf
clinical examination of hip joint (1).pdfclinical examination of hip joint (1).pdf
clinical examination of hip joint (1).pdf
Priyankaranawat4
 
Pengantar Penggunaan Flutter - Dart programming language1.pptx
Pengantar Penggunaan Flutter - Dart programming language1.pptxPengantar Penggunaan Flutter - Dart programming language1.pptx
Pengantar Penggunaan Flutter - Dart programming language1.pptx
Fajar Baskoro
 
writing about opinions about Australia the movie
writing about opinions about Australia the moviewriting about opinions about Australia the movie
writing about opinions about Australia the movie
Nicholas Montgomery
 
Film vocab for eal 3 students: Australia the movie
Film vocab for eal 3 students: Australia the movieFilm vocab for eal 3 students: Australia the movie
Film vocab for eal 3 students: Australia the movie
Nicholas Montgomery
 
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdfবাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
eBook.com.bd (প্রয়োজনীয় বাংলা বই)
 
Life upper-Intermediate B2 Workbook for student
Life upper-Intermediate B2 Workbook for studentLife upper-Intermediate B2 Workbook for student
Life upper-Intermediate B2 Workbook for student
NgcHiNguyn25
 
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
GeorgeMilliken2
 
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
Dr. Vinod Kumar Kanvaria
 
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UPLAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
RAHUL
 
Pride Month Slides 2024 David Douglas School District
Pride Month Slides 2024 David Douglas School DistrictPride Month Slides 2024 David Douglas School District
Pride Month Slides 2024 David Douglas School District
David Douglas School District
 
How to Add Chatter in the odoo 17 ERP Module
How to Add Chatter in the odoo 17 ERP ModuleHow to Add Chatter in the odoo 17 ERP Module
How to Add Chatter in the odoo 17 ERP Module
Celine George
 
Advanced Java[Extra Concepts, Not Difficult].docx
Advanced Java[Extra Concepts, Not Difficult].docxAdvanced Java[Extra Concepts, Not Difficult].docx
Advanced Java[Extra Concepts, Not Difficult].docx
adhitya5119
 
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama UniversityNatural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
Akanksha trivedi rama nursing college kanpur.
 
Smart-Money for SMC traders good time and ICT
Smart-Money for SMC traders good time and ICTSmart-Money for SMC traders good time and ICT
Smart-Money for SMC traders good time and ICT
simonomuemu
 
BBR 2024 Summer Sessions Interview Training
BBR  2024 Summer Sessions Interview TrainingBBR  2024 Summer Sessions Interview Training
BBR 2024 Summer Sessions Interview Training
Katrina Pritchard
 
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...
Nguyen Thanh Tu Collection
 

Recently uploaded (20)

Main Java[All of the Base Concepts}.docx
Main Java[All of the Base Concepts}.docxMain Java[All of the Base Concepts}.docx
Main Java[All of the Base Concepts}.docx
 
South African Journal of Science: Writing with integrity workshop (2024)
South African Journal of Science: Writing with integrity workshop (2024)South African Journal of Science: Writing with integrity workshop (2024)
South African Journal of Science: Writing with integrity workshop (2024)
 
Walmart Business+ and Spark Good for Nonprofits.pdf
Walmart Business+ and Spark Good for Nonprofits.pdfWalmart Business+ and Spark Good for Nonprofits.pdf
Walmart Business+ and Spark Good for Nonprofits.pdf
 
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdfANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
 
clinical examination of hip joint (1).pdf
clinical examination of hip joint (1).pdfclinical examination of hip joint (1).pdf
clinical examination of hip joint (1).pdf
 
Pengantar Penggunaan Flutter - Dart programming language1.pptx
Pengantar Penggunaan Flutter - Dart programming language1.pptxPengantar Penggunaan Flutter - Dart programming language1.pptx
Pengantar Penggunaan Flutter - Dart programming language1.pptx
 
writing about opinions about Australia the movie
writing about opinions about Australia the moviewriting about opinions about Australia the movie
writing about opinions about Australia the movie
 
Film vocab for eal 3 students: Australia the movie
Film vocab for eal 3 students: Australia the movieFilm vocab for eal 3 students: Australia the movie
Film vocab for eal 3 students: Australia the movie
 
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdfবাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
 
Life upper-Intermediate B2 Workbook for student
Life upper-Intermediate B2 Workbook for studentLife upper-Intermediate B2 Workbook for student
Life upper-Intermediate B2 Workbook for student
 
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
 
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
 
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UPLAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
 
Pride Month Slides 2024 David Douglas School District
Pride Month Slides 2024 David Douglas School DistrictPride Month Slides 2024 David Douglas School District
Pride Month Slides 2024 David Douglas School District
 
How to Add Chatter in the odoo 17 ERP Module
How to Add Chatter in the odoo 17 ERP ModuleHow to Add Chatter in the odoo 17 ERP Module
How to Add Chatter in the odoo 17 ERP Module
 
Advanced Java[Extra Concepts, Not Difficult].docx
Advanced Java[Extra Concepts, Not Difficult].docxAdvanced Java[Extra Concepts, Not Difficult].docx
Advanced Java[Extra Concepts, Not Difficult].docx
 
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama UniversityNatural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
 
Smart-Money for SMC traders good time and ICT
Smart-Money for SMC traders good time and ICTSmart-Money for SMC traders good time and ICT
Smart-Money for SMC traders good time and ICT
 
BBR 2024 Summer Sessions Interview Training
BBR  2024 Summer Sessions Interview TrainingBBR  2024 Summer Sessions Interview Training
BBR 2024 Summer Sessions Interview Training
 
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...
 

SSN11: Semantic Sensor Data Search in a Federated Sensor Network

  • 1. 4th International Workshop on Semantic Sensor Networks ISWC 2011 Semantic Sensor Data Search in a Federated Sensor Network Jean-Paul Calbimonte1, Hoyoung Jeung2, Oscar Corcho1 and Karl Aberer2 1Ontology Engineering Group. Facultad de Informática, Universidad Politécnica de Madrid. 2Distributed Information Systems Laboratory School of Computer Science & Communication Systems, EPFL. jp.calbimonte@upm.es Date: 23/10/2011
  • 2. Outline • Introduction • Sensor data • Sensor metadata • Ontological representation • Mapping sensor streams • Sensor data search • Query translation • GSN URL API • Conclusions 2
  • 3. Swiss-Experiment • FP7 Network of Excellence Environmental and GeoScience research Swiss Alps Geo Researcher ... Snow, Real-time Wind, ... data ... Radiation. Lots of stuff I want data to create my •How much snow is lost to evaporation? models and •Snow redistribution by wind compare • Wind erosion of sand • ... 3
  • 4. Swiss-Experiment Infrastructure • Global Sensor Networks, deployment for SwissEx. • Distributed environment: GSN Davos, GSN Zurich, etc. • In each site, a number of sensors available • Each one with different Sensor observations schema • Metadata stored in wiki • Federated metadata management: • Sensor metadata Jeung H., Sarni, S., Paparrizos, I., Sathe, S., Aberer, K., Dawes, N., Papaioannus, T., Lehning, M.Effective Metadata Management in federated Sensor Networks. in SUTC, 2010 4
  • 5. Sensor Metadata station location sensors model properties 5
  • 6. Sensor Metadata • What properties are measured • Which sensors available • Where are they located • How are they configured • Who is responsible 6
  • 8. W3C SSN-XG Ontology • SSN Ontology ssn:isProducedBy ssn:SensorOutput ssn:Sensor ssn:observedBy ssn:observationResult ssn:hasValue ssn:Observation ssn:ObservationValue ssn:observes ssn:featureOfInterest quantityValue ssn:observedProperty ssn:FeatureOfInterest xsd:datatype ssn:Property ssn:hasProperty 8
  • 9. W3C SSN-XG Ontology ssn:OperatingRange ssn:hasOperatingRange ssn:Deployment ssn:Sensing ssn:hasDeployment ssn:System ssn:implements ssn:deployedOnPlatform ssn:Sensor ssn:onPlatform ssn:Device ssn:Platform ssn:hasMeasurementCapability ssn:MeasurementCapability ssn:SensingDevice 9
  • 10. Example swissex:Sensor1 rdf:type ssn:Sensor; ssn:onPlatform swissex:Station1; ssn:observes [rdf:type sweetSpeed:WindSpeed]. swissex:Sensor2 station rdf:type ssn:Sensor; ssn:onPlatform swissex:Station1; ssn:observes [rdf:type sweetTemp:Temperature]. swissex:Station1 :hasGeometry [ rdf:type wgs84:Point; wgs84:lat "46.8037166"; wgs84:long "9.7780305"]. 10
  • 11. Example swissex:WindSpeedObservation1 rdf:type ssn:Observation; ssn:featureOfInterest [rdf:type sweetAtmoWind:Wind]; ssn:observedProperty [rdf:type sweetSpeed:WindSpeed]; ssn:observationResult [rdf:type ssn:SensorOutput; ssn:hasValue [qudt:numericValue "6.245"^^xsd:double]]; ssn:observationResultTime [time:inXSDDatatime "2011-10-26T21:32:52"]; ssn:observedBy swissex:Sensor1 ; WindSpeed : 6.245 At: 2011-10- 26T21:32:52 11
  • 12. Where is the Data? GSN server instance .. wan7 sensor1 sensor2 timed: datetime PK GSN sensor3 sp_wind: float … Mappings ssn:Observation 12
  • 13. Creating Mappings ssn:observedProperty ssn:Observation ssn:Property http://swissex.ch/data# ssn:observationResult Wan7/WindSpeed/Observation{timed} sweetSpeed:WindSpeed wan7 ssn:SensorOutput timed: datetime PK http://swissex.ch/data# sp_wind: float ssn:hasValue Wan7/ WindSpeed/ ObsOutput{timed} ssn:ObservationValue http://swissex.ch/data# qudt:numericValue Wan7/WindSpeed/ObsValue{timed} xsd:decimal sp_wind 13
  • 14. R2RML • RDB2RDF W3C Group, R2RML Mapping language: • http://www.w3.org/2001/sw/rdb2rdf/r2rml/ :Wan4WindSpeed a rr:TriplesMapClass; rr:tableName "wan7"; rr:subjectMap [ rr:template "http://swissex.ch/ns#WindSpeed/Wan7/{timed}"; rr:class ssn:ObservationValue; rr:graph ssg:swissexsnow.srdf ]; rr:predicateObjectMap [ rr:predicateMap [ rr:predicate ssn:hasQuantityValue ]; rr:objectMap[ rr:column "sp_wind" ] ]; . <http://swissex.ch/ns#/WindSpeed/Wan7/2011-05-20:20:00 > a ssn:ObservationValue <http://swissex.ch/ns#/WindSpeed/Wan7/2011-05-20:20:00 > ssn:hasQuantityValue " 4.5" 14
  • 15. Searching for Sensors • Transformed wiki metadata to SSN instances in RDF • Generated R2RML mappings for all sensors • Numbers: 28 Deployments • Aprox. 50 sensors in each deployment. More than 1500 sensors SELECT DISTINCT?lat ?long ?platformName ?deploymentName WHERE { ?sensor ssn:observes [a prop:MotionProperty]; ?system ssn:hasSubSystem ?sensor; ssn:onPlatform ?platform; ssn:hasDeployment ?deployment. ?deployment foaf:name ?deploymentName. ?platform dul:hasLocation [swissex:hasGeometry ?link]; foaf:name ?platformName. ?link omgeo:within(46.3 8.7 47.2 9.8); geo-pos:lat ?lat; geo-pos:long ?long. } 15
  • 16. Sensor Data Portal Application • Problems • Too many sensors • Too Heterogeneous • Any sensors available in this region? • Sensors that measure wind speed? • How about getting the data? 16
  • 18. Querying the Observations • Implementation of Ontology-based querying over GSN • Using the R2RML mappings • Fronting GSN with SPARQL-Stream queries • Query & Data translation process 18
  • 19. Query & Data Translation SELECT ?waveheight FROM STREAM <www.ssg4env.eu/SensorReadings.srdf> [NOW -10 MINUTES TO NOW] WHERE { ?WaveObs a ssn:Observation; sea:hasValue ?waveheight; } Query q translation Target query Sensor Networks SPARQLStream q’ mappings Query Client Processing d’ d Data [tuple] [tuple] [triple] translation Ontology-based sensor query service 19
  • 20. Data Access • GSN Web Services • GSN URL API • Compose the query as a URL: http://montblanc.slf.ch :22001/ multidata ?vs [0]= wan7 & field [0]= sp_wind & from =15/05/2011+05:00:00& to =15/05/2011+10:00:00& c_vs [0]= wan7 & c_field [0]= sp_wind & c_min [0]=10 SELECT sp_wind FROM wan7 [NOW -5 HOUR] WHERE sp_wind >10 ? SPARQL-Stream Calbimonte, J-P., Corcho O., Gray, A. Enabling Ontology-based Access to Streaming Data Sources. In ISWC 2010. 20
  • 21. Using the Mappings π timed, sp_wind SELECT ?waveheight σ FROM STREAM <www.ssg4env.eu/SensorReadings.srdf> [NOW – 5 HOUR TO NOW] sp_wind>10 WHERE { ?WaveObs a ssn:ObservationValue; qudt:numericalValue ?waveheight; ω 5 Hour FILTER (?waveheight>10) } wan7 wan7 ssn:ObservationValue http://swissex.ch/data# timed: datetime PK qudt:numericalValue Wan7/WindSpeed/ObsValue{timed} sp_wind: float xsd:datatype sp_wind 21
  • 22. Algebra expressions π timed, http://montblanc.slf.ch :22001/ multidata ?vs [0]= wan7 & field [0]= sp_wind & from =15/05/2011+05:00:00& to =15/05/2011+10:00:00& sp_wind c_vs [0]= wan7 & c_field [0]= sp_wind & c_min [0]=10 σ sp_wind>10 ω 5 Hour SELECT sp_wind FROM wan7 [NOW -5 HOUR] WHERE sp_wind >10 wan7 22
  • 23. Algebra construction π timed, sp_wind windsensor1 windsensor2 σ sp_wind>10 ω 5 Hour wan7 23
  • 24. Static optimization π timed, π timed, π timed, sp_wind windvalue windvalue σ sp_wind>10 σ windvalue>10 σ windvalue>10 ω 5 Hour ω 5 Hour ω 5 Hour wan7 windsensor1 windsensor2 Sensors, Mappings and Queries 24
  • 25. Querying the Observations SELECT ?waveheight FROM STREAM <www.ssg4env.eu/SensorReadings.srdf> [NOW -10 MINUTES TO NOW STEP 1 MINUTE] WHERE { ?WaveObs a sea:WaveHeightObservation; :22001/ multidata ?vs [0]= wan7 & http://montblanc.slf.ch field [0]= sp_wind sea:hasValue ?waveheight; } Query :Wan4WindSpeed a rr:TriplesMapClass; translation GSN rr:tableName "wan7"; SPARQLStream API rr:subjectMap [ rr:template "http://swissex.ch/ns#WindSpeed/Wan7/{timed}"; Client rr:class ssn:ObservationValue; rr:graph ssg:swissexsnow.srdf ]; Mappings Query rr:predicateObjectMap [ rr:predicateMap [ Processing rr:predicate ssn:hasQuantityValue ]; Sensor rr:objectMap[ rr:column "sp_wind" ] ]; Network [tuples] Data [triples] translation R2RML Mappings 25
  • 27. Conclusions • Use of the SSN Ontology • Sensor metadata • Sensor observations • Using R2RML mappings for virtual sensors • We can translate to query languages and APIs • Abstract expressions for representing queries • Applications • Improved sensor search • Federated environment • Schema heterogeneity 27
  • 28. TODO • Explore expressivity of queries • Expose as Linked Stream Data • Integrate with stored RDF data • Apply to other environments • Complex-event-processing engines • OGC SOS Services • Pachube • etc • Experimentation • Latency • Performance • Tuple rates • Query complexity 28
  • 29. Thanks! http://code.google.com/p/semanticstreams/ Questions, please. jp.calbimonte@upm.es 29