SlideShare una empresa de Scribd logo
1 de 24
Descargar para leer sin conexión
An Extensible Discovery Service for Smart Things
Mayer, S. and Guinard, D. 2011, 2nd international Workshop on the Web of Things


Simon Mayer [simon.mayer@inf.ethz.ch]
Distributed Systems Group, ETH Zurich
Environments of smart things...

                          Temperature: 24˚C                                            Please configure
                                                                                     forecast data source




                            Human-readable and understandable



                                                                                                            Your fridge currently
                                                                                                              consumes 45W
                     Forecast: Rain


                                                                 I’m located in Zurich!




Sunday, 12.06.2010                    2nd International Workshop on the Web of Things, San Francisco (CA)                           2
Environments of smart things...

                          Temperature: 24˚C                                            Please configure
                                                                                     forecast data source




                                      What about machines?

                                                                                                            Your fridge currently
                                                                                                              consumes 45W
                     Forecast: Rain


                                                                 I’m located in Zurich!




Sunday, 12.06.2010                    2nd International Workshop on the Web of Things, San Francisco (CA)                           3
Semantic annotation of smart things...
                                  …<div itemscope><div                                                      ...
                          Temperature: 24˚C
                          itemprop=“tag=“>Illumination</div><div
                            itemprop=“value”>150</div></div>…



                                                   Machine-readable


                                                                                                             {“consumption”:”45”,
                {“data”:[{“weather-                                                                              “unit”:”Watts”,
                forecast”:”Rain”}],                                                                          “appliance”:”fridge”}
              “name”:”MyNabaztag”}
                                                    <div class="geo">GEO: <span
                                                  class="latitude">8.549902</span>,
                                                      <span class="longitude">-
                                                           I’m located in Zurich!
                                                   47.378088</span></span></div>




Sunday, 12.06.2010                    2nd International Workshop on the Web of Things, San Francisco (CA)                            4
Semantic annotation of smart things...
                             …<div itemscope><div                                                     ...
                             Content type: text/html
                      itemprop=“tag=“>Illumination</div><div
                             Annotations: Microdata
                        itemprop=“value”>150</div></div>…



                            Every smart device capable of
                            parsing every single format...?
                                                                                                       {“consumption”:”45”,
           {“data”:[{“weather-                                                                            Content type:
                                                                                                           “unit”:”Watts”,
           forecast”:”Rain”}],
     Content type: application/json                                                                      application/json
                                                                                                       “appliance”:”fridge”}
         “name”:”MyNabaztag”}
                                              <div class="geo">GEO: <span
                                            class="latitude">8.549902</span>,
                                                  Content type: text/html
                                                <span class="longitude">-
                                                Annotations: Microformats
                                             47.378088</span></span></div>




Sunday, 12.06.2010              2nd International Workshop on the Web of Things, San Francisco (CA)                            5
And it gets worse...
                     Imagine we agreed on everybody using application/json...

                                                                   {“data”:[{“weather-forecast”:”Rain”}],
                                                                          “name”:”MyNabaztag”}




                                                                  {“data-item”:[{“weather-forecast”:”Rain”}],
                                                                            “name”:”MyNabaztag”}
                                                                                                          Different syntax


                                                                         {“data”:{“weather-forecast”:”Rain”},
     Content type:                                                             “name”:”MyNabaztag”}
    application/json                                                                                     Different formatting



Sunday, 12.06.2010                 2nd International Workshop on the Web of Things, San Francisco (CA)                          6
Options for semantically annotating smart things

                                                                           Or multiple (but few!) formats


                     A single, agreed upon,
                        standard format


                                                                        Problem of different syntax



                                                                            Probably not feasible...




Sunday, 12.06.2010           2nd International Workshop on the Web of Things, San Francisco (CA)            7
Options for semantically annotating smart things



                     A method to understand
                     multiple different formats



                                                                                Different Syntax: OK!



                                                                                     Future formats?




Sunday, 12.06.2010             2nd International Workshop on the Web of Things, San Francisco (CA)      8
Options for semantically annotating smart things


                     An extensible method to
                       understand multiple
                        different formats


                                                                              Different Syntax: OK!



                                                                                Future formats: OK!




Sunday, 12.06.2010           2nd International Workshop on the Web of Things, San Francisco (CA)      9
Goal
                     Given the representation of a (Web) resource,
                     extract interesting information about that resource
                     regardless of the annotation format used

      Approach

                Discovery based on Strategies (e.g. Microformats-Strategy)
                Users can create, extend (and delete) Strategies at runtime!

Sunday, 12.06.2010               2nd International Workshop on the Web of Things, San Francisco (CA)   10
DiscoWoT: Discovery Process




Sunday, 12.06.2010   2nd International Workshop on the Web of Things, San Francisco (CA)   11
DiscoWoT: Discovery Process (1)




              GET /analyze?http://.../Sensor




 Client knows resource’s URL:         http://.../Sensor
 Requests a resource description at DiscoWoT’s /analyze endpoint



Sunday, 12.06.2010             2nd International Workshop on the Web of Things, San Francisco (CA)   12
DiscoWoT: Discovery Process (2)




 DiscoWoT fetches resource representation
 Extraction of strategy input parameters



Sunday, 12.06.2010   2nd International Workshop on the Web of Things, San Francisco (CA)   13
DiscoWoT: Discovery Process (3)




 DiscoWoT applies registered strategies to the resource representation




Sunday, 12.06.2010    2nd International Workshop on the Web of Things, San Francisco (CA)   14
DiscoWoT: Discovery Process (4)




              {“services”:{“unit”:”ºC”,…},…}




 If multiple strategies can map the representation, the resulting resource
  descriptions are fused
 The resulting resource description is returned


Sunday, 12.06.2010             2nd International Workshop on the Web of Things, San Francisco (CA)   15
DiscoWoT: Discovery Process




 How to access resources behind firewalls/protected resources




Sunday, 12.06.2010    2nd International Workshop on the Web of Things, San Francisco (CA)   16
The DiscoWoT Project – Flexibility


                                        GET /analyze?Token




         Is Token a URL?
                     → Try to fetch the content at its location!
                     → Apply strategies to this content!

         Is it text/html or application/json?
                     → Apply strategies to Token itself


 Apply every strategy to all information accessible about submitted data
 Allows to handle resources behind firewalls and protected resources!
        Client should not send URL but rather send contents at that URL

Sunday, 12.06.2010                     2nd International Workshop on the Web of Things, San Francisco (CA)   17
The DiscoWoT Project – Extensibility (1)

                      POST /strategies NewStrategy.java
                     POST /strategies/NewStrategy mapping




 Users inject a new strategy by POSTing to the /strategies
  endpoint

 Users add a mapping to a strategy by POSTing to the
  /strategies/{strategyID} endpoint


Sunday, 12.06.2010              2nd International Workshop on the Web of Things, San Francisco (CA)   18
The DiscoWoT Project – Extensibility (1)

                         POST /strategies NewStrategy.java
                       POST /strategies/NewStrategy mapping



          Strategy?
                     → Basically parsers for different formats
                     → Implement the DiscoveryStrategy interface
                     → e.g. MicrodataStrategy

          Mapping?
                     → Maps to interpret parsed values
                     → Multiple mappings per strategy
                     → e.g. (“my_location” → “geo”)


Sunday, 12.06.2010                   2nd International Workshop on the Web of Things, San Francisco (CA)   19
The DiscoWoT Project – Extensibility (2)


                     POST /strategies/ <OpenSearch>...</>




 Registration by sending an OpenSearch Document
        Mighty Google as a fallback mechanism...


 Allows to easily federate multiple DiscoWoT instances



Sunday, 12.06.2010              2nd International Workshop on the Web of Things, San Francisco (CA)   20
Conclusions



 An extensible discovery service for smart things

 Based on multiple discovery strategies

 No problems with firewalls/access restrictions

 REST from tip to toe




Sunday, 12.06.2010     2nd International Workshop on the Web of Things, San Francisco (CA)   21
Conclusions



                     Experience

                                   A great help for
                                 decoupling service
                              providers and consumers




Sunday, 12.06.2010                2nd International Workshop on the Web of Things, San Francisco (CA)   22
Announcement                                                                                                    Woohooo!




 AutoWoT project now Open Source!
 Check out http://code.google.com/p/autowot
            Facilitating the Integration and Interaction of Real-World Services for the Web of Things (Mayer S., Guinard D., Trifa V.)
                                                                                   Upgrading Autowot (Barthels C., Bachelor’s Thesis)
Sunday, 12.06.2010                        2nd International Workshop on the Web of Things, San Francisco (CA)                  23
Thank you for your attention!




Sunday, 12.06.2010   2nd International Workshop on the Web of Things, San Francisco (CA)   24

Más contenido relacionado

Similar a DiscoWoT - Extensible Discovery for Smart Things

Facilitating Data Curation: a Solution Developed in the Toxicology Domain
Facilitating Data Curation: a Solution Developed in the Toxicology DomainFacilitating Data Curation: a Solution Developed in the Toxicology Domain
Facilitating Data Curation: a Solution Developed in the Toxicology DomainChristophe Debruyne
 
DSD-INT 2018 Earth Science Through Datacubes - Merticariu
DSD-INT 2018 Earth Science Through Datacubes - MerticariuDSD-INT 2018 Earth Science Through Datacubes - Merticariu
DSD-INT 2018 Earth Science Through Datacubes - MerticariuDeltares
 
HDTR images with Photoshop Javascript Scripting
HDTR images with Photoshop Javascript ScriptingHDTR images with Photoshop Javascript Scripting
HDTR images with Photoshop Javascript ScriptingDavid Gómez García
 
Bending the IoT to your will with JavaScript
Bending the IoT to your will with JavaScriptBending the IoT to your will with JavaScript
Bending the IoT to your will with JavaScriptAll Things Open
 
Schema registries and Snowplow
Schema registries and SnowplowSchema registries and Snowplow
Schema registries and Snowplowmiiker
 
FIWARE Global Summit - Lessons from Building FIWARE Environment with IoT Agent
FIWARE Global Summit - Lessons from Building FIWARE Environment with IoT AgentFIWARE Global Summit - Lessons from Building FIWARE Environment with IoT Agent
FIWARE Global Summit - Lessons from Building FIWARE Environment with IoT AgentFIWARE
 
Practical Machine Learning in Information Security
Practical Machine Learning in Information SecurityPractical Machine Learning in Information Security
Practical Machine Learning in Information SecuritySven Krasser
 
CQRS and Event Sourcing with MongoDB and PHP
CQRS and Event Sourcing with MongoDB and PHPCQRS and Event Sourcing with MongoDB and PHP
CQRS and Event Sourcing with MongoDB and PHPDavide Bellettini
 
Implementing and Visualizing Clickstream data with MongoDB
Implementing and Visualizing Clickstream data with MongoDBImplementing and Visualizing Clickstream data with MongoDB
Implementing and Visualizing Clickstream data with MongoDBMongoDB
 
Design of a Web-based Distributed Location-aware Infrastructure for Mobile De...
Design of a Web-based Distributed Location-aware Infrastructure for Mobile De...Design of a Web-based Distributed Location-aware Infrastructure for Mobile De...
Design of a Web-based Distributed Location-aware Infrastructure for Mobile De...Vlad Trifa
 
MongoDB for Time Series Data Part 2: Analyzing Time Series Data Using the Agg...
MongoDB for Time Series Data Part 2: Analyzing Time Series Data Using the Agg...MongoDB for Time Series Data Part 2: Analyzing Time Series Data Using the Agg...
MongoDB for Time Series Data Part 2: Analyzing Time Series Data Using the Agg...MongoDB
 
Building Microservices with Scala, functional domain models and Spring Boot -...
Building Microservices with Scala, functional domain models and Spring Boot -...Building Microservices with Scala, functional domain models and Spring Boot -...
Building Microservices with Scala, functional domain models and Spring Boot -...JAXLondon2014
 
#JaxLondon: Building microservices with Scala, functional domain models and S...
#JaxLondon: Building microservices with Scala, functional domain models and S...#JaxLondon: Building microservices with Scala, functional domain models and S...
#JaxLondon: Building microservices with Scala, functional domain models and S...Chris Richardson
 
SC7 Hangout 3: Architecture of the BDE Pilot for Secure Societies
SC7 Hangout 3: Architecture of the BDE Pilot for Secure SocietiesSC7 Hangout 3: Architecture of the BDE Pilot for Secure Societies
SC7 Hangout 3: Architecture of the BDE Pilot for Secure SocietiesBigData_Europe
 
Log everything! @DC13
Log everything! @DC13Log everything! @DC13
Log everything! @DC13DECK36
 
Terrastore - A document database for developers
Terrastore - A document database for developersTerrastore - A document database for developers
Terrastore - A document database for developersSergio Bossa
 

Similar a DiscoWoT - Extensible Discovery for Smart Things (20)

Facilitating Data Curation: a Solution Developed in the Toxicology Domain
Facilitating Data Curation: a Solution Developed in the Toxicology DomainFacilitating Data Curation: a Solution Developed in the Toxicology Domain
Facilitating Data Curation: a Solution Developed in the Toxicology Domain
 
DSD-INT 2018 Earth Science Through Datacubes - Merticariu
DSD-INT 2018 Earth Science Through Datacubes - MerticariuDSD-INT 2018 Earth Science Through Datacubes - Merticariu
DSD-INT 2018 Earth Science Through Datacubes - Merticariu
 
SRV408 Deep Dive on AWS IoT
SRV408 Deep Dive on AWS IoTSRV408 Deep Dive on AWS IoT
SRV408 Deep Dive on AWS IoT
 
HDTR images with Photoshop Javascript Scripting
HDTR images with Photoshop Javascript ScriptingHDTR images with Photoshop Javascript Scripting
HDTR images with Photoshop Javascript Scripting
 
Bending the IoT to your will with JavaScript
Bending the IoT to your will with JavaScriptBending the IoT to your will with JavaScript
Bending the IoT to your will with JavaScript
 
Schema registries and Snowplow
Schema registries and SnowplowSchema registries and Snowplow
Schema registries and Snowplow
 
FIWARE Global Summit - Lessons from Building FIWARE Environment with IoT Agent
FIWARE Global Summit - Lessons from Building FIWARE Environment with IoT AgentFIWARE Global Summit - Lessons from Building FIWARE Environment with IoT Agent
FIWARE Global Summit - Lessons from Building FIWARE Environment with IoT Agent
 
Practical Machine Learning in Information Security
Practical Machine Learning in Information SecurityPractical Machine Learning in Information Security
Practical Machine Learning in Information Security
 
1
11
1
 
1
11
1
 
CQRS and Event Sourcing with MongoDB and PHP
CQRS and Event Sourcing with MongoDB and PHPCQRS and Event Sourcing with MongoDB and PHP
CQRS and Event Sourcing with MongoDB and PHP
 
Analytics with Spark
Analytics with SparkAnalytics with Spark
Analytics with Spark
 
Implementing and Visualizing Clickstream data with MongoDB
Implementing and Visualizing Clickstream data with MongoDBImplementing and Visualizing Clickstream data with MongoDB
Implementing and Visualizing Clickstream data with MongoDB
 
Design of a Web-based Distributed Location-aware Infrastructure for Mobile De...
Design of a Web-based Distributed Location-aware Infrastructure for Mobile De...Design of a Web-based Distributed Location-aware Infrastructure for Mobile De...
Design of a Web-based Distributed Location-aware Infrastructure for Mobile De...
 
MongoDB for Time Series Data Part 2: Analyzing Time Series Data Using the Agg...
MongoDB for Time Series Data Part 2: Analyzing Time Series Data Using the Agg...MongoDB for Time Series Data Part 2: Analyzing Time Series Data Using the Agg...
MongoDB for Time Series Data Part 2: Analyzing Time Series Data Using the Agg...
 
Building Microservices with Scala, functional domain models and Spring Boot -...
Building Microservices with Scala, functional domain models and Spring Boot -...Building Microservices with Scala, functional domain models and Spring Boot -...
Building Microservices with Scala, functional domain models and Spring Boot -...
 
#JaxLondon: Building microservices with Scala, functional domain models and S...
#JaxLondon: Building microservices with Scala, functional domain models and S...#JaxLondon: Building microservices with Scala, functional domain models and S...
#JaxLondon: Building microservices with Scala, functional domain models and S...
 
SC7 Hangout 3: Architecture of the BDE Pilot for Secure Societies
SC7 Hangout 3: Architecture of the BDE Pilot for Secure SocietiesSC7 Hangout 3: Architecture of the BDE Pilot for Secure Societies
SC7 Hangout 3: Architecture of the BDE Pilot for Secure Societies
 
Log everything! @DC13
Log everything! @DC13Log everything! @DC13
Log everything! @DC13
 
Terrastore - A document database for developers
Terrastore - A document database for developersTerrastore - A document database for developers
Terrastore - A document database for developers
 

Más de Simon Mayer

Autonomous Agents for Flexible Hypermedia Systems
Autonomous Agents for Flexible Hypermedia Systems Autonomous Agents for Flexible Hypermedia Systems
Autonomous Agents for Flexible Hypermedia Systems Simon Mayer
 
WoT 2016 - Seventh International Workshop on the Web of Things
WoT 2016 - Seventh International Workshop on the Web of ThingsWoT 2016 - Seventh International Workshop on the Web of Things
WoT 2016 - Seventh International Workshop on the Web of ThingsSimon Mayer
 
Semantics for the Web of Things
Semantics for the Web of ThingsSemantics for the Web of Things
Semantics for the Web of ThingsSimon Mayer
 
Configuration of Smart Environments Made Simple
Configuration of Smart Environments Made SimpleConfiguration of Smart Environments Made Simple
Configuration of Smart Environments Made SimpleSimon Mayer
 
Semantic Metadata to Support Device Interaction in Smart Environments
Semantic Metadata to Support Device Interaction in Smart EnvironmentsSemantic Metadata to Support Device Interaction in Smart Environments
Semantic Metadata to Support Device Interaction in Smart EnvironmentsSimon Mayer
 
Service Integration in the Web of Things
Service Integration in the Web of ThingsService Integration in the Web of Things
Service Integration in the Web of ThingsSimon Mayer
 
Searching in a Web-based Infrastructure for Smart Things
Searching in a Web-based Infrastructure for Smart ThingsSearching in a Web-based Infrastructure for Smart Things
Searching in a Web-based Infrastructure for Smart ThingsSimon Mayer
 
A Computational Space for the Web of Things
A Computational Space for the Web of ThingsA Computational Space for the Web of Things
A Computational Space for the Web of ThingsSimon Mayer
 
In Search of an Internet of Things Service Architecture: REST or WS-*? A Deve...
In Search of an Internet of Things Service Architecture: REST or WS-*? A Deve...In Search of an Internet of Things Service Architecture: REST or WS-*? A Deve...
In Search of an Internet of Things Service Architecture: REST or WS-*? A Deve...Simon Mayer
 
Service Integration - A Web of Things Perspective
Service Integration - A Web of Things PerspectiveService Integration - A Web of Things Perspective
Service Integration - A Web of Things PerspectiveSimon Mayer
 
Web-based Smart Things Ecosystems
Web-based Smart Things EcosystemsWeb-based Smart Things Ecosystems
Web-based Smart Things EcosystemsSimon Mayer
 

Más de Simon Mayer (11)

Autonomous Agents for Flexible Hypermedia Systems
Autonomous Agents for Flexible Hypermedia Systems Autonomous Agents for Flexible Hypermedia Systems
Autonomous Agents for Flexible Hypermedia Systems
 
WoT 2016 - Seventh International Workshop on the Web of Things
WoT 2016 - Seventh International Workshop on the Web of ThingsWoT 2016 - Seventh International Workshop on the Web of Things
WoT 2016 - Seventh International Workshop on the Web of Things
 
Semantics for the Web of Things
Semantics for the Web of ThingsSemantics for the Web of Things
Semantics for the Web of Things
 
Configuration of Smart Environments Made Simple
Configuration of Smart Environments Made SimpleConfiguration of Smart Environments Made Simple
Configuration of Smart Environments Made Simple
 
Semantic Metadata to Support Device Interaction in Smart Environments
Semantic Metadata to Support Device Interaction in Smart EnvironmentsSemantic Metadata to Support Device Interaction in Smart Environments
Semantic Metadata to Support Device Interaction in Smart Environments
 
Service Integration in the Web of Things
Service Integration in the Web of ThingsService Integration in the Web of Things
Service Integration in the Web of Things
 
Searching in a Web-based Infrastructure for Smart Things
Searching in a Web-based Infrastructure for Smart ThingsSearching in a Web-based Infrastructure for Smart Things
Searching in a Web-based Infrastructure for Smart Things
 
A Computational Space for the Web of Things
A Computational Space for the Web of ThingsA Computational Space for the Web of Things
A Computational Space for the Web of Things
 
In Search of an Internet of Things Service Architecture: REST or WS-*? A Deve...
In Search of an Internet of Things Service Architecture: REST or WS-*? A Deve...In Search of an Internet of Things Service Architecture: REST or WS-*? A Deve...
In Search of an Internet of Things Service Architecture: REST or WS-*? A Deve...
 
Service Integration - A Web of Things Perspective
Service Integration - A Web of Things PerspectiveService Integration - A Web of Things Perspective
Service Integration - A Web of Things Perspective
 
Web-based Smart Things Ecosystems
Web-based Smart Things EcosystemsWeb-based Smart Things Ecosystems
Web-based Smart Things Ecosystems
 

Último

Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 

Último (20)

Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 

DiscoWoT - Extensible Discovery for Smart Things

  • 1. An Extensible Discovery Service for Smart Things Mayer, S. and Guinard, D. 2011, 2nd international Workshop on the Web of Things Simon Mayer [simon.mayer@inf.ethz.ch] Distributed Systems Group, ETH Zurich
  • 2. Environments of smart things... Temperature: 24˚C Please configure forecast data source Human-readable and understandable Your fridge currently consumes 45W Forecast: Rain I’m located in Zurich! Sunday, 12.06.2010 2nd International Workshop on the Web of Things, San Francisco (CA) 2
  • 3. Environments of smart things... Temperature: 24˚C Please configure forecast data source What about machines? Your fridge currently consumes 45W Forecast: Rain I’m located in Zurich! Sunday, 12.06.2010 2nd International Workshop on the Web of Things, San Francisco (CA) 3
  • 4. Semantic annotation of smart things... …<div itemscope><div ... Temperature: 24˚C itemprop=“tag=“>Illumination</div><div itemprop=“value”>150</div></div>… Machine-readable {“consumption”:”45”, {“data”:[{“weather- “unit”:”Watts”, forecast”:”Rain”}], “appliance”:”fridge”} “name”:”MyNabaztag”} <div class="geo">GEO: <span class="latitude">8.549902</span>, <span class="longitude">- I’m located in Zurich! 47.378088</span></span></div> Sunday, 12.06.2010 2nd International Workshop on the Web of Things, San Francisco (CA) 4
  • 5. Semantic annotation of smart things... …<div itemscope><div ... Content type: text/html itemprop=“tag=“>Illumination</div><div Annotations: Microdata itemprop=“value”>150</div></div>… Every smart device capable of parsing every single format...? {“consumption”:”45”, {“data”:[{“weather- Content type: “unit”:”Watts”, forecast”:”Rain”}], Content type: application/json application/json “appliance”:”fridge”} “name”:”MyNabaztag”} <div class="geo">GEO: <span class="latitude">8.549902</span>, Content type: text/html <span class="longitude">- Annotations: Microformats 47.378088</span></span></div> Sunday, 12.06.2010 2nd International Workshop on the Web of Things, San Francisco (CA) 5
  • 6. And it gets worse... Imagine we agreed on everybody using application/json... {“data”:[{“weather-forecast”:”Rain”}], “name”:”MyNabaztag”} {“data-item”:[{“weather-forecast”:”Rain”}], “name”:”MyNabaztag”} Different syntax {“data”:{“weather-forecast”:”Rain”}, Content type: “name”:”MyNabaztag”} application/json Different formatting Sunday, 12.06.2010 2nd International Workshop on the Web of Things, San Francisco (CA) 6
  • 7. Options for semantically annotating smart things Or multiple (but few!) formats A single, agreed upon, standard format Problem of different syntax Probably not feasible... Sunday, 12.06.2010 2nd International Workshop on the Web of Things, San Francisco (CA) 7
  • 8. Options for semantically annotating smart things A method to understand multiple different formats Different Syntax: OK! Future formats? Sunday, 12.06.2010 2nd International Workshop on the Web of Things, San Francisco (CA) 8
  • 9. Options for semantically annotating smart things An extensible method to understand multiple different formats Different Syntax: OK! Future formats: OK! Sunday, 12.06.2010 2nd International Workshop on the Web of Things, San Francisco (CA) 9
  • 10. Goal Given the representation of a (Web) resource, extract interesting information about that resource regardless of the annotation format used Approach  Discovery based on Strategies (e.g. Microformats-Strategy)  Users can create, extend (and delete) Strategies at runtime! Sunday, 12.06.2010 2nd International Workshop on the Web of Things, San Francisco (CA) 10
  • 11. DiscoWoT: Discovery Process Sunday, 12.06.2010 2nd International Workshop on the Web of Things, San Francisco (CA) 11
  • 12. DiscoWoT: Discovery Process (1) GET /analyze?http://.../Sensor  Client knows resource’s URL: http://.../Sensor  Requests a resource description at DiscoWoT’s /analyze endpoint Sunday, 12.06.2010 2nd International Workshop on the Web of Things, San Francisco (CA) 12
  • 13. DiscoWoT: Discovery Process (2)  DiscoWoT fetches resource representation  Extraction of strategy input parameters Sunday, 12.06.2010 2nd International Workshop on the Web of Things, San Francisco (CA) 13
  • 14. DiscoWoT: Discovery Process (3)  DiscoWoT applies registered strategies to the resource representation Sunday, 12.06.2010 2nd International Workshop on the Web of Things, San Francisco (CA) 14
  • 15. DiscoWoT: Discovery Process (4) {“services”:{“unit”:”ºC”,…},…}  If multiple strategies can map the representation, the resulting resource descriptions are fused  The resulting resource description is returned Sunday, 12.06.2010 2nd International Workshop on the Web of Things, San Francisco (CA) 15
  • 16. DiscoWoT: Discovery Process  How to access resources behind firewalls/protected resources Sunday, 12.06.2010 2nd International Workshop on the Web of Things, San Francisco (CA) 16
  • 17. The DiscoWoT Project – Flexibility GET /analyze?Token Is Token a URL? → Try to fetch the content at its location! → Apply strategies to this content! Is it text/html or application/json? → Apply strategies to Token itself  Apply every strategy to all information accessible about submitted data  Allows to handle resources behind firewalls and protected resources!  Client should not send URL but rather send contents at that URL Sunday, 12.06.2010 2nd International Workshop on the Web of Things, San Francisco (CA) 17
  • 18. The DiscoWoT Project – Extensibility (1) POST /strategies NewStrategy.java POST /strategies/NewStrategy mapping  Users inject a new strategy by POSTing to the /strategies endpoint  Users add a mapping to a strategy by POSTing to the /strategies/{strategyID} endpoint Sunday, 12.06.2010 2nd International Workshop on the Web of Things, San Francisco (CA) 18
  • 19. The DiscoWoT Project – Extensibility (1) POST /strategies NewStrategy.java POST /strategies/NewStrategy mapping Strategy? → Basically parsers for different formats → Implement the DiscoveryStrategy interface → e.g. MicrodataStrategy Mapping? → Maps to interpret parsed values → Multiple mappings per strategy → e.g. (“my_location” → “geo”) Sunday, 12.06.2010 2nd International Workshop on the Web of Things, San Francisco (CA) 19
  • 20. The DiscoWoT Project – Extensibility (2) POST /strategies/ <OpenSearch>...</>  Registration by sending an OpenSearch Document  Mighty Google as a fallback mechanism...  Allows to easily federate multiple DiscoWoT instances Sunday, 12.06.2010 2nd International Workshop on the Web of Things, San Francisco (CA) 20
  • 21. Conclusions  An extensible discovery service for smart things  Based on multiple discovery strategies  No problems with firewalls/access restrictions  REST from tip to toe Sunday, 12.06.2010 2nd International Workshop on the Web of Things, San Francisco (CA) 21
  • 22. Conclusions Experience A great help for decoupling service providers and consumers Sunday, 12.06.2010 2nd International Workshop on the Web of Things, San Francisco (CA) 22
  • 23. Announcement Woohooo!  AutoWoT project now Open Source!  Check out http://code.google.com/p/autowot Facilitating the Integration and Interaction of Real-World Services for the Web of Things (Mayer S., Guinard D., Trifa V.) Upgrading Autowot (Barthels C., Bachelor’s Thesis) Sunday, 12.06.2010 2nd International Workshop on the Web of Things, San Francisco (CA) 23
  • 24. Thank you for your attention! Sunday, 12.06.2010 2nd International Workshop on the Web of Things, San Francisco (CA) 24