Stop Reinventing the Wheel! Use Linked Data to Build Better APIs

7,229 views

Published on

Presented at the APIcon 2014 conference in San Francisco, CA, USA.

Published in: Internet, Technology, Education
2 Comments
37 Likes
Statistics
Notes
No Downloads
Views
Total views
7,229
On SlideShare
0
From Embeds
0
Number of Embeds
169
Actions
Shares
0
Downloads
0
Comments
2
Likes
37
Embeds 0
No embeds

No notes for slide

Stop Reinventing the Wheel! Use Linked Data to Build Better APIs

  1. Rating: 4.8 - 86 votes - 6 hrs 25 mins - 667 cal
  2. <div class="nutrition clearfix" itemprop="nutrition" itemscope itemtype="http://schema.org/NutritionInformation"> <dl><dt><span>kcalories</span></dt><dd itemprop="calories">667</dd></dl> <dl><dt><span>protein</span></dt><dd itemprop="proteinContent">9g</dd></dl> <dl><dt><span>carbs</span></dt><dd itemprop="carbohydrateContent">49g</dd> ... </div>
  3. Tim Berners-Lee, 2006
  4. <div class="nutrition clearfix" itemprop="nutrition" itemscope itemtype="http://schema.org/NutritionInformation"> <dl><dt><span>kcalories</span></dt> <dd itemprop="calories">667</dd></dl> <dl><dt><span>protein</span></dt> <dd itemprop="proteinContent">9g</dd></dl> <dl><dt><span>carbs</span></dt> <dd itemprop="carbohydrateContent">49g</dd> ... </div>
  5. <div class="nutrition clearfix" itemprop="nutrition" itemscope itemtype="http://schema.org/NutritionInformation"> <dl><dt><span>kcalories</span></dt> <dd itemprop="calories">667</dd></dl> <dl><dt><span>protein</span></dt> <dd itemprop="proteinContent">9g</dd></dl> <dl><dt><span>carbs</span></dt> <dd itemprop="carbohydrateContent">49g</dd> ... </div>
  6. <div class="nutrition clearfix" itemprop="nutrition" itemscope itemtype="http://schema.org/NutritionInformation"> <dl><dt><span>kcalories</span></dt> <dd itemprop="calories">667</dd></dl> <dl><dt><span>protein</span></dt> <dd itemprop="proteinContent">9g</dd></dl> <dl><dt><span>carbs</span></dt> <dd itemprop="carbohydrateContent">49g</dd> ... </div> { "type": "NutritionInformation", "calories": "667", "proteinContent": "9g", "carbohydrateContent": "49g", ... }
  7. <div class="nutrition clearfix" itemprop="nutrition" itemscope itemtype="http://schema.org/NutritionInformation"> <dl><dt><span>kcalories</span></dt> <dd itemprop="calories">667</dd></dl> <dl><dt><span>protein</span></dt> <dd itemprop="proteinContent">9g</dd></dl> <dl><dt><span>carbs</span></dt> <dd itemprop="carbohydrateContent">49g</dd> ... </div> { 74 79 70 65: 4E 75 74 72 69 74 … 63 61 6C 6F 72 69 65 73: 36 36 … 70 72 6F 74 65 69 6E 43 6F 6E 7… 63 61 72 62 6F 68 79 64 72 61 7… ... }
  8. <div class="nutrition clearfix" itemprop="nutrition" itemscope itemtype="http://schema.org/NutritionInformation"> <dl><dt><span>kcalories</span></dt> <dd itemprop="calories">667</dd></dl> <dl><dt><span>protein</span></dt> <dd itemprop="proteinContent">9g</dd></dl> <dl><dt><span>carbs</span></dt> <dd itemprop="carbohydrateContent">49g</dd> ... </div> { 74 79 70 65: 4E 75 74 72 69 74 … 63 61 6C 6F 72 69 65 73: 36 36 … 70 72 6F 74 65 69 6E 43 6F 6E 7… 63 61 72 62 6F 68 79 64 72 61 7… ... }
  9. <div class="nutrition clearfix" itemprop="nutrition" itemscope itemtype="http://schema.org/NutritionInformation"> <dl><dt><span>kcalories</span></dt> <dd itemprop="calories">667</dd></dl> <dl><dt><span>protein</span></dt> <dd itemprop="proteinContent">9g</dd></dl> <dl><dt><span>carbs</span></dt> <dd itemprop="carbohydrateContent">49g</dd> ... </div> { "type": "NutritionInformation", "calories": "667", "proteinContent": "9g", "carbohydrateContent": "49g", ... }
  10. <div class="nutrition clearfix" itemprop="nutrition" itemscope itemtype="http://schema.org/NutritionInformation"> <dl><dt><span>kcalories</span></dt> <dd itemprop="calories">667</dd></dl> <dl><dt><span>protein</span></dt> <dd itemprop="proteinContent">9g</dd></dl> <dl><dt><span>carbs</span></dt> <dd itemprop="carbohydrateContent">49g</dd> ... </div> { "@context": { "calories": "http://schema.org/calories", ... } { "@context": "http://schema.org/", "@type": "NutritionInformation", "calories": "667", "proteinContent": "9g", "carbohydrateContent": "49g", ... }
  11. <script type="application/ld+json"> ... </script>
  12. { "@id": "/recipes/", "@type": "Collection", "member": [ ... ], ... "operation": { "@type": "AddAction", "method": "POST", "expects": "Recipe" } } { "@id": "Recipe", "@type": "Class", "supportedProperty": { "property": "name", "required": true } }

×