Model Your Application Domain, Not Your JSON Structures

Model Your Application Domain,
NotYour JSON Structures
Markus Lanthaler
Graz University ofTechnology
Model Your Application Domain, Not Your JSON Structures
RPC
Model Your Application Domain, Not Your JSON Structures
Model Your Application Domain, Not Your JSON Structures
Model Your Application Domain, Not Your JSON Structures
Model Your Application Domain, Not Your JSON Structures
REST APIs must be hypertext-driven
Model Your Application Domain, Not Your JSON Structures
Got a headache yet?
Model Your Application Domain, Not Your JSON Structures
Model Your Application Domain, Not Your JSON Structures
“Usually when [...] building an application
the only thing that lasts forever is the data,
at least if you’re lucky.” – R.T. Fielding
Model Your Application Domain, Not Your JSON Structures
Model Your Application Domain, Not Your JSON Structures
Model Your Application Domain, Not Your JSON Structures
Model Your Application Domain, Not Your JSON Structures
Model Your Application Domain, Not Your JSON Structures
Model Your Application Domain, Not Your JSON Structures
© 2013, Markus Lanthaler. Some Rights Reserved.
http://creativecommons.org/licenses/by-nc-sa/3.0/
Thank You
Questions?
Markus Lanthaler
http://www.markus-lanthaler.com
@MarkusLanthaler
mail@markus-lanthaler.com
Image Credits
(1) http://wallpapers.net/black_cubes_abstract-wallpapers.html
(2) http://www.flickr.com/photos/mdid/2698688454/
(3) Adapted from http://www.flickr.com/photos/nesster/3168425434/
(7) http://info.cern.ch/hypertext/WWW/TheProject.html
(8) http://roy.gbiv.com/untangled/2008/rest-apis-must-be-hypertext-driven
(10) http://www.flickr.com/photos/evaekeblad/7177803118/
(13) http://www.flickr.com/photos/swisscan/532687354/
1 of 22

Recommended

Building Next-Generation Web APIs with JSON-LD and Hydra by
Building Next-Generation Web APIs with JSON-LD and HydraBuilding Next-Generation Web APIs with JSON-LD and Hydra
Building Next-Generation Web APIs with JSON-LD and HydraMarkus Lanthaler
42K views56 slides
JSON-LD for RESTful services by
JSON-LD for RESTful servicesJSON-LD for RESTful services
JSON-LD for RESTful servicesMarkus Lanthaler
20.8K views19 slides
Hydra: A Vocabulary for Hypermedia-Driven Web APIs by
Hydra: A Vocabulary for Hypermedia-Driven Web APIsHydra: A Vocabulary for Hypermedia-Driven Web APIs
Hydra: A Vocabulary for Hypermedia-Driven Web APIsMarkus Lanthaler
27.5K views17 slides
JSON-LD: JSON for the Social Web by
JSON-LD: JSON for the Social WebJSON-LD: JSON for the Social Web
JSON-LD: JSON for the Social WebGregg Kellogg
23K views11 slides
JSON-LD: JSON for Linked Data by
JSON-LD: JSON for Linked DataJSON-LD: JSON for Linked Data
JSON-LD: JSON for Linked DataGregg Kellogg
73.4K views50 slides
JSON-LD and MongoDB by
JSON-LD and MongoDBJSON-LD and MongoDB
JSON-LD and MongoDBGregg Kellogg
34.2K views51 slides

More Related Content

What's hot

SPARQL Cheat Sheet by
SPARQL Cheat SheetSPARQL Cheat Sheet
SPARQL Cheat SheetLeeFeigenbaum
92.4K views19 slides
SHACL by example by
SHACL by exampleSHACL by example
SHACL by exampleJose Emilio Labra Gayo
13.6K views44 slides
FIWARE Training: JSON-LD and NGSI-LD by
FIWARE Training: JSON-LD and NGSI-LDFIWARE Training: JSON-LD and NGSI-LD
FIWARE Training: JSON-LD and NGSI-LDFIWARE
96 views19 slides
JSON-LD and SHACL for Knowledge Graphs by
JSON-LD and SHACL for Knowledge GraphsJSON-LD and SHACL for Knowledge Graphs
JSON-LD and SHACL for Knowledge GraphsFranz Inc. - AllegroGraph
1.2K views29 slides
An Introduction To REST API by
An Introduction To REST APIAn Introduction To REST API
An Introduction To REST APIAniruddh Bhilvare
25K views26 slides
Introduction to MongoDB by
Introduction to MongoDBIntroduction to MongoDB
Introduction to MongoDBMongoDB
7.2K views46 slides

What's hot(20)

SPARQL Cheat Sheet by LeeFeigenbaum
SPARQL Cheat SheetSPARQL Cheat Sheet
SPARQL Cheat Sheet
LeeFeigenbaum92.4K views
FIWARE Training: JSON-LD and NGSI-LD by FIWARE
FIWARE Training: JSON-LD and NGSI-LDFIWARE Training: JSON-LD and NGSI-LD
FIWARE Training: JSON-LD and NGSI-LD
FIWARE96 views
Introduction to MongoDB by MongoDB
Introduction to MongoDBIntroduction to MongoDB
Introduction to MongoDB
MongoDB7.2K views
Presto: Optimizing Performance of SQL-on-Anything Engine by DataWorks Summit
Presto: Optimizing Performance of SQL-on-Anything EnginePresto: Optimizing Performance of SQL-on-Anything Engine
Presto: Optimizing Performance of SQL-on-Anything Engine
DataWorks Summit1.8K views
Programming in Spark using PySpark by Mostafa Elzoghbi
Programming in Spark using PySpark      Programming in Spark using PySpark
Programming in Spark using PySpark
Mostafa Elzoghbi5.9K views
Semantic web meetup – sparql tutorial by AdonisDamian
Semantic web meetup – sparql tutorialSemantic web meetup – sparql tutorial
Semantic web meetup – sparql tutorial
AdonisDamian6.2K views
Design Beautiful REST + JSON APIs by Stormpath
Design Beautiful REST + JSON APIsDesign Beautiful REST + JSON APIs
Design Beautiful REST + JSON APIs
Stormpath225.9K views
Full-on Hypermedia APIs with Hydra by Markus Lanthaler
Full-on Hypermedia APIs with HydraFull-on Hypermedia APIs with Hydra
Full-on Hypermedia APIs with Hydra
Markus Lanthaler14.2K views
Making Data Timelier and More Reliable with Lakehouse Technology by Matei Zaharia
Making Data Timelier and More Reliable with Lakehouse TechnologyMaking Data Timelier and More Reliable with Lakehouse Technology
Making Data Timelier and More Reliable with Lakehouse Technology
Matei Zaharia1.6K views
Workshop: Learning Elasticsearch by Anurag Patel
Workshop: Learning ElasticsearchWorkshop: Learning Elasticsearch
Workshop: Learning Elasticsearch
Anurag Patel15.6K views
Rest api standards and best practices by Ankita Mahajan
Rest api standards and best practicesRest api standards and best practices
Rest api standards and best practices
Ankita Mahajan7.2K views
Building a real time, solr-powered recommendation engine by Trey Grainger
Building a real time, solr-powered recommendation engineBuilding a real time, solr-powered recommendation engine
Building a real time, solr-powered recommendation engine
Trey Grainger71.4K views
The never-ending REST API design debate by Restlet
The never-ending REST API design debateThe never-ending REST API design debate
The never-ending REST API design debate
Restlet10.1K views
SHACL: Shaping the Big Ball of Data Mud by Richard Cyganiak
SHACL: Shaping the Big Ball of Data MudSHACL: Shaping the Big Ball of Data Mud
SHACL: Shaping the Big Ball of Data Mud
Richard Cyganiak6.5K views
An Introduction to SPARQL by Olaf Hartig
An Introduction to SPARQLAn Introduction to SPARQL
An Introduction to SPARQL
Olaf Hartig15K views

Similar to Model Your Application Domain, Not Your JSON Structures

Tiny Batches, in the wine: Shiny New Bits in Spark Streaming by
Tiny Batches, in the wine: Shiny New Bits in Spark StreamingTiny Batches, in the wine: Shiny New Bits in Spark Streaming
Tiny Batches, in the wine: Shiny New Bits in Spark StreamingPaco Nathan
7.6K views76 slides
OpenStack NSA by
OpenStack NSAOpenStack NSA
OpenStack NSAOpenStack Foundation
2.3K views43 slides
How Apache Spark fits into the Big Data landscape by
How Apache Spark fits into the Big Data landscapeHow Apache Spark fits into the Big Data landscape
How Apache Spark fits into the Big Data landscapePaco Nathan
7.6K views81 slides
QCon São Paulo: Real-Time Analytics with Spark Streaming by
QCon São Paulo: Real-Time Analytics with Spark StreamingQCon São Paulo: Real-Time Analytics with Spark Streaming
QCon São Paulo: Real-Time Analytics with Spark StreamingPaco Nathan
19.7K views70 slides
Architecture Patterns for Semantic Web Applications by
Architecture Patterns for Semantic Web ApplicationsArchitecture Patterns for Semantic Web Applications
Architecture Patterns for Semantic Web Applicationsbpanulla
1.1K views61 slides
Hotel network scenario implementation by using cisco packet tracer by
Hotel network scenario implementation by using cisco packet tracerHotel network scenario implementation by using cisco packet tracer
Hotel network scenario implementation by using cisco packet tracerHome
4.1K views19 slides

Similar to Model Your Application Domain, Not Your JSON Structures(20)

Tiny Batches, in the wine: Shiny New Bits in Spark Streaming by Paco Nathan
Tiny Batches, in the wine: Shiny New Bits in Spark StreamingTiny Batches, in the wine: Shiny New Bits in Spark Streaming
Tiny Batches, in the wine: Shiny New Bits in Spark Streaming
Paco Nathan7.6K views
How Apache Spark fits into the Big Data landscape by Paco Nathan
How Apache Spark fits into the Big Data landscapeHow Apache Spark fits into the Big Data landscape
How Apache Spark fits into the Big Data landscape
Paco Nathan7.6K views
QCon São Paulo: Real-Time Analytics with Spark Streaming by Paco Nathan
QCon São Paulo: Real-Time Analytics with Spark StreamingQCon São Paulo: Real-Time Analytics with Spark Streaming
QCon São Paulo: Real-Time Analytics with Spark Streaming
Paco Nathan19.7K views
Architecture Patterns for Semantic Web Applications by bpanulla
Architecture Patterns for Semantic Web ApplicationsArchitecture Patterns for Semantic Web Applications
Architecture Patterns for Semantic Web Applications
bpanulla1.1K views
Hotel network scenario implementation by using cisco packet tracer by Home
Hotel network scenario implementation by using cisco packet tracerHotel network scenario implementation by using cisco packet tracer
Hotel network scenario implementation by using cisco packet tracer
Home4.1K views
Big Data to SMART Data : Process Scenario by CHAKER ALLAOUI
Big Data to SMART Data : Process ScenarioBig Data to SMART Data : Process Scenario
Big Data to SMART Data : Process Scenario
CHAKER ALLAOUI2.1K views
Big Data Everywhere Chicago: Apache Spark Plus Many Other Frameworks -- How S... by BigDataEverywhere
Big Data Everywhere Chicago: Apache Spark Plus Many Other Frameworks -- How S...Big Data Everywhere Chicago: Apache Spark Plus Many Other Frameworks -- How S...
Big Data Everywhere Chicago: Apache Spark Plus Many Other Frameworks -- How S...
BigDataEverywhere896 views
IESL Talk Series: Apache System Projects in the Real World by Srinath Perera
IESL Talk Series: Apache System Projects in the Real WorldIESL Talk Series: Apache System Projects in the Real World
IESL Talk Series: Apache System Projects in the Real World
Srinath Perera578 views
Overview of Apache Fink: The 4G of Big Data Analytics Frameworks by Slim Baltagi
Overview of Apache Fink: The 4G of Big Data Analytics FrameworksOverview of Apache Fink: The 4G of Big Data Analytics Frameworks
Overview of Apache Fink: The 4G of Big Data Analytics Frameworks
Slim Baltagi2K views
Overview of Apache Fink: the 4 G of Big Data Analytics Frameworks by Slim Baltagi
Overview of Apache Fink: the 4 G of Big Data Analytics FrameworksOverview of Apache Fink: the 4 G of Big Data Analytics Frameworks
Overview of Apache Fink: the 4 G of Big Data Analytics Frameworks
Slim Baltagi4.1K views
A Decentralized Reference Architecture for Cloud-native Applications by Asanka Abeysinghe
A Decentralized Reference Architecture for Cloud-native ApplicationsA Decentralized Reference Architecture for Cloud-native Applications
A Decentralized Reference Architecture for Cloud-native Applications
Asanka Abeysinghe152 views
Microsoft Dryad by Colin Clark
Microsoft DryadMicrosoft Dryad
Microsoft Dryad
Colin Clark1.2K views
Portals demystified @ jax.de - May 4th 2011 by theute
Portals demystified @ jax.de - May 4th 2011Portals demystified @ jax.de - May 4th 2011
Portals demystified @ jax.de - May 4th 2011
theute288 views
Databricks Meetup @ Los Angeles Apache Spark User Group by Paco Nathan
Databricks Meetup @ Los Angeles Apache Spark User GroupDatabricks Meetup @ Los Angeles Apache Spark User Group
Databricks Meetup @ Los Angeles Apache Spark User Group
Paco Nathan2.5K views
Gluing the IoT world with Java and LoRaWAN by Pance Cavkovski
Gluing the IoT world with Java and LoRaWANGluing the IoT world with Java and LoRaWAN
Gluing the IoT world with Java and LoRaWAN
Pance Cavkovski948 views
A RAPID DEPLOYMENT BIG DATA COMPUTING PLATFORM FOR CLOUD ROBOTICS by IJCNCJournal
A RAPID DEPLOYMENT BIG DATA COMPUTING PLATFORM FOR CLOUD ROBOTICSA RAPID DEPLOYMENT BIG DATA COMPUTING PLATFORM FOR CLOUD ROBOTICS
A RAPID DEPLOYMENT BIG DATA COMPUTING PLATFORM FOR CLOUD ROBOTICS
IJCNCJournal323 views

More from Markus Lanthaler

From Strings to Things to a Web of Services by
From Strings to Things to a Web of ServicesFrom Strings to Things to a Web of Services
From Strings to Things to a Web of ServicesMarkus Lanthaler
3.5K views59 slides
The Web Is Changing — From Strings to Things by
The Web Is Changing — From Strings to ThingsThe Web Is Changing — From Strings to Things
The Web Is Changing — From Strings to ThingsMarkus Lanthaler
12.3K views26 slides
Why and How to Optimize Your Data Architecture for an Integrated Future by
Why and How to Optimize Your Data Architecture for an Integrated FutureWhy and How to Optimize Your Data Architecture for an Integrated Future
Why and How to Optimize Your Data Architecture for an Integrated FutureMarkus Lanthaler
13.7K views41 slides
Creating Awesome Web APIs is a Breeze by
Creating Awesome Web APIs is a BreezeCreating Awesome Web APIs is a Breeze
Creating Awesome Web APIs is a BreezeMarkus Lanthaler
16.4K views58 slides
A Deep Dive into JSON-LD and Hydra by
A Deep Dive into JSON-LD and HydraA Deep Dive into JSON-LD and Hydra
A Deep Dive into JSON-LD and HydraMarkus Lanthaler
9.8K views43 slides
Stop Reinventing the Wheel! Use Linked Data to Build Better APIs by
Stop Reinventing the Wheel! Use Linked Data to Build Better APIsStop Reinventing the Wheel! Use Linked Data to Build Better APIs
Stop Reinventing the Wheel! Use Linked Data to Build Better APIsMarkus Lanthaler
11.1K views40 slides

More from Markus Lanthaler(14)

From Strings to Things to a Web of Services by Markus Lanthaler
From Strings to Things to a Web of ServicesFrom Strings to Things to a Web of Services
From Strings to Things to a Web of Services
Markus Lanthaler3.5K views
The Web Is Changing — From Strings to Things by Markus Lanthaler
The Web Is Changing — From Strings to ThingsThe Web Is Changing — From Strings to Things
The Web Is Changing — From Strings to Things
Markus Lanthaler12.3K views
Why and How to Optimize Your Data Architecture for an Integrated Future by Markus Lanthaler
Why and How to Optimize Your Data Architecture for an Integrated FutureWhy and How to Optimize Your Data Architecture for an Integrated Future
Why and How to Optimize Your Data Architecture for an Integrated Future
Markus Lanthaler13.7K views
Creating Awesome Web APIs is a Breeze by Markus Lanthaler
Creating Awesome Web APIs is a BreezeCreating Awesome Web APIs is a Breeze
Creating Awesome Web APIs is a Breeze
Markus Lanthaler16.4K views
A Deep Dive into JSON-LD and Hydra by Markus Lanthaler
A Deep Dive into JSON-LD and HydraA Deep Dive into JSON-LD and Hydra
A Deep Dive into JSON-LD and Hydra
Markus Lanthaler9.8K views
Stop Reinventing the Wheel! Use Linked Data to Build Better APIs by Markus Lanthaler
Stop Reinventing the Wheel! Use Linked Data to Build Better APIsStop Reinventing the Wheel! Use Linked Data to Build Better APIs
Stop Reinventing the Wheel! Use Linked Data to Build Better APIs
Markus Lanthaler11.1K views
The Web 3.0 is just around the corner. Be prepared! by Markus Lanthaler
The Web 3.0 is just around the corner. Be prepared!The Web 3.0 is just around the corner. Be prepared!
The Web 3.0 is just around the corner. Be prepared!
Markus Lanthaler12.7K views
Creating 3rd Generation Web APIs with Hydra by Markus Lanthaler
Creating 3rd Generation Web APIs with HydraCreating 3rd Generation Web APIs with Hydra
Creating 3rd Generation Web APIs with Hydra
Markus Lanthaler12.8K views
A Web of Things to Reduce Energy Wastage by Markus Lanthaler
A Web of Things to Reduce Energy WastageA Web of Things to Reduce Energy Wastage
A Web of Things to Reduce Energy Wastage
Markus Lanthaler2.9K views
Aligning Web Services with the Semantic Web to Create a Global Read-Write Gra... by Markus Lanthaler
Aligning Web Services with the Semantic Web to Create a Global Read-Write Gra...Aligning Web Services with the Semantic Web to Create a Global Read-Write Gra...
Aligning Web Services with the Semantic Web to Create a Global Read-Write Gra...
Markus Lanthaler3.9K views
SAPS - Semantic AtomPub-based Services by Markus Lanthaler
SAPS - Semantic AtomPub-based ServicesSAPS - Semantic AtomPub-based Services
SAPS - Semantic AtomPub-based Services
Markus Lanthaler2.9K views
A Semantic Description Language for RESTful Data Services to Combat Semaphobia by Markus Lanthaler
A Semantic Description Language for RESTful Data Services to Combat SemaphobiaA Semantic Description Language for RESTful Data Services to Combat Semaphobia
A Semantic Description Language for RESTful Data Services to Combat Semaphobia
Markus Lanthaler3.8K views
Semantic Web Services: State of the Art by Markus Lanthaler
Semantic Web Services: State of the ArtSemantic Web Services: State of the Art
Semantic Web Services: State of the Art
Markus Lanthaler2.8K views
Towards a RESTful Service Ecosystem by Markus Lanthaler
Towards a RESTful Service EcosystemTowards a RESTful Service Ecosystem
Towards a RESTful Service Ecosystem
Markus Lanthaler2.2K views

Recently uploaded

SUPPLIER SOURCING.pptx by
SUPPLIER SOURCING.pptxSUPPLIER SOURCING.pptx
SUPPLIER SOURCING.pptxangelicacueva6
15 views1 slide
Vertical User Stories by
Vertical User StoriesVertical User Stories
Vertical User StoriesMoisés Armani Ramírez
14 views16 slides
Powerful Google developer tools for immediate impact! (2023-24) by
Powerful Google developer tools for immediate impact! (2023-24)Powerful Google developer tools for immediate impact! (2023-24)
Powerful Google developer tools for immediate impact! (2023-24)wesley chun
10 views38 slides
NET Conf 2023 Recap by
NET Conf 2023 RecapNET Conf 2023 Recap
NET Conf 2023 RecapLee Richardson
10 views71 slides
HTTP headers that make your website go faster - devs.gent November 2023 by
HTTP headers that make your website go faster - devs.gent November 2023HTTP headers that make your website go faster - devs.gent November 2023
HTTP headers that make your website go faster - devs.gent November 2023Thijs Feryn
22 views151 slides
SAP Automation Using Bar Code and FIORI.pdf by
SAP Automation Using Bar Code and FIORI.pdfSAP Automation Using Bar Code and FIORI.pdf
SAP Automation Using Bar Code and FIORI.pdfVirendra Rai, PMP
23 views38 slides

Recently uploaded(20)

Powerful Google developer tools for immediate impact! (2023-24) by wesley chun
Powerful Google developer tools for immediate impact! (2023-24)Powerful Google developer tools for immediate impact! (2023-24)
Powerful Google developer tools for immediate impact! (2023-24)
wesley chun10 views
HTTP headers that make your website go faster - devs.gent November 2023 by Thijs Feryn
HTTP headers that make your website go faster - devs.gent November 2023HTTP headers that make your website go faster - devs.gent November 2023
HTTP headers that make your website go faster - devs.gent November 2023
Thijs Feryn22 views
SAP Automation Using Bar Code and FIORI.pdf by Virendra Rai, PMP
SAP Automation Using Bar Code and FIORI.pdfSAP Automation Using Bar Code and FIORI.pdf
SAP Automation Using Bar Code and FIORI.pdf
"Running students' code in isolation. The hard way", Yurii Holiuk by Fwdays
"Running students' code in isolation. The hard way", Yurii Holiuk "Running students' code in isolation. The hard way", Yurii Holiuk
"Running students' code in isolation. The hard way", Yurii Holiuk
Fwdays11 views
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLive by Network Automation Forum
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLiveAutomating a World-Class Technology Conference; Behind the Scenes of CiscoLive
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLive
Business Analyst Series 2023 - Week 3 Session 5 by DianaGray10
Business Analyst Series 2023 -  Week 3 Session 5Business Analyst Series 2023 -  Week 3 Session 5
Business Analyst Series 2023 - Week 3 Session 5
DianaGray10248 views
Case Study Copenhagen Energy and Business Central.pdf by Aitana
Case Study Copenhagen Energy and Business Central.pdfCase Study Copenhagen Energy and Business Central.pdf
Case Study Copenhagen Energy and Business Central.pdf
Aitana16 views
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ... by Jasper Oosterveld
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...
Future of AR - Facebook Presentation by ssuserb54b561
Future of AR - Facebook PresentationFuture of AR - Facebook Presentation
Future of AR - Facebook Presentation
ssuserb54b56114 views
PharoJS - Zürich Smalltalk Group Meetup November 2023 by Noury Bouraqadi
PharoJS - Zürich Smalltalk Group Meetup November 2023PharoJS - Zürich Smalltalk Group Meetup November 2023
PharoJS - Zürich Smalltalk Group Meetup November 2023
Noury Bouraqadi127 views
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N... by James Anderson
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...
James Anderson85 views

Model Your Application Domain, Not Your JSON Structures