SlideShare ist ein Scribd-Unternehmen logo
1 von 62
Downloaden Sie, um offline zu lesen
Semantic Metadata to Support Device Interaction in Smart Environments 1|
Simon Mayer
http://people.inf.ethz.ch/mayersi
Simon Mayer and Gianin Basler, ETH Zurich
Fourth International Workshop on the Web of Things (WoT 2013)
September 9th 2013, Zurich, Switzerland
Semantic Metadata to Support Device
Interaction in Smart Environments
Semantic Metadata to Support Device Interaction in Smart Environments 2|
Simon Mayer
http://people.inf.ethz.ch/mayersi
Myself
Simon Mayer, PhD Student at ETH Zurich, WoT since 2009
Realize the full potential of smart environments
by integrating functionality across services
I know the
temperature!
What’s the
temperature?
Is it going to rain
today?
Do I need to
be watered?
I can find song
files for you!
I want to listen to
“Yellow Submarine”
I can play song files!
Realize the full potential of smart environments
by integrating functionality across services
 Enabling services to talk to each other and form mashups
 Enabling people to talk to service mashups
Semantic Metadata to Support Device Interaction in Smart Environments 6|
Simon Mayer
http://people.inf.ethz.ch/mayersi
 Heterogeneous services from different providers should
be dynamically composable
 Services don’t know anything about how to interact with other
services when they are created (i.e., no “standards”)
 Interaction metadata discoverable on the fly!
 Flexibility
 System should work in the user’s home, office, hotels, etc.
Challenges
Simon’s Office
- Contains 2 services
Think about a smart environment

I have a song title,
“Yellow Submarine”.
I’d like to play that song.
Soodle S.A
Songs Search
Machine
Method: GET
Input: Song Title
Output: MP3 URL
Sapple, Inc.
Media Player
Method: PUT
Input: MP3 URL
Output: Plays song
Not possible! No Link!
I can do
that!
:-(
The songs search machine doesn’t provide any
hypermedia controls that link to the media player
Nor any information that helps the client find out that it could play a song using the services
I can find that
out, actually
YES. I GOT IT!
Our goal is to enable it for this guy!
Semantic Metadata to Support Device Interaction in Smart Environments 9|
Simon Mayer
http://people.inf.ethz.ch/mayersi
 Crowd-sourced Service Integration
 Web Linking, “Globalized” HATEOAS
 Semantics-based Service Integration
 Web Linking + Functional metadata
Service Integration: “Self-aware” Things?
Techniques for Semantic Service Integration
Semantic Metadata to Support Device Interaction in Smart Environments 10|
Simon Mayer
http://people.inf.ethz.ch/mayersi
 Crowd-sourced Service Integration
 Web Linking, “Globalized” HATEOAS
 Semantics-based Service Integration
 Web Linking + Functional metadata
Service Integration: “Self-aware” Things?
Techniques for Semantic Service Integration
Semantic Metadata to Support Device Interaction in Smart Environments 11|
Simon Mayer
http://people.inf.ethz.ch/mayersi
 Rely on developers or users to publish links
Semantic Service Integration
Crowd-sourced Service Integration
Simon’s Office
- Contains 2 services
Soodle S.A
Songs Search
Machine
Method: GET
Input: Song Title
Output: MP3 URL
Sapple Inc.
Media Player
Method: PUT
Input: MP3 URL
Output: Will play music
I know that you can
connect these services!
Let me show you!
Semantic Metadata to Support Device Interaction in Smart Environments 12|
Simon Mayer
http://people.inf.ethz.ch/mayersi
Crowd-sourced Service Integration
Approach: Service Marketplaces
S. Mayer, D. Karam. A Computational Marketplace for the Web of Things, 2012
 Mashup developers find links manually, but publish their
mashups in a “WoT Marketplace”
 Clients can ask the marketplace for linking information
 These links make sense, because they are used in a mashup!
 Clients only need to choose which link to follow
 We called these «Computational» and «WoT»
marketplaces

Semantic Metadata to Support Device Interaction in Smart Environments 13|
Simon Mayer
http://people.inf.ethz.ch/mayersi
Crowd-sourced Service Integration
Service Marketplaces
Marketplace
Soodle S.A
Songs Search
Machine
Method: GET
Input: Song Title
Output: MP3 URL
Sapple Inc.
Media Player
Method: PUT
Input: MP3 URL
Output: Will play music
Node A
Node B
Node C
Node D
Node E
Marketplace
Node A
Node B
Node C
Node D
Node E
I know that you can connect
the services at A and E!
Let me show you!
POST wot_marketplace.org/nodes/A?link=nodes/E&name=play_song
202 Created
Marketplace
Node A
Node B
Node C
Node D
Node E
Now, others can use
that information!
play_song
GET wot_marketplace.org/nodes/A
{
“service” : “www.songsearch.org”
“forward_paths” : {
“play_song” : “nodes/E”
}
}
I can follow that
link now, too!
Issue 1: Availability and reliability of the crowd?
Issue 2: Clients are compiled against the link names (e.g., “play_song”)!
This didn’t enable fully automatic service usage!
Marketplace
Node A
Node B
Node C
Node D
Node E
play_song
Can we automate the publishing of links and the traversal itself?
Simon’s Office
- Contains 2 services
Soodle S.A
Songs Search
Machine
Method: GET
Input: Song Title
Output: MP3 URL
Sapple Inc.
Media Player
Method: PUT
Input: MP3 URL
Output: Will play music
Semantic Metadata to Support Device Interaction in Smart Environments 20|
Simon Mayer
http://people.inf.ethz.ch/mayersi
Idea: Semantic metadata to find potential links!
Semantic Service Integration
Functional Semantic Metadata
Simon’s Office
- Contains 2 services
Soodle S.A
Songs Search
Machine
Method: GET
Input: Song Title
Output: MP3 URL
Sapple Inc.
Media Player
Method: PUT
Input: MP3 URL
Output: Will play music
R.Verborgh et al. RESTdesc - A Functionality-Centered Approach to Semantic Service Description and Composition, 2012
S. Mayer and G. Basler. Embedded Semantic Metadata to Support Device Interaction in Smart Environments, 2013
Semantic Metadata to Support Device Interaction in Smart Environments 21|
Simon Mayer
http://people.inf.ethz.ch/mayersi
Simon’s Office
- Contains 2 services
Soodle S.A
Songs Search
Machine
Method: GET
Input: Song Title
Output: MP3 URL
Sapple Inc.
Media Player
Method: PUT
Input: MP3 URL
Output: Will play music
Based on what I know
about these services, there
could be a link here!
Semantic Service Integration
Functional Semantic Metadata
Embedding of semantic functional
service descriptions
How?
Connect that
information to its API
What?
Describe what a
service does
Based on what I know
about these services, 

Use of a reasoning engine to
process these descriptions
Semantic Metadata to Support Device Interaction in Smart Environments 24|
Simon Mayer
http://people.inf.ethz.ch/mayersi
 Usability as one major constraint
 It should not be too hard to create service descriptions
 It should be easy to create user goals
 Pragmatism as another
 Make use of previous research in semantic technologies
 Use existing ontologies. Avoid creating new ones!
 Make it work for real use cases
 Format: Notation3 (user-friendly RDF with inference rules)
Semantic Service Integration
Functional Semantic Metadata
The title of the resource people.org/person1/, is “Person 1”, and it knows
another resource, people.org/person2/
@prefix dc: <http://purl.org/dc/elements/1.1/>.
@prefix foaf: <http://xmlns.com/foaf/0.1/>.
<people.org/person1>
dc:title "Person 1";
foaf:knows "people.org/person2/".
Notation3
Brief N3 Primer: Statements
Brief N3 Primer: Rules
đ‘č𝒖𝒍𝒆: 𝑃𝑟𝑒𝑐𝑜𝑛𝑑𝑖𝑡𝑖𝑜𝑛 → 𝑃𝑜𝑠𝑡𝑐𝑜𝑛𝑑𝑖𝑡𝑖𝑜𝑛
“people.org/person1/ knows people.org/person2/ ”
implies
“people.org/person2/ knows people.org/person1/ ”
If one person knows another person, this second person also knows the first.
(“foaf:knows is symmetric”)
Notation3
Brief N3 Primer: Rules
@prefix dc: <http://purl.org/dc/elements/1.1/>.
@prefix foaf: <http://xmlns.com/foaf/0.1/>.
{
Precondition.
}
=>
{
Postcondition.
}
is shorthand for=> log:implies
If one person knows another person, this second person also knows the first.
(“foaf:knows is symmetric”)
Notation3
Brief N3 Primer: Rules
@prefix dc: <http://purl.org/dc/elements/1.1/>.
@prefix foaf: <http://xmlns.com/foaf/0.1/>.
{
?x a foaf:Person;
foaf:knows ?y.
}
=>
{
Postcondition.
}
If one person knows another person, this second person also knows the first.
(“foaf:knows is symmetric”)
is shorthand for=> log:implies
Superb tutorial at n3.restdesc.org (by Ruben Verborgh)
Notation3
Brief N3 Primer: Rules
@prefix dc: <http://purl.org/dc/elements/1.1/>.
@prefix foaf: <http://xmlns.com/foaf/0.1/>.
{
?x a foaf:Person;
foaf:knows ?y.
}
=>
{
?y foaf:knows ?x.
}
If one person knows another person, this second person also knows the first.
(“foaf:knows is symmetric”)
is shorthand for=> log:implies
Superb tutorial at n3.restdesc.org (by Ruben Verborgh)
Semantic Metadata to Support Device Interaction in Smart Environments 30|
Simon Mayer
http://people.inf.ethz.ch/mayersi
Simon’s Office
- Contains 2 services
Soodle S.A
Songs Search
Machine
Method: GET
Input: Song Title
Output: MP3 URL
Sapple Inc.
Media Player
Method: PUT
Input: MP3 URL
Output: Will play music
Now: Semantic metadata for the Songs Search Machine
Semantic Service Integration
Functional Semantic Metadata
Semantic Metadata to Support Device Interaction in Smart Environments 31|
Simon Mayer
http://people.inf.ethz.ch/mayersi
Precondition: “What facts does a meaningful execution of the service require?”
We have a Song Title
Postcondition: “What additional facts hold after an execution of the service?”
We have the URL of a song with that title
Soodle S.A
Songs Search
Machine
Method: GET
Input: Song Title
Output: MP3 URL
Semantic Service Integration
Functional Semantic Metadata
Notation3
The Songs Search Machine
@prefix dc: <http://purl.org/dc/elements/1.1/>.
{
Precondition.
}
=>
{
Postcondition.
}
If we know a song title, we also know the URL of a song with that title.
Notation3
The Songs Search Machine
@prefix dc: <http://purl.org/dc/elements/1.1/>.
{
?songTitle a dc:title.
}
=>
{
Postcondition.
}
If we know a song title, we also know the URL of a song with that title.
If we know a song title, we also know the URL of a song with that title.
Notation3
The Songs Search Machine
@prefix dc: <http://purl.org/dc/elements/1.1/>.
{
?songTitle a dc:title.
}
=>
{
?songURL a dc:Song;
dc:title ?songTitle.
}
Store this as ssm_rule.n3
“Yellow Submarine” a dc:title.
“Yellow Submarine” a dc:Title.
?songURL a dc:Song;
dc:title “Yellow Submarine”.
[+ proof]
ssm_rule.n3
But I still don’t know
how to call that
service!!
How to include the request? Basically two options

đ‘č𝒖𝒍𝒆: 𝑃𝑟𝑒𝑐𝑜𝑛𝑑𝑖𝑡𝑖𝑜𝑛 ∧ 𝑅𝑒𝑞𝑱𝑒𝑠𝑡 → 𝑃𝑜𝑠𝑡𝑐𝑜𝑛𝑑𝑖𝑡𝑖𝑜𝑛
đ‘č𝒖𝒍𝒆: 𝑃𝑟𝑒𝑐𝑜𝑛𝑑𝑖𝑡𝑖𝑜𝑛 → 𝑃𝑜𝑠𝑡𝑐𝑜𝑛𝑑𝑖𝑡𝑖𝑜𝑛 ∧ 𝑅𝑒𝑞𝑱𝑒𝑠𝑡
This works, but is impractical (knowledge about all requests required from the start
)
It also messes up the quantification!
“Given the Preconditions, all GET requests give the Postcondition”
This works too, and it is sound!
“Given the Preconditions, there exists a GET request that gives the Postcondition”
R.Verborgh et al. RESTdesc - A Functionality-Centered Approach to Semantic Service Description and Composition, 2012
The second option
sounds better to me!
Notation3
The Songs Search Machine
@prefix dc: <http://purl.org/dc/elements/1.1/>.
{
?songTitle a dc:title.
}
=>
{
?songURL a dc:Song;
dc:title ?songTitle.
Request.
}
If we know a song title, we also know the URL of a song with that title. Plus, we
know about an HTTP request.
Notation3
The Songs Search Machine
@prefix dc: <http://purl.org/dc/elements/1.1/>.
@prefix http: <http://www.w3.org/2011/http#>.
{
?songTitle a dc:title.
}
=>
{
?songURL a dc:Song;
dc:title ?songTitle.
Request.
}
If we know a song title, we also know the URL of a song with that title. Plus, we
know about an HTTP request.
Notation3
The Songs Search Machine
@prefix dc: <http://purl.org/dc/elements/1.1/>.
@prefix http: <http://www.w3.org/2011/http#>.
{
?songTitle a dc:title.
}
=>
{
?songURL a dc:Song;
dc:title ?songTitle.
_:request http:methodName “GET”;
http:requestURI (<www.ssm.org?title=>?songTitle);
http:resp [ http:body ?songURL ].
}
Store this as ssm_rule.n3
We’ll refer to it as a “RESTdesc” description
If we know a song title, we also know the URL of a song with that title. Plus, we
know about an HTTP request.
“Yellow Submarine” a dc:title.
“Yellow Submarine” a dc:Title.
?songURL a dc:Song;
dc:title “Yellow Submarine”.
_:request http:methodName “GET”;
http:requestURI (<www.ssm.org?title=>?songTitle);
http:resp [ http:body ?songURL ].
[+ proof]
ssm_rule.n3
Semantic Metadata to Support Device Interaction in Smart Environments 41|
Simon Mayer
http://people.inf.ethz.ch/mayersi
Now, we only need to link that to the service!
Multiple ways to do that

We use HTTP OPTIONS
“This method allows the client to determine the options and/or requirements
associated with a resource, or the capabilities of a server, without implying a
resource action or initiating a resource retrieval.” (RFC 2616)
OPTIONS www.ssm.org
Link: <ssm_rule.n3>; rel=“describedBy“
And the Link Header (RFC 5988) to return the description
Soodle S.A
Songs Search
Machine
ssm_rule.n3
How do I say that I
want a song URL?
“Yellow Submarine” a dc:title.
Goal: ?song a dc:Song; hasTitle “Yellow Submarine”.
A proof that is parsed to an internal HTTP request description format
Send a GET request to www.ssm.org?title={songTitle} and substitute “songTitle” with
“Yellow Submarine”. Then, unpack the response. Its body contains the song.
GET ?title=YellowSubmarine
www.songs.org/yellowsub.mp3
ssm_rule.n3
Soodle S.A
Songs Search
Machine
ssm_rule.n3
And how do I play “Yellow
Submarine” now??
Semantic Metadata to Support Device Interaction in Smart Environments 45|
Simon Mayer
http://people.inf.ethz.ch/mayersi
Missing: Semantic metadata for the Media Player!
Simon’s Office
- Contains 2 services
Soodle S.A
Songs Search
Machine
ssm_rule.n3
Sapple Inc.
Media Player
Method: PUT
Input: MP3 URL
Output: Will play music
Semantic Service Integration
Functional Semantic Metadata
Semantic Metadata to Support Device Interaction in Smart Environments 46|
Simon Mayer
http://people.inf.ethz.ch/mayersi
Perfect!
Simon’s Office
- Contains 2 services
Soodle S.A
Songs Search
Machine
ssm_rule.n3
Sapple Inc.
Media Player
mp_rule.n3
Semantic Service Integration
Functional Semantic Metadata
I want to play “Yellow
Submarine” now!!
Then formulate your goal.
But be precise!
?state a st:State;
log:includes {
:SimonsOffice myOnt:musicPlaying [ dc:title “Yellow Submarine” ]
}
I want Simon’s office to be in a state
where “Yellow Submarine” is playing.
“Yellow Submarine” a dc:title.
Client Goal
A proof that is parsed to an internal HTTP request description format
Send a GET request to www.ssm.org?title={songTitle} and substitute “songTitle” with
“Yellow Submarine”. Then, unpack the response. Its body contains the songURL. Take this
variable and send a PUT to www.mp.org?song={songURL}
ssm_rule.n3
Execute the requests!
mp_rule.n3
Send a GET request to www.ssm.org?title={songTitle} and substitute “songTitle” with
“Yellow Submarine”. Then, unpack the response. Its body contains the songURL. Take this
variable and send a PUT to www.mp.org?song={songURL}
Sapple Inc.
Media Player
mp_rule.n3
GET ?title=YellowSubmarine
www.songs.org/yellowsub.mp3
Soodle S.A
Songs Search
Machine
ssm_rule.n3
PUT ?song=www.songs.org/yellowsub.mp3
www.songs.org/yellowsub.mp3
Yay!
Sounds complicated. Could you
sum up what I have to do?
1. Create your goal and inputs
2. Find a reasoner
3. Ask the reasoner how the goal is reachable
4. Parse the proof to extract the requests
5. Execute the requests
I don’t believe this!
Let’s see it!
http://192.168.0.21:8000/proof?
q=http://people.inf.ethz.ch/mayersi/testdescriptions/n3goals
/user-goal-music.n3&
r=http://people.inf.ethz.ch/mayersi/testdescriptions/n3goals
/user-input.n3
user-input.n3 contains “Yellow Submarine” a dc:title.”
Reasoner has access to ssm_rule.n3, mp_rule.n3, and a states ontology.
Do Proof!
Oh, it actually works

But I can’t understand a thing!
Do Proof!
http://192.168.0.21:8000/proofHumanReadable?
q=http://people.inf.ethz.ch/mayersi/testdescriptions/n3goals
/user-goal-music.n3&
r=http://people.inf.ethz.ch/mayersi/testdescriptions/n3goals
/user-input.n3
user-input.n3 contains “Yellow Submarine” a dc:title.”
Reasoner has access to ssm_rule.n3, mp_rule.n3, and a states ontology.
But isn’t it too hard
to create the goal, for
a client like me?
That’s tricky. But we’re working on it and have come up with some good
ideas
 one of those ideas would even allow for integration with Clickscript !
And you know how to use that, right?
Now I get it!
Hm. So I should
just state my goals.
And I can find and
use services, too!
Semantic Metadata to Support Device Interaction in Smart Environments 57|
Simon Mayer
http://people.inf.ethz.ch/mayersi
 Localization + stream transmitter+receivers in all rooms
 First version took 10s to switch songs (mostly loading .n3 files
 described in the paper)
 Cut that by actively discovering services and pre-loading descriptions
This is in the paper

Prototype: A music stream that follows you!
Semantic Metadata to Support Device Interaction in Smart Environments 58|
Simon Mayer
http://people.inf.ethz.ch/mayersi
Our Goal
Semantic Metadata to Support Device Interaction in Smart Environments 59|
Simon Mayer
http://people.inf.ethz.ch/mayersi
 User defines preferences
(temperature, preferred song, etc.)
 User agent negotiates with the user’s environment to set
these preferences
 User gets feedback regarding success/failure
Our Goal
Thank you!
Simon Mayer and Gianin Basler: Semantic Metadata to Support Device Interaction in
Smart Environments. Proceedings of the 4th International Workshop on the Web of Things
(WoT 2013). Zurich, Switzerland, September 2013
Semantic Metadata to Support Device Interaction in Smart Environments 61|
Simon Mayer
http://people.inf.ethz.ch/mayersi
Credits
 Nadine Inhelder, Gianin Basler
 Ruben Verborgh
 http://andrewbleakley.com
 http://www.webmarchand.com
 http://www.patentspostgrant.com/
 http://www.orkin.com
 http://sweetclipart.com
 http://la-matrice.org
 http://learn.randolph.k12.ma.us
 http://theparisreview.org
 http://bestclipartblog.com
 http://freepik.com
 http://http://www.rugdots.com
 http://www.productdose.com
 http://westwoodblinds.co.uk
 http://www.ambientdevices.com
 http://www.pats.ua.ac.be
 http://www.vesternet.com
 http://www.rovingnetworks.com
 http://www.qualitymechanicalservices.com
 http://chantalteakettle.org
 http://blog.eeye.com
 http://cartographersguild.com
 http://haverford.edu
 http://clker.com
 http://stickers-addict.fr
 http://en.wikipedia.org
Image Sources

Weitere Àhnliche Inhalte

Was ist angesagt?

IndianaJS - Building spatially aware web sites for the Web of Things
IndianaJS - Building spatially aware web sites for the Web of ThingsIndianaJS - Building spatially aware web sites for the Web of Things
IndianaJS - Building spatially aware web sites for the Web of ThingsTECO Research Group
 
Imagining the Web of Things
Imagining the Web of ThingsImagining the Web of Things
Imagining the Web of ThingsDavid Keene
 
The Web of Things - Giving physical products a digital voice.
The Web of Things - Giving physical products a digital voice.The Web of Things - Giving physical products a digital voice.
The Web of Things - Giving physical products a digital voice.EVRYTHNG
 
RESTifyng Physical Products
RESTifyng Physical ProductsRESTifyng Physical Products
RESTifyng Physical ProductsVlad Trifa
 
Web of things introduction
Web of things introductionWeb of things introduction
Web of things introductionæ‰żçż° è”Ą
 
Tutorial on Internet of Thing (IoT) Paradigm in Consumer Applications
Tutorial on Internet of Thing (IoT) Paradigm in Consumer ApplicationsTutorial on Internet of Thing (IoT) Paradigm in Consumer Applications
Tutorial on Internet of Thing (IoT) Paradigm in Consumer ApplicationsRaffaele Giaffreda
 
Ethics_Internet of Things
Ethics_Internet of ThingsEthics_Internet of Things
Ethics_Internet of Thingsalengadan
 
Ubiquitous computing Paper
 Ubiquitous computing Paper Ubiquitous computing Paper
Ubiquitous computing PaperAssem mousa
 
Business Models_Internet of Things (Part 02)
Business Models_Internet of Things (Part 02)Business Models_Internet of Things (Part 02)
Business Models_Internet of Things (Part 02)alengadan
 
Design beyond the glowing rectangle - EuroIA2010
Design beyond the glowing rectangle - EuroIA2010Design beyond the glowing rectangle - EuroIA2010
Design beyond the glowing rectangle - EuroIA2010Claire Rowland
 
Cloud computing Paper
Cloud computing Paper Cloud computing Paper
Cloud computing Paper Assem mousa
 
cloud of things paper
cloud of things papercloud of things paper
cloud of things paperAssem mousa
 
How to Design A Product with Blockchain by Dir Product of Helium
How to Design A Product with Blockchain by Dir Product of HeliumHow to Design A Product with Blockchain by Dir Product of Helium
How to Design A Product with Blockchain by Dir Product of HeliumProduct School
 
Introduction to Edge Computing using Google IoT
Introduction to Edge Computing using Google IoTIntroduction to Edge Computing using Google IoT
Introduction to Edge Computing using Google IoTVolodymyr Rudyi
 
The Digital Workplace Revolution
The Digital Workplace RevolutionThe Digital Workplace Revolution
The Digital Workplace RevolutionAtlas Cloud
 
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
 
Dr Assem Abdel Hamied Moussa Statment
Dr Assem Abdel Hamied Moussa StatmentDr Assem Abdel Hamied Moussa Statment
Dr Assem Abdel Hamied Moussa StatmentAssem mousa
 
Technology & Information Technology trends 2012
Technology & Information Technology trends 2012Technology & Information Technology trends 2012
Technology & Information Technology trends 2012Mozammel Rony
 

Was ist angesagt? (20)

IndianaJS - Building spatially aware web sites for the Web of Things
IndianaJS - Building spatially aware web sites for the Web of ThingsIndianaJS - Building spatially aware web sites for the Web of Things
IndianaJS - Building spatially aware web sites for the Web of Things
 
Imagining the Web of Things
Imagining the Web of ThingsImagining the Web of Things
Imagining the Web of Things
 
The Web of Things - Giving physical products a digital voice.
The Web of Things - Giving physical products a digital voice.The Web of Things - Giving physical products a digital voice.
The Web of Things - Giving physical products a digital voice.
 
RESTifyng Physical Products
RESTifyng Physical ProductsRESTifyng Physical Products
RESTifyng Physical Products
 
Web of things introduction
Web of things introductionWeb of things introduction
Web of things introduction
 
Tutorial on Internet of Thing (IoT) Paradigm in Consumer Applications
Tutorial on Internet of Thing (IoT) Paradigm in Consumer ApplicationsTutorial on Internet of Thing (IoT) Paradigm in Consumer Applications
Tutorial on Internet of Thing (IoT) Paradigm in Consumer Applications
 
Ethics_Internet of Things
Ethics_Internet of ThingsEthics_Internet of Things
Ethics_Internet of Things
 
Ubiquitous computing Paper
 Ubiquitous computing Paper Ubiquitous computing Paper
Ubiquitous computing Paper
 
Business Models_Internet of Things (Part 02)
Business Models_Internet of Things (Part 02)Business Models_Internet of Things (Part 02)
Business Models_Internet of Things (Part 02)
 
Design beyond the glowing rectangle - EuroIA2010
Design beyond the glowing rectangle - EuroIA2010Design beyond the glowing rectangle - EuroIA2010
Design beyond the glowing rectangle - EuroIA2010
 
BRETT PARKER SAP
BRETT PARKER SAPBRETT PARKER SAP
BRETT PARKER SAP
 
Executive Summit for ISV & Application builders - January 2015
Executive Summit for ISV & Application builders - January 2015Executive Summit for ISV & Application builders - January 2015
Executive Summit for ISV & Application builders - January 2015
 
Cloud computing Paper
Cloud computing Paper Cloud computing Paper
Cloud computing Paper
 
cloud of things paper
cloud of things papercloud of things paper
cloud of things paper
 
How to Design A Product with Blockchain by Dir Product of Helium
How to Design A Product with Blockchain by Dir Product of HeliumHow to Design A Product with Blockchain by Dir Product of Helium
How to Design A Product with Blockchain by Dir Product of Helium
 
Introduction to Edge Computing using Google IoT
Introduction to Edge Computing using Google IoTIntroduction to Edge Computing using Google IoT
Introduction to Edge Computing using Google IoT
 
The Digital Workplace Revolution
The Digital Workplace RevolutionThe Digital Workplace Revolution
The Digital Workplace Revolution
 
Autonomous Agents for Flexible Hypermedia Systems
Autonomous Agents for Flexible Hypermedia Systems Autonomous Agents for Flexible Hypermedia Systems
Autonomous Agents for Flexible Hypermedia Systems
 
Dr Assem Abdel Hamied Moussa Statment
Dr Assem Abdel Hamied Moussa StatmentDr Assem Abdel Hamied Moussa Statment
Dr Assem Abdel Hamied Moussa Statment
 
Technology & Information Technology trends 2012
Technology & Information Technology trends 2012Technology & Information Technology trends 2012
Technology & Information Technology trends 2012
 

Ähnlich wie Semantic Metadata to Support Device Interaction in Smart Environments

Introduction to Semantic Web for GIS Practitioners
Introduction to Semantic Web for GIS PractitionersIntroduction to Semantic Web for GIS Practitioners
Introduction to Semantic Web for GIS PractitionersEmanuele Della Valle
 
Realizing a Semantic Web Application - ICWE 2010 Tutorial
Realizing a Semantic Web Application - ICWE 2010 TutorialRealizing a Semantic Web Application - ICWE 2010 Tutorial
Realizing a Semantic Web Application - ICWE 2010 TutorialEmanuele Della Valle
 
Dataportability & Digital Identity
Dataportability & Digital IdentityDataportability & Digital Identity
Dataportability & Digital IdentityCĂ©dric HĂŒsler
 
BFF Pattern in Action: SoundCloud’s Microservices
BFF Pattern in Action: SoundCloud’s MicroservicesBFF Pattern in Action: SoundCloud’s Microservices
BFF Pattern in Action: SoundCloud’s MicroservicesBora Tunca
 
Goodle Developer Days Munich 2008 - Open Social Update
Goodle Developer Days Munich 2008 - Open Social UpdateGoodle Developer Days Munich 2008 - Open Social Update
Goodle Developer Days Munich 2008 - Open Social UpdatePatrick Chanezon
 
Semantic Web, an introduction for bioscientists
Semantic Web, an introduction for bioscientistsSemantic Web, an introduction for bioscientists
Semantic Web, an introduction for bioscientistsEmanuele Della Valle
 
Future platform for internet of things
Future platform for internet of thingsFuture platform for internet of things
Future platform for internet of thingsColdbeans Software
 
Developing A Semantic Web Application - ISWC 2008 tutorial
Developing A Semantic Web Application -  ISWC 2008 tutorialDeveloping A Semantic Web Application -  ISWC 2008 tutorial
Developing A Semantic Web Application - ISWC 2008 tutorialEmanuele Della Valle
 
Goodle Developer Days London 2008 - Open Social Update
Goodle Developer Days London 2008 - Open Social UpdateGoodle Developer Days London 2008 - Open Social Update
Goodle Developer Days London 2008 - Open Social UpdatePatrick Chanezon
 
Implementing Semantic Queries in Online Social Networks
Implementing Semantic Queries in Online Social NetworksImplementing Semantic Queries in Online Social Networks
Implementing Semantic Queries in Online Social NetworksOtåvio Calaça Xavier
 
Experiments in Data Portability 2
Experiments in Data Portability 2Experiments in Data Portability 2
Experiments in Data Portability 2Glenn Jones
 
Building Secure Open & Distributed Social Networks
Building Secure Open & Distributed Social NetworksBuilding Secure Open & Distributed Social Networks
Building Secure Open & Distributed Social NetworksHenry Story
 
2 Conferences in 1 hour
2 Conferences in 1 hour2 Conferences in 1 hour
2 Conferences in 1 hourIan Forrester
 
Btp 3rd Report
Btp 3rd ReportBtp 3rd Report
Btp 3rd ReportDinesh Yadav
 
Safecrossroads ep01
Safecrossroads ep01Safecrossroads ep01
Safecrossroads ep01simpletonsafe
 
Big social data analytics - social network analysis
Big social data analytics - social network analysis Big social data analytics - social network analysis
Big social data analytics - social network analysis Jari Jussila
 
BLOCKCHAIN BASED MODEL FOR ROYALTY PAYMENT OF ARTISTS
BLOCKCHAIN BASED MODEL FOR ROYALTY PAYMENT OF ARTISTSBLOCKCHAIN BASED MODEL FOR ROYALTY PAYMENT OF ARTISTS
BLOCKCHAIN BASED MODEL FOR ROYALTY PAYMENT OF ARTISTSIRJET Journal
 
Linked Data Workshop at I-Semantics 2010
Linked Data Workshop at I-Semantics 2010Linked Data Workshop at I-Semantics 2010
Linked Data Workshop at I-Semantics 2010Andreas Blumauer
 
Linked Data: so what?
Linked Data: so what?Linked Data: so what?
Linked Data: so what?MIUR
 

Ähnlich wie Semantic Metadata to Support Device Interaction in Smart Environments (20)

Introduction to Semantic Web for GIS Practitioners
Introduction to Semantic Web for GIS PractitionersIntroduction to Semantic Web for GIS Practitioners
Introduction to Semantic Web for GIS Practitioners
 
Realizing a Semantic Web Application - ICWE 2010 Tutorial
Realizing a Semantic Web Application - ICWE 2010 TutorialRealizing a Semantic Web Application - ICWE 2010 Tutorial
Realizing a Semantic Web Application - ICWE 2010 Tutorial
 
Dataportability & Digital Identity
Dataportability & Digital IdentityDataportability & Digital Identity
Dataportability & Digital Identity
 
BFF Pattern in Action: SoundCloud’s Microservices
BFF Pattern in Action: SoundCloud’s MicroservicesBFF Pattern in Action: SoundCloud’s Microservices
BFF Pattern in Action: SoundCloud’s Microservices
 
Goodle Developer Days Munich 2008 - Open Social Update
Goodle Developer Days Munich 2008 - Open Social UpdateGoodle Developer Days Munich 2008 - Open Social Update
Goodle Developer Days Munich 2008 - Open Social Update
 
Semantic Web, an introduction for bioscientists
Semantic Web, an introduction for bioscientistsSemantic Web, an introduction for bioscientists
Semantic Web, an introduction for bioscientists
 
Future platform for internet of things
Future platform for internet of thingsFuture platform for internet of things
Future platform for internet of things
 
Developing A Semantic Web Application - ISWC 2008 tutorial
Developing A Semantic Web Application -  ISWC 2008 tutorialDeveloping A Semantic Web Application -  ISWC 2008 tutorial
Developing A Semantic Web Application - ISWC 2008 tutorial
 
Goodle Developer Days London 2008 - Open Social Update
Goodle Developer Days London 2008 - Open Social UpdateGoodle Developer Days London 2008 - Open Social Update
Goodle Developer Days London 2008 - Open Social Update
 
Implementing Semantic Queries in Online Social Networks
Implementing Semantic Queries in Online Social NetworksImplementing Semantic Queries in Online Social Networks
Implementing Semantic Queries in Online Social Networks
 
Experiments in Data Portability 2
Experiments in Data Portability 2Experiments in Data Portability 2
Experiments in Data Portability 2
 
Building Secure Open & Distributed Social Networks
Building Secure Open & Distributed Social NetworksBuilding Secure Open & Distributed Social Networks
Building Secure Open & Distributed Social Networks
 
2 Conferences in 1 hour
2 Conferences in 1 hour2 Conferences in 1 hour
2 Conferences in 1 hour
 
Btp 3rd Report
Btp 3rd ReportBtp 3rd Report
Btp 3rd Report
 
Safecrossroads ep01
Safecrossroads ep01Safecrossroads ep01
Safecrossroads ep01
 
Big social data analytics - social network analysis
Big social data analytics - social network analysis Big social data analytics - social network analysis
Big social data analytics - social network analysis
 
P2p Peer To Peer Introduction
P2p Peer To Peer IntroductionP2p Peer To Peer Introduction
P2p Peer To Peer Introduction
 
BLOCKCHAIN BASED MODEL FOR ROYALTY PAYMENT OF ARTISTS
BLOCKCHAIN BASED MODEL FOR ROYALTY PAYMENT OF ARTISTSBLOCKCHAIN BASED MODEL FOR ROYALTY PAYMENT OF ARTISTS
BLOCKCHAIN BASED MODEL FOR ROYALTY PAYMENT OF ARTISTS
 
Linked Data Workshop at I-Semantics 2010
Linked Data Workshop at I-Semantics 2010Linked Data Workshop at I-Semantics 2010
Linked Data Workshop at I-Semantics 2010
 
Linked Data: so what?
Linked Data: so what?Linked Data: so what?
Linked Data: so what?
 

Mehr von 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
 
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
 
DiscoWoT - Extensible Discovery for Smart Things
DiscoWoT - Extensible Discovery for Smart ThingsDiscoWoT - Extensible Discovery for Smart Things
DiscoWoT - Extensible Discovery for Smart ThingsSimon Mayer
 

Mehr von Simon Mayer (7)

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
 
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
 
DiscoWoT - Extensible Discovery for Smart Things
DiscoWoT - Extensible Discovery for Smart ThingsDiscoWoT - Extensible Discovery for Smart Things
DiscoWoT - Extensible Discovery for Smart Things
 

KĂŒrzlich hochgeladen

Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
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
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
🐬 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
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
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
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
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
 
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
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 

KĂŒrzlich hochgeladen (20)

Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
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
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
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
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
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
 
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
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 

Semantic Metadata to Support Device Interaction in Smart Environments

  • 1. Semantic Metadata to Support Device Interaction in Smart Environments 1| Simon Mayer http://people.inf.ethz.ch/mayersi Simon Mayer and Gianin Basler, ETH Zurich Fourth International Workshop on the Web of Things (WoT 2013) September 9th 2013, Zurich, Switzerland Semantic Metadata to Support Device Interaction in Smart Environments
  • 2. Semantic Metadata to Support Device Interaction in Smart Environments 2| Simon Mayer http://people.inf.ethz.ch/mayersi Myself Simon Mayer, PhD Student at ETH Zurich, WoT since 2009
  • 3. Realize the full potential of smart environments by integrating functionality across services I know the temperature! What’s the temperature? Is it going to rain today? Do I need to be watered?
  • 4. I can find song files for you! I want to listen to “Yellow Submarine” I can play song files! Realize the full potential of smart environments by integrating functionality across services
  • 5.  Enabling services to talk to each other and form mashups  Enabling people to talk to service mashups
  • 6. Semantic Metadata to Support Device Interaction in Smart Environments 6| Simon Mayer http://people.inf.ethz.ch/mayersi  Heterogeneous services from different providers should be dynamically composable  Services don’t know anything about how to interact with other services when they are created (i.e., no “standards”)  Interaction metadata discoverable on the fly!  Flexibility  System should work in the user’s home, office, hotels, etc. Challenges
  • 7. Simon’s Office - Contains 2 services Think about a smart environment
 I have a song title, “Yellow Submarine”. I’d like to play that song. Soodle S.A Songs Search Machine Method: GET Input: Song Title Output: MP3 URL Sapple, Inc. Media Player Method: PUT Input: MP3 URL Output: Plays song Not possible! No Link! I can do that! :-(
  • 8. The songs search machine doesn’t provide any hypermedia controls that link to the media player Nor any information that helps the client find out that it could play a song using the services I can find that out, actually YES. I GOT IT! Our goal is to enable it for this guy!
  • 9. Semantic Metadata to Support Device Interaction in Smart Environments 9| Simon Mayer http://people.inf.ethz.ch/mayersi  Crowd-sourced Service Integration  Web Linking, “Globalized” HATEOAS  Semantics-based Service Integration  Web Linking + Functional metadata Service Integration: “Self-aware” Things? Techniques for Semantic Service Integration
  • 10. Semantic Metadata to Support Device Interaction in Smart Environments 10| Simon Mayer http://people.inf.ethz.ch/mayersi  Crowd-sourced Service Integration  Web Linking, “Globalized” HATEOAS  Semantics-based Service Integration  Web Linking + Functional metadata Service Integration: “Self-aware” Things? Techniques for Semantic Service Integration
  • 11. Semantic Metadata to Support Device Interaction in Smart Environments 11| Simon Mayer http://people.inf.ethz.ch/mayersi  Rely on developers or users to publish links Semantic Service Integration Crowd-sourced Service Integration Simon’s Office - Contains 2 services Soodle S.A Songs Search Machine Method: GET Input: Song Title Output: MP3 URL Sapple Inc. Media Player Method: PUT Input: MP3 URL Output: Will play music I know that you can connect these services! Let me show you!
  • 12. Semantic Metadata to Support Device Interaction in Smart Environments 12| Simon Mayer http://people.inf.ethz.ch/mayersi Crowd-sourced Service Integration Approach: Service Marketplaces S. Mayer, D. Karam. A Computational Marketplace for the Web of Things, 2012  Mashup developers find links manually, but publish their mashups in a “WoT Marketplace”  Clients can ask the marketplace for linking information  These links make sense, because they are used in a mashup!  Clients only need to choose which link to follow  We called these «Computational» and «WoT» marketplaces

  • 13. Semantic Metadata to Support Device Interaction in Smart Environments 13| Simon Mayer http://people.inf.ethz.ch/mayersi Crowd-sourced Service Integration Service Marketplaces Marketplace Soodle S.A Songs Search Machine Method: GET Input: Song Title Output: MP3 URL Sapple Inc. Media Player Method: PUT Input: MP3 URL Output: Will play music Node A Node B Node C Node D Node E
  • 14. Marketplace Node A Node B Node C Node D Node E I know that you can connect the services at A and E! Let me show you!
  • 16. Marketplace Node A Node B Node C Node D Node E Now, others can use that information! play_song
  • 17. GET wot_marketplace.org/nodes/A { “service” : “www.songsearch.org” “forward_paths” : { “play_song” : “nodes/E” } } I can follow that link now, too!
  • 18. Issue 1: Availability and reliability of the crowd? Issue 2: Clients are compiled against the link names (e.g., “play_song”)! This didn’t enable fully automatic service usage! Marketplace Node A Node B Node C Node D Node E play_song
  • 19. Can we automate the publishing of links and the traversal itself? Simon’s Office - Contains 2 services Soodle S.A Songs Search Machine Method: GET Input: Song Title Output: MP3 URL Sapple Inc. Media Player Method: PUT Input: MP3 URL Output: Will play music
  • 20. Semantic Metadata to Support Device Interaction in Smart Environments 20| Simon Mayer http://people.inf.ethz.ch/mayersi Idea: Semantic metadata to find potential links! Semantic Service Integration Functional Semantic Metadata Simon’s Office - Contains 2 services Soodle S.A Songs Search Machine Method: GET Input: Song Title Output: MP3 URL Sapple Inc. Media Player Method: PUT Input: MP3 URL Output: Will play music R.Verborgh et al. RESTdesc - A Functionality-Centered Approach to Semantic Service Description and Composition, 2012 S. Mayer and G. Basler. Embedded Semantic Metadata to Support Device Interaction in Smart Environments, 2013
  • 21. Semantic Metadata to Support Device Interaction in Smart Environments 21| Simon Mayer http://people.inf.ethz.ch/mayersi Simon’s Office - Contains 2 services Soodle S.A Songs Search Machine Method: GET Input: Song Title Output: MP3 URL Sapple Inc. Media Player Method: PUT Input: MP3 URL Output: Will play music Based on what I know about these services, there could be a link here! Semantic Service Integration Functional Semantic Metadata
  • 22. Embedding of semantic functional service descriptions How? Connect that information to its API What? Describe what a service does
  • 23. Based on what I know about these services, 
 Use of a reasoning engine to process these descriptions
  • 24. Semantic Metadata to Support Device Interaction in Smart Environments 24| Simon Mayer http://people.inf.ethz.ch/mayersi  Usability as one major constraint  It should not be too hard to create service descriptions  It should be easy to create user goals  Pragmatism as another  Make use of previous research in semantic technologies  Use existing ontologies. Avoid creating new ones!  Make it work for real use cases  Format: Notation3 (user-friendly RDF with inference rules) Semantic Service Integration Functional Semantic Metadata
  • 25. The title of the resource people.org/person1/, is “Person 1”, and it knows another resource, people.org/person2/ @prefix dc: <http://purl.org/dc/elements/1.1/>. @prefix foaf: <http://xmlns.com/foaf/0.1/>. <people.org/person1> dc:title "Person 1"; foaf:knows "people.org/person2/". Notation3 Brief N3 Primer: Statements
  • 26. Brief N3 Primer: Rules đ‘č𝒖𝒍𝒆: 𝑃𝑟𝑒𝑐𝑜𝑛𝑑𝑖𝑡𝑖𝑜𝑛 → 𝑃𝑜𝑠𝑡𝑐𝑜𝑛𝑑𝑖𝑡𝑖𝑜𝑛 “people.org/person1/ knows people.org/person2/ ” implies “people.org/person2/ knows people.org/person1/ ” If one person knows another person, this second person also knows the first. (“foaf:knows is symmetric”)
  • 27. Notation3 Brief N3 Primer: Rules @prefix dc: <http://purl.org/dc/elements/1.1/>. @prefix foaf: <http://xmlns.com/foaf/0.1/>. { Precondition. } => { Postcondition. } is shorthand for=> log:implies If one person knows another person, this second person also knows the first. (“foaf:knows is symmetric”)
  • 28. Notation3 Brief N3 Primer: Rules @prefix dc: <http://purl.org/dc/elements/1.1/>. @prefix foaf: <http://xmlns.com/foaf/0.1/>. { ?x a foaf:Person; foaf:knows ?y. } => { Postcondition. } If one person knows another person, this second person also knows the first. (“foaf:knows is symmetric”) is shorthand for=> log:implies Superb tutorial at n3.restdesc.org (by Ruben Verborgh)
  • 29. Notation3 Brief N3 Primer: Rules @prefix dc: <http://purl.org/dc/elements/1.1/>. @prefix foaf: <http://xmlns.com/foaf/0.1/>. { ?x a foaf:Person; foaf:knows ?y. } => { ?y foaf:knows ?x. } If one person knows another person, this second person also knows the first. (“foaf:knows is symmetric”) is shorthand for=> log:implies Superb tutorial at n3.restdesc.org (by Ruben Verborgh)
  • 30. Semantic Metadata to Support Device Interaction in Smart Environments 30| Simon Mayer http://people.inf.ethz.ch/mayersi Simon’s Office - Contains 2 services Soodle S.A Songs Search Machine Method: GET Input: Song Title Output: MP3 URL Sapple Inc. Media Player Method: PUT Input: MP3 URL Output: Will play music Now: Semantic metadata for the Songs Search Machine Semantic Service Integration Functional Semantic Metadata
  • 31. Semantic Metadata to Support Device Interaction in Smart Environments 31| Simon Mayer http://people.inf.ethz.ch/mayersi Precondition: “What facts does a meaningful execution of the service require?” We have a Song Title Postcondition: “What additional facts hold after an execution of the service?” We have the URL of a song with that title Soodle S.A Songs Search Machine Method: GET Input: Song Title Output: MP3 URL Semantic Service Integration Functional Semantic Metadata
  • 32. Notation3 The Songs Search Machine @prefix dc: <http://purl.org/dc/elements/1.1/>. { Precondition. } => { Postcondition. } If we know a song title, we also know the URL of a song with that title.
  • 33. Notation3 The Songs Search Machine @prefix dc: <http://purl.org/dc/elements/1.1/>. { ?songTitle a dc:title. } => { Postcondition. } If we know a song title, we also know the URL of a song with that title.
  • 34. If we know a song title, we also know the URL of a song with that title. Notation3 The Songs Search Machine @prefix dc: <http://purl.org/dc/elements/1.1/>. { ?songTitle a dc:title. } => { ?songURL a dc:Song; dc:title ?songTitle. } Store this as ssm_rule.n3
  • 35. “Yellow Submarine” a dc:title. “Yellow Submarine” a dc:Title. ?songURL a dc:Song; dc:title “Yellow Submarine”. [+ proof] ssm_rule.n3 But I still don’t know how to call that service!!
  • 36. How to include the request? Basically two options
 đ‘č𝒖𝒍𝒆: 𝑃𝑟𝑒𝑐𝑜𝑛𝑑𝑖𝑡𝑖𝑜𝑛 ∧ 𝑅𝑒𝑞𝑱𝑒𝑠𝑡 → 𝑃𝑜𝑠𝑡𝑐𝑜𝑛𝑑𝑖𝑡𝑖𝑜𝑛 đ‘č𝒖𝒍𝒆: 𝑃𝑟𝑒𝑐𝑜𝑛𝑑𝑖𝑡𝑖𝑜𝑛 → 𝑃𝑜𝑠𝑡𝑐𝑜𝑛𝑑𝑖𝑡𝑖𝑜𝑛 ∧ 𝑅𝑒𝑞𝑱𝑒𝑠𝑡 This works, but is impractical (knowledge about all requests required from the start
) It also messes up the quantification! “Given the Preconditions, all GET requests give the Postcondition” This works too, and it is sound! “Given the Preconditions, there exists a GET request that gives the Postcondition” R.Verborgh et al. RESTdesc - A Functionality-Centered Approach to Semantic Service Description and Composition, 2012 The second option sounds better to me!
  • 37. Notation3 The Songs Search Machine @prefix dc: <http://purl.org/dc/elements/1.1/>. { ?songTitle a dc:title. } => { ?songURL a dc:Song; dc:title ?songTitle. Request. } If we know a song title, we also know the URL of a song with that title. Plus, we know about an HTTP request.
  • 38. Notation3 The Songs Search Machine @prefix dc: <http://purl.org/dc/elements/1.1/>. @prefix http: <http://www.w3.org/2011/http#>. { ?songTitle a dc:title. } => { ?songURL a dc:Song; dc:title ?songTitle. Request. } If we know a song title, we also know the URL of a song with that title. Plus, we know about an HTTP request.
  • 39. Notation3 The Songs Search Machine @prefix dc: <http://purl.org/dc/elements/1.1/>. @prefix http: <http://www.w3.org/2011/http#>. { ?songTitle a dc:title. } => { ?songURL a dc:Song; dc:title ?songTitle. _:request http:methodName “GET”; http:requestURI (<www.ssm.org?title=>?songTitle); http:resp [ http:body ?songURL ]. } Store this as ssm_rule.n3 We’ll refer to it as a “RESTdesc” description If we know a song title, we also know the URL of a song with that title. Plus, we know about an HTTP request.
  • 40. “Yellow Submarine” a dc:title. “Yellow Submarine” a dc:Title. ?songURL a dc:Song; dc:title “Yellow Submarine”. _:request http:methodName “GET”; http:requestURI (<www.ssm.org?title=>?songTitle); http:resp [ http:body ?songURL ]. [+ proof] ssm_rule.n3
  • 41. Semantic Metadata to Support Device Interaction in Smart Environments 41| Simon Mayer http://people.inf.ethz.ch/mayersi Now, we only need to link that to the service! Multiple ways to do that
 We use HTTP OPTIONS “This method allows the client to determine the options and/or requirements associated with a resource, or the capabilities of a server, without implying a resource action or initiating a resource retrieval.” (RFC 2616) OPTIONS www.ssm.org Link: <ssm_rule.n3>; rel=“describedBy“ And the Link Header (RFC 5988) to return the description Soodle S.A Songs Search Machine ssm_rule.n3
  • 42. How do I say that I want a song URL?
  • 43. “Yellow Submarine” a dc:title. Goal: ?song a dc:Song; hasTitle “Yellow Submarine”. A proof that is parsed to an internal HTTP request description format Send a GET request to www.ssm.org?title={songTitle} and substitute “songTitle” with “Yellow Submarine”. Then, unpack the response. Its body contains the song. GET ?title=YellowSubmarine www.songs.org/yellowsub.mp3 ssm_rule.n3 Soodle S.A Songs Search Machine ssm_rule.n3
  • 44. And how do I play “Yellow Submarine” now??
  • 45. Semantic Metadata to Support Device Interaction in Smart Environments 45| Simon Mayer http://people.inf.ethz.ch/mayersi Missing: Semantic metadata for the Media Player! Simon’s Office - Contains 2 services Soodle S.A Songs Search Machine ssm_rule.n3 Sapple Inc. Media Player Method: PUT Input: MP3 URL Output: Will play music Semantic Service Integration Functional Semantic Metadata
  • 46. Semantic Metadata to Support Device Interaction in Smart Environments 46| Simon Mayer http://people.inf.ethz.ch/mayersi Perfect! Simon’s Office - Contains 2 services Soodle S.A Songs Search Machine ssm_rule.n3 Sapple Inc. Media Player mp_rule.n3 Semantic Service Integration Functional Semantic Metadata
  • 47. I want to play “Yellow Submarine” now!! Then formulate your goal. But be precise! ?state a st:State; log:includes { :SimonsOffice myOnt:musicPlaying [ dc:title “Yellow Submarine” ] } I want Simon’s office to be in a state where “Yellow Submarine” is playing.
  • 48. “Yellow Submarine” a dc:title. Client Goal A proof that is parsed to an internal HTTP request description format Send a GET request to www.ssm.org?title={songTitle} and substitute “songTitle” with “Yellow Submarine”. Then, unpack the response. Its body contains the songURL. Take this variable and send a PUT to www.mp.org?song={songURL} ssm_rule.n3 Execute the requests! mp_rule.n3
  • 49. Send a GET request to www.ssm.org?title={songTitle} and substitute “songTitle” with “Yellow Submarine”. Then, unpack the response. Its body contains the songURL. Take this variable and send a PUT to www.mp.org?song={songURL} Sapple Inc. Media Player mp_rule.n3 GET ?title=YellowSubmarine www.songs.org/yellowsub.mp3 Soodle S.A Songs Search Machine ssm_rule.n3 PUT ?song=www.songs.org/yellowsub.mp3 www.songs.org/yellowsub.mp3 Yay!
  • 50. Sounds complicated. Could you sum up what I have to do? 1. Create your goal and inputs 2. Find a reasoner 3. Ask the reasoner how the goal is reachable 4. Parse the proof to extract the requests 5. Execute the requests
  • 51. I don’t believe this! Let’s see it!
  • 53. Oh, it actually works
 But I can’t understand a thing!
  • 55. But isn’t it too hard to create the goal, for a client like me? That’s tricky. But we’re working on it and have come up with some good ideas
 one of those ideas would even allow for integration with Clickscript ! And you know how to use that, right? Now I get it!
  • 56. Hm. So I should just state my goals. And I can find and use services, too!
  • 57. Semantic Metadata to Support Device Interaction in Smart Environments 57| Simon Mayer http://people.inf.ethz.ch/mayersi  Localization + stream transmitter+receivers in all rooms  First version took 10s to switch songs (mostly loading .n3 files
 described in the paper)  Cut that by actively discovering services and pre-loading descriptions This is in the paper
 Prototype: A music stream that follows you!
  • 58. Semantic Metadata to Support Device Interaction in Smart Environments 58| Simon Mayer http://people.inf.ethz.ch/mayersi Our Goal
  • 59. Semantic Metadata to Support Device Interaction in Smart Environments 59| Simon Mayer http://people.inf.ethz.ch/mayersi  User defines preferences (temperature, preferred song, etc.)  User agent negotiates with the user’s environment to set these preferences  User gets feedback regarding success/failure Our Goal
  • 60. Thank you! Simon Mayer and Gianin Basler: Semantic Metadata to Support Device Interaction in Smart Environments. Proceedings of the 4th International Workshop on the Web of Things (WoT 2013). Zurich, Switzerland, September 2013
  • 61. Semantic Metadata to Support Device Interaction in Smart Environments 61| Simon Mayer http://people.inf.ethz.ch/mayersi Credits  Nadine Inhelder, Gianin Basler  Ruben Verborgh
  • 62.  http://andrewbleakley.com  http://www.webmarchand.com  http://www.patentspostgrant.com/  http://www.orkin.com  http://sweetclipart.com  http://la-matrice.org  http://learn.randolph.k12.ma.us  http://theparisreview.org  http://bestclipartblog.com  http://freepik.com  http://http://www.rugdots.com  http://www.productdose.com  http://westwoodblinds.co.uk  http://www.ambientdevices.com  http://www.pats.ua.ac.be  http://www.vesternet.com  http://www.rovingnetworks.com  http://www.qualitymechanicalservices.com  http://chantalteakettle.org  http://blog.eeye.com  http://cartographersguild.com  http://haverford.edu  http://clker.com  http://stickers-addict.fr  http://en.wikipedia.org Image Sources