Your SlideShare is downloading. ×
Distributed Affordance
Distributed Affordance
Distributed Affordance
Distributed Affordance
Distributed Affordance
Distributed Affordance
Distributed Affordance
Distributed Affordance
Distributed Affordance
Distributed Affordance
Distributed Affordance
Distributed Affordance
Distributed Affordance
Distributed Affordance
Distributed Affordance
Distributed Affordance
Distributed Affordance
Distributed Affordance
Distributed Affordance
Distributed Affordance
Distributed Affordance
Distributed Affordance
Distributed Affordance
Distributed Affordance
Distributed Affordance
Distributed Affordance
Distributed Affordance
Distributed Affordance
Distributed Affordance
Distributed Affordance
Distributed Affordance
Distributed Affordance
Distributed Affordance
Distributed Affordance
Distributed Affordance
Distributed Affordance
Distributed Affordance
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Distributed Affordance

1,604

Published on

Published in: Technology, Education
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,604
On Slideshare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
12
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. DistributedAffordanceAn Open-World Assumptionfor HypermediaRuben Verborgh, Michael Hausenblas,Thomas Steiner, Erik Mannens,Rik Van de WalleThe three princes of Serendip
  • 2. RESTarchitectural styledifferent?What makes the
  • 3. HATEOASHypermedia As The EngineOf Application State
  • 4. Representations containthe links to next steps.How can the server knowwhat the client’s next steps are?
  • 5. Distributed AffordanceAn Open-World Assumptionfor HypermediaProblem statementConcept and ArchitectureDemo
  • 6. Distributed AffordanceAn Open-World Assumptionfor HypermediaProblem statementConcept and ArchitectureDemo
  • 7. Hypertext [is] the simultaneous presentationof information and controls such thatthe information becomes the affordancethrough which the user (or automaton)obtains choices and selects actions.— Roy T. Fielding
  • 8. Hypertext [is] the simultaneous presentationof information and controls such thatthe information becomes the affordancethrough which the user (or automaton)obtains choices and selects actions.— Roy T. Fielding
  • 9. Hypertext [is] the simultaneous presentationof information and controls such thatthe information becomes the affordancethrough which the user (or automaton)obtains choices and selects actions.— Roy T. Fielding
  • 10. Hypertext [is] the simultaneous presentationof information and controls such thatthe information becomes the affordancethrough which the user (or automaton)obtains choices and selects actions.— Roy T. Fielding
  • 11. A handle affords opening a door.The handle is an affordancethrough which you can open the door.
  • 12. …the information becomes the affordance…
  • 13. Hypertext [is] the simultaneous presentationof information and controls such thatthe information becomes the affordancethrough which the user (or automaton)obtains choices and selects actions.— Roy T. Fielding
  • 14. Hypertext [is] the simultaneous presentationof information and controls such thatthe information becomes the affordancethrough which the user (or automaton)obtains choices and selects actions.— Roy T. Fielding
  • 15. SC SCRPC REST123SCSCSCSC
  • 16. SCRESTSCSCLoose conversational couplingEnabling clients to discoverat runtime how to correctlyinteract with a service isa loosely coupled design practice— Cesare Pautasso & Erik Wilde
  • 17. SCRESTSCSCThe server has to providethe affordance towardsnext steps the client can take.It is impossiblefor the server to know all stepsany client might want to take.Tight affordance coupling
  • 18. SCSC SC SCclosed world open world open world“today’s weather in Rio”“tomorrow’s weather in Rio” “plane tickets to Rio” “hotels in Rio”Weather API
  • 19. Distributed AffordanceAn Open-World Assumptionfor HypermediaProblem statementConcept and ArchitectureDemo
  • 20. CPSuserpublisherproviderdistributedaffordance
  • 21. SPublishers offer representationsthat contain semantic annotations.HTML&Microdata
  • 22. Providers offer semantic descriptionsof the actions they support.RESTdescP
  • 23. Based on the semantic annotations,matching service descriptions are instantiated.PPPHTML&Microdata+ =
  • 24. Based on the semantic annotations,matching service descriptions are instantiated.+ =RioRioRio
  • 25. Based on the semantic annotations,matching service descriptions are instantiated.RioRio
  • 26. * 1*1Representation RepresentationEnricher«use»ResourceExtractor«use»Resource«instantiate»APICatalogAPIDescription«instantiate»PreferenceManagerActionGeneratorAction«instantiate»«use»Figure 1: The resources inside a representation are extracted 1 and combined with api dbased on the user’s preferences 3 , into actions 4 , for which affordances are added to the repr4. ARCHITECTURE4.1 Componentsthe role of the PreferenceManager can bethe APICatalog, which then only includesthat match the user’s preferences.
  • 27. Distributed AffordanceAn Open-World Assumptionfor HypermediaProblem statementConcept and ArchitectureDemo
  • 28. <div id="book" itemscope itemtype="http://schema.org/Book"><span itemprop="name">The Catcher in the Rye</span> -by <a itemprop="author" href="#salinger">J.D. Salinger</a><div itemprop="aggregateRating" itemscope><span itemprop="ratingValue">4</span> stars -<span itemprop="reviewCount">3077</span> reviews</div><div class="affordances" data-for="book"><em>the browser will insert affordances here</em></div></div>
  • 29. centralized affordancedistributed affordancepublisher-drivenmostly within applicationuser-drivenon the entire Webtightaffordance couplinglooseaffordance coupling
  • 30. Hypermedia as the engine of application stateonly works to the extent by which the publishercan predict what affordance the client needs.Distributed affordance uses semantic technologiesto generate the needed affordance at runtime.
  • 31. DistributedAffordanceAn Open-World Assumptionfor Hypermedia@RubenVerborghdistributedaffordance.org

×