RESTdesc – Efficient runtime service discovery and consumption
Upcoming SlideShare
Loading in...5
×
 

RESTdesc – Efficient runtime service discovery and consumption

on

  • 561 views

 

Statistics

Views

Total Views
561
Views on SlideShare
557
Embed Views
4

Actions

Likes
2
Downloads
8
Comments
0

1 Embed 4

http://www.linkedin.com 4

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

RESTdesc – Efficient runtime service discovery and consumption RESTdesc – Efficient runtime service discovery and consumption Presentation Transcript

  • ELIS – Multimedia Lab RESTdesc Efficient runtime service discovery and consumption. Ruben Verborgh, Thomas Steiner,Davy Van Deursen, Rik Van de Walle, Joaquim Gabarró Vallés
  • ELIS – Multimedia Lab Talking with others is difficult when you’re different. RESTdesc© Jule Berlin Efficient runtime service discovery and consumption. 2
  • ELIS – Multimedia Lab The goal is not RESTdesc to blend in…© Eric Vest Efficient runtime service discovery and consumption. 3
  • ELIS – Multimedia Lab …but to stand out. RESTdesc© Nicholas Kreidberg Efficient runtime service discovery and consumption. 4
  • What makes a Web service stand out from others? Functionality.
  • Capturing functionality is vital for automatedservice consumption.
  • ELIS – Multimedia Lab RESTdesc Efficient runtime servicediscovery and consumption.1. Why? – need and challenges2. What? – syntax and structure3. So what? – benefits and potential RESTdesc Efficient runtime service discovery and consumption. 7
  • ELIS – Multimedia Lab RESTdesc Efficient runtime servicediscovery and consumption.1. Why? – need and challenges2. What? – syntax and structure3. So what? – benefits and potential RESTdesc Efficient runtime service discovery and consumption. 8
  • ELIS – Multimedia LabExample service: calculating photo height 768photo height servicesend a photo, retrieve its height in pixels RESTdesc Efficient runtime service discovery and consumption. 9
  • ELIS – Multimedia Lab Several service description methods exist.FACT: there are already lots of ways to describe that • the input is an image; • the output is a height in pixels.FACT: none of them really helps... wait? RESTdesc Efficient runtime service discovery and consumption. 10
  • ELIS – Multimedia Lab They don’t describe functionality. 53 768 23.489What height in pixels? • The height of the face rectangle in the image? • The optimal height on a certain mobile device? • The height of the costume, mysteriously converted to pixels? RESTdesc Efficient runtime service discovery and consumption. 11
  • ELIS – Multimedia LabFunctional descriptions tell the whole story. 768What height in pixels?Only the functional relation tells us this:send a photo, retrieve its height in pixels RESTdesc Efficient runtime service discovery and consumption. 12
  • ELIS – Multimedia Lab RESTdesc Efficient runtime servicediscovery and consumption.1. Why? – need and challenges2. What? – syntax and structure3. So what? – benefits and potential RESTdesc Efficient runtime service discovery and consumption. 13
  • ELIS – Multimedia Lab Ingredients of RESTdesc• HTTP • resources RESTdesc Efficient runtime service discovery and consumption. 14
  • ELIS – Multimedia LabREST-style HTTP is resource-oriented. http://example.com/images/wolfie This is a resource. http://example.com/images/wolfie/height This is a resource, too. They’re even the same resources 768 as those on the Semantic Web: “Resource Description Framework”. RESTdesc Efficient runtime service discovery and consumption. 15
  • ELIS – Multimedia Lab Ingredients of RESTdesc• HTTP • resources• Notation3 (N3) • small superset of RDF RESTdesc Efficient runtime service discovery and consumption. 16
  • ELIS – Multimedia Lab Everything in RDF has 3 parts.     :MyPhoto  :a  :Photo. subject verb object                                                       RESTdesc Efficient runtime service discovery and consumption. 17
  • ELIS – Multimedia Lab RDF is organized in vocabularies.@prefix  :  <http://example.org/photo/>.  @prefix  rdf:  <http://www.w3.org/1999/02/22-­‐rdf-­‐syntax-­‐ns#>.@prefix  dbpedia:  <http://dbpedia.org/resource/>. :MyPhoto  rdf:type  dbpedia:Photo.                                                       RESTdesc Efficient runtime service discovery and consumption. 18
  • ELIS – Multimedia Lab Ingredients of RESTdesc• HTTP • resources• Notation3 (N3) • small superset of RDF• your own vocabulary RESTdesc Efficient runtime service discovery and consumption. 19
  • ELIS – Multimedia Lab How do we describe this functionality? 768photo height servicesend a photo, retrieve its height in pixels RESTdesc Efficient runtime service discovery and consumption. 20
  • ELIS – Multimedia Lab Photo height service in RESTdesc@prefix  :  <http://restdesc.no.de/ontlogies/photos#>.@prefix  http:  <http://www.w3.org/2006/http#>.@prefix  tmpl:  <http://purl.org/restdesc/http-­‐template#>.{ Not a new model.    ?photo  :photoId  ?id. This is RDF in Notation3,} a Semantic Web language.=>{      _:request  http:methodName  "GET";                          tmpl:requestURI  ("/photos/"  ?id  "/height");                          http:resp  [  tmpl:represents  ?pixels  ].      ?photo  :height  ?pixels.}. RESTdesc Efficient runtime service discovery and consumption. 21
  • ELIS – Multimedia Lab Photo height service in RESTdescIf your photohas identifier “wolfie”...{ “wolfie ”    ?photo  :photoId  ?id.}=>{      _:request  http:methodName  "GET";                          tmpl:requestURI  ("/photos/"  ?id  "/height");                          http:resp  [  tmpl:represents  ?pixels  ].      ?photo  :height  ?pixels.}. RESTdesc Efficient runtime service discovery and consumption. 22
  • ELIS – Multimedia Lab Photo height service in RESTdesc... then ...{    ?photo  :photoId  ?id.}=>{      _:request  http:methodName  "GET";                          tmpl:requestURI  ("/photos/"  ?id  "/height");                          http:resp  [  tmpl:represents  ?pixels  ].      ?photo  :height  ?pixels.}. RESTdesc Efficient runtime service discovery and consumption. 23
  • ELIS – Multimedia Lab Photo height service in RESTdesc...you can use HTTP to get/photos/wolfie/height...{    ?photo  :photoId  ?id.}=>{      _:request  http:methodName  "GET";                          tmpl:requestURI  ("/photos/"  ?id  "/height");                          http:resp  [  tmpl:represents  ?pixels  ].      ?photo  :height  ?pixels.}. RESTdesc Efficient runtime service discovery and consumption. 24
  • ELIS – Multimedia Lab Photo height service in RESTdesc...and the response will 768represent a value...{    ?photo  :photoId  ?id.}=>{      _:request  http:methodName  "GET";                          tmpl:requestURI  ("/photos/"  ?id  "/height");                          http:resp  [  tmpl:represents  ?pixels  ].      ?photo  :height  ?pixels.}. RESTdesc Efficient runtime service discovery and consumption. 25
  • ELIS – Multimedia Lab Photo height service in RESTdesc...which is 768that photo’s height.{ “wolfie ”    ?photo  :photoId  ?id.}=>{      _:request  http:methodName  "GET";                          tmpl:requestURI  ("/photos/"  ?id  "/height");                          http:resp  [  tmpl:represents  ?pixels  ].      ?photo  :height  ?pixels.}. RESTdesc Efficient runtime service discovery and consumption. 26
  • ELIS – Multimedia LabThis description contains everything you need. 768 “wolfie” “wolfie ”{    ?photo  :photoId  ?id. It’s that simple.} And it’s that powerful.=>{      _:request  http:methodName  "GET";                          tmpl:requestURI  ("/photos/"  ?id  "/height");                          http:resp  [  tmpl:represents  ?pixels  ].      ?photo  :height  ?pixels.}. RESTdesc Efficient runtime service discovery and consumption. 27
  • ELIS – Multimedia Lab RESTdesc Efficient runtime servicediscovery and consumption.1. Why? – need and challenges2. What? – syntax and structure3. So what? – benefits and potential RESTdesc Efficient runtime service discovery and consumption. 28
  • ELIS – Multimedia LabRESTdesc descriptions are simple, because…They rely on HTTP and HTTP best practices. • resource-orientedThey use the vocabulary you choose. • descriptions adapts to your domainThey describe only what you need. • concepts live in vocabularies • “height” is an integer, expresses a length in pixels RESTdesc Efficient runtime service discovery and consumption. 29
  • ELIS – Multimedia LabRESTdesc descriptions are powerful, because…They use the Resource Description Framework. • logically sound • allows complex expressions • interoperable with other services and dataThey can be composed by generic reasoners. • all N3 reasoners understand RESTdesc • enables goal-driven service composition RESTdesc Efficient runtime service discovery and consumption. 30
  • RESTdesc enables straightforwardautomated use of services.
  • Seeing services as resources leads to elegant functional descriptions.
  • In functional descriptions, services are not defined by what they look like…
  • ELIS – Multimedia Lab …but bywhat they do. http://restdesc.org/ RESTdesc Efficient runtime service discovery and consumption. 34