SlideShare a Scribd company logo
A Real-World Implementation 
of Linked Data 
Dimitri van Hees, APIcon UK 2014
About me 
• Technical Architect 
• Data Specialist 
• Freshheads BV 
• API supporter
About me 
“The only bad thing about API is 
that it’s the inverse of IPA”
About me 
• Brewmaster 
• MQTT API driven brewery 
“De Brouwtoren”
0641011744 
• Number 
• Registration number 
• Telephone number 
• Flight number 
• Bank account
0641011744 
• Number 
• Registration number 
• Telephone number 
• Flight number 
• Bank account
Dimitri 
• String 
• Word 
• Place 
• Dimitri van Hees 
• Dimitri the Clown
Dimitri 
• String 
• Word 
• Place 
• Dimitri van Hees 
• Dimitri the Clown
Linked Data 
• Alias The Semantic Web, Web 3.0 
• Defines what the data means (government) 
• Provides links to external resources (apps) 
• Adds possibility to query multiple datasets 
(marketing)
Five stars of Sir Tim Berners-Lee
★ 
“Make your stuff available on the 
Web (whatever format) under an 
open license”
★ ★ 
“Make it available as structured 
data (e.g., Excel instead of image 
scan of a table)”
★ ★ ★ 
“Use non-proprietary formats 
(e.g., CSV instead of Excel)”
★ ★ ★ ★ 
“Use URIs to denote things, so 
that people can point at your 
stuff (RDF)”
★ ★ ★ ★ ★ 
“Link your data to other data to 
provide context (Linked Data)”
Dutch Linked Open Data Program 
• Universities 
• Governments 
• Semi-governments 
• Freshheads (me) 
• Case 5: Linked Data for developers
Data landscape 
• Open Data community 
• Linked Open Data community 
• API community 
• Data publishers 
• Data consumers
Data consumers 
• Provide us the developer-friendliest way to access your 
data and we MIGHT use it
Data publishers 
• HOW should we publish our data? 
• What are the COSTS of doing it that way? 
• What are the BENEFITS of doing it that way?
Open Data community 
• We don’t care HOW the data is published 
• We only care IF the data is open
API community 
• Every publisher SHOULD provide RESTful JSON API’s 
• Because every consumer KNOWS RESTful JSON API’s 
• We DON’T believe in Linked Data
Linked Open Data community 
• Every publisher SHOULD provide five star data 
• Every consumer SHOULD learn SPARQL* 
• So we DON’T need API’s 
*Linked Data query language
WTF is SPARQL?
Benefits 
According to EU studies the amount of apps being 
developed with Linked Open Government Data is 
negligible. 
https://joinup.ec.europa.eu/sites/default/files/85/31 
/25/Study_on_business_models_for_Linked_Open_ 
Government_Data_BM4LOGD_v1.00.pdf
Costs 
• Knowledge investment (unknown technology) 
• Technical investment (hosting infrastructure) 
• Time investment (change management) 
• Low ROI
“The quality of many datasets is 
AT MOST three stars”
Five stars of Sir Tim Berners-Lee
★ ★ ★ ★ 
“Provide online access via 
webservices so developers can 
use your stuff the way they are 
used to (RESTful JSON API)”
★ ★ ★ ★ ★ 
“Add context to your API so it can be 
linked to other datasets, developers 
know what the data means and LOD 
guys can convert it to triples, store it 
in triplestores and use SPARQL if they 
want to (JSON-LD)”
★ ★ ★ ★ ★ ★
Case 
“Build a dashboard with which we 
are capable to better learn about our 
fans and customers so that we can 
take action on that knowledge to win 
sympathy for our brand”
Data sources 
• Facebook (likes, favorites, education, profile) 
• LinkedIn (skills, education, jobs, profile) 
• Twitter profiles 
• Website profiles
Challenges 
• Internal 
• External 
• Technical 
• Agile/rapid development
JSON 
JSON-LD 
Triples
JSON 
{ 
"id": 43274, 
"name": "Dimitri van Hees", 
"gender": "m", 
"birthDate": "1984-03-14", 
"birthPlace": "Nijmegen", 
"facebookLikes": [ 
69116329538, 
272002449634285, 
114690771875816 
] 
}
JSON-LD Context 
{ 
"id": "@id", 
"name": "http://xmlns.com/foaf/0.1/name", 
"gender": "http://xmlns.com/foaf/0.1/gender", 
"birthDate": "http://schema.org/birthDate", 
"birthPlace": "http://dbpedia.org/ontology/birthPlace", 
"facebookLike": "http://xmlns.com/foaf/0.1/interest" 
}
JSON-LD Context 
{ 
"foaf": "http://xmlns.com/foaf/0.1/", 
"schema": "http://schema.org/", 
"dbo": "http://dbpedia.org/ontology/", 
"id": "@id", 
"name": "foaf:name", 
"gender": "foaf:gender", 
"birthDate": "schema:birthDate", 
"birthPlace": "dbo:birthPlace", 
"facebookLikes": "foaf:interest" 
}
JSON-LD 
{ 
"id": "http://example.com/customers/43274", 
"type": "schema:Person", 
"name": "Dimitri van Hees", 
"gender": "m", 
"birthDate": "1984-03-14", 
"birthPlace": { 
"id": "http://dbpedia.org/resource/Nijmegen", "type": "schema:City" 
}, 
"facebookLikes": [ 
{ "id": "http://graph.facebook.com/69116329538", "type": "schema:MusicGroup“ }, 
{ "id": "http://graph.facebook.com/272002449634285", "type": "schema:TVSeries“ }, 
{ "id": "http://graph.facebook.com/114690771875816", "type": "schema:City“ } 
] 
}
JSON-LD 
{ 
"id": "http://example.com/customers/43274", 
"type": "schema:Person", 
"name": "Dimitri van Hees", 
"gender": "m", 
"birthDate": "1984-03-14", 
"birthPlace": { 
"id": "http://dbpedia.org/resource/Nijmegen", "type": "schema:City" 
}, 
"facebookLikes": [ 
{ "id": "http://dbpedia.org/resource/The_Beatles", "type": "schema:MusicGroup“ }, 
{ "id": "http://dbpedia.org/resource/Monty_Python", "type": "schema:TVSeries“ }, 
{ "id": "http://dbpedia.org/resource/Nijmegen", "type": "schema:City“ } 
] 
}
Triples 
Subject Predicate Object 
http://example.com/custom 
http://xmlns.com/foaf/0.1/ 
ers/43274 
name 
"Dimitri van Hees" 
http://example.com/custom 
ers/43274 
http://xmlns.com/foaf/0.1/g 
ender 
"m" 
http://example.com/custom 
ers/43274 
http://dbpedia.org/ontolog 
y/birthPlace 
http://dbpedia.org/resource 
/Nijmegen 
http://example.com/custom 
ers/43274 
http://xmlns.com/foaf/0.1/i 
nterest 
http://dbpedia.org/resource 
/The_Beatles 
http://example.com/custom 
ers/43274 
http://xmlns.com/foaf/0.1/i 
nterest 
http://dbpedia.org/resource 
/Monty_Python 
http://example.com/custom 
ers/43274 
http://xmlns.com/foaf/0.1/i 
nterest 
http://dbpedia.org/resource 
/Nijmegen
Triplestore: AllegroGraph 
• Database for triples 
• Free up to 5.000.000 triples 
• SPARQL 1.1 support 
• REST API 
• Local installation (privacy) 
• Help from LOD community
SPARQL 
• SPARQL Protocal And RDF Query Language 
• SPARQL Endpoint !== API 
• SPARQL looks like SQL but isn’t
SPARQL 
• SPARQL Protocal And RDF Query Language 
• SPARQL Endpoint !== API 
• SPARQL looks like SQL but isn’t 
• Just like Dutch looks like German but isn’t… Again, 
it’s all about context!
SPARQL 1.1: federated queries 
• Which people older than 40 live in a capital? 
• Which people live in a city with more than 600.000 
inhabitants? 
• Which people live in another country than they 
were born and like The Beatles? 
• Which people like a movie from a certain director? 
• Etc.
SPARQL
In depth view, statistics
One API, three purposes 
• Conversion to Linked Data 
• Export possibilities using content-negotiation: 
JSON, JSON-LD, CSV, Triples 
• Orchestration layer for the app
Step 1: JSON support
Step 2: JSON-LD support
Step 3: Triples support
Used technologies 
• AngularJS frontend 
• RAML modeling language 
• MongoDB raw data store 
• AllegroGraph triplestore 
• Symfony2 PHP API
“The Semantic Web does exist and goes 
hand in hand with API’s. Using six stars 
instead of five, API’s are actually part of 
the deployment scheme while making 
live easier for data publishers and data 
consumers. Let’s bridge the gap, bring 
the best of both worlds, and let’s 
change the web together.”
Thank you! 
• Twitter: http://twitter.com/dvh 
• E-mail: dimitri@freshheads.com 
• GitHub: http://github.com/dvh 
• LinkedIn: https://linkedin.com/in/dimitrivanhees
Thank you! 
• Twitter: http://twitter.com/dvh 
• E-mail: dimitri@freshheads.com 
• GitHub: http://github.com/dvh 
• LinkedIn: https://linkedin.com/in/dimitrivanhees 
• Brewery: http://facebook.com/brouwtoren

More Related Content

What's hot

Schema.org: Where did that come from!
Schema.org: Where did that come from!Schema.org: Where did that come from!
Schema.org: Where did that come from!
Richard Wallis
 
Contextual Computing: Laying a Global Data Foundation
Contextual Computing: Laying a Global Data FoundationContextual Computing: Laying a Global Data Foundation
Contextual Computing: Laying a Global Data Foundation
Richard Wallis
 
Linked Data in Libraries
Linked Data in LibrariesLinked Data in Libraries
Linked Data in Libraries
Richard Wallis
 
What is the Semantic Web
What is the Semantic WebWhat is the Semantic Web
What is the Semantic Web
Juan Sequeda
 
Schema.org - Extending Benefits
Schema.org - Extending BenefitsSchema.org - Extending Benefits
Schema.org - Extending Benefits
Richard Wallis
 
LD4L OCLC Data Strategy
LD4L OCLC Data StrategyLD4L OCLC Data Strategy
LD4L OCLC Data Strategy
Richard Wallis
 
Telling the World and Our Users What We Have
Telling the World and Our Users What We HaveTelling the World and Our Users What We Have
Telling the World and Our Users What We Have
Richard Wallis
 
The Web of Data is Our Opportunity
The Web of Data is Our OpportunityThe Web of Data is Our Opportunity
The Web of Data is Our Opportunity
Richard Wallis
 
Web Driven Revolution For Library Data
Web Driven Revolution For Library DataWeb Driven Revolution For Library Data
Web Driven Revolution For Library Data
Richard Wallis
 
The Web of Data is Our Oyster
The Web of Data is Our OysterThe Web of Data is Our Oyster
The Web of Data is Our Oyster
Richard Wallis
 
Minnebar9 -- The Next Web of Linked Data
Minnebar9 -- The Next Web of Linked DataMinnebar9 -- The Next Web of Linked Data
Minnebar9 -- The Next Web of Linked Data
Jay Myers
 
semantic markup using schema.org
semantic markup using schema.orgsemantic markup using schema.org
semantic markup using schema.org
Joshua Shinavier
 
Better business through linked data
Better business through linked dataBetter business through linked data
Better business through linked data
Jay Myers
 
Schema.org - An Extending Influence
Schema.org - An Extending InfluenceSchema.org - An Extending Influence
Schema.org - An Extending Influence
Richard Wallis
 
FIBO & Schema.org
FIBO & Schema.orgFIBO & Schema.org
FIBO & Schema.org
Richard Wallis
 
MuseoTorino, first italian project using a GraphDB, RDFa, Linked Open Data
MuseoTorino, first italian project using a GraphDB, RDFa, Linked Open DataMuseoTorino, first italian project using a GraphDB, RDFa, Linked Open Data
MuseoTorino, first italian project using a GraphDB, RDFa, Linked Open Data
21Style
 
Semantic Web and Schema.org
Semantic Web and Schema.orgSemantic Web and Schema.org
Semantic Web and Schema.org
rvguha
 
Identifying The Benefit of Linked Data
Identifying The Benefit of Linked DataIdentifying The Benefit of Linked Data
Identifying The Benefit of Linked Data
Richard Wallis
 
The Semantic Web - Interacting with the Unknown
The Semantic Web - Interacting with the UnknownThe Semantic Web - Interacting with the Unknown
The Semantic Web - Interacting with the Unknown
Steffen Staab
 
WorldCat, Works, and Schema.org
WorldCat, Works, and Schema.orgWorldCat, Works, and Schema.org
WorldCat, Works, and Schema.org
Richard Wallis
 

What's hot (20)

Schema.org: Where did that come from!
Schema.org: Where did that come from!Schema.org: Where did that come from!
Schema.org: Where did that come from!
 
Contextual Computing: Laying a Global Data Foundation
Contextual Computing: Laying a Global Data FoundationContextual Computing: Laying a Global Data Foundation
Contextual Computing: Laying a Global Data Foundation
 
Linked Data in Libraries
Linked Data in LibrariesLinked Data in Libraries
Linked Data in Libraries
 
What is the Semantic Web
What is the Semantic WebWhat is the Semantic Web
What is the Semantic Web
 
Schema.org - Extending Benefits
Schema.org - Extending BenefitsSchema.org - Extending Benefits
Schema.org - Extending Benefits
 
LD4L OCLC Data Strategy
LD4L OCLC Data StrategyLD4L OCLC Data Strategy
LD4L OCLC Data Strategy
 
Telling the World and Our Users What We Have
Telling the World and Our Users What We HaveTelling the World and Our Users What We Have
Telling the World and Our Users What We Have
 
The Web of Data is Our Opportunity
The Web of Data is Our OpportunityThe Web of Data is Our Opportunity
The Web of Data is Our Opportunity
 
Web Driven Revolution For Library Data
Web Driven Revolution For Library DataWeb Driven Revolution For Library Data
Web Driven Revolution For Library Data
 
The Web of Data is Our Oyster
The Web of Data is Our OysterThe Web of Data is Our Oyster
The Web of Data is Our Oyster
 
Minnebar9 -- The Next Web of Linked Data
Minnebar9 -- The Next Web of Linked DataMinnebar9 -- The Next Web of Linked Data
Minnebar9 -- The Next Web of Linked Data
 
semantic markup using schema.org
semantic markup using schema.orgsemantic markup using schema.org
semantic markup using schema.org
 
Better business through linked data
Better business through linked dataBetter business through linked data
Better business through linked data
 
Schema.org - An Extending Influence
Schema.org - An Extending InfluenceSchema.org - An Extending Influence
Schema.org - An Extending Influence
 
FIBO & Schema.org
FIBO & Schema.orgFIBO & Schema.org
FIBO & Schema.org
 
MuseoTorino, first italian project using a GraphDB, RDFa, Linked Open Data
MuseoTorino, first italian project using a GraphDB, RDFa, Linked Open DataMuseoTorino, first italian project using a GraphDB, RDFa, Linked Open Data
MuseoTorino, first italian project using a GraphDB, RDFa, Linked Open Data
 
Semantic Web and Schema.org
Semantic Web and Schema.orgSemantic Web and Schema.org
Semantic Web and Schema.org
 
Identifying The Benefit of Linked Data
Identifying The Benefit of Linked DataIdentifying The Benefit of Linked Data
Identifying The Benefit of Linked Data
 
The Semantic Web - Interacting with the Unknown
The Semantic Web - Interacting with the UnknownThe Semantic Web - Interacting with the Unknown
The Semantic Web - Interacting with the Unknown
 
WorldCat, Works, and Schema.org
WorldCat, Works, and Schema.orgWorldCat, Works, and Schema.org
WorldCat, Works, and Schema.org
 

Similar to A Real-World Implementation of Linked Data

APIs and Linked Data: A match made in Heaven
APIs and Linked Data: A match made in HeavenAPIs and Linked Data: A match made in Heaven
APIs and Linked Data: A match made in Heaven
Michael Petychakis
 
Semantics and Machine Learning
Semantics and Machine LearningSemantics and Machine Learning
Semantics and Machine Learning
Vladimir Alexiev, PhD, PMP
 
Rapid Data Exploration With Hadoop
Rapid Data Exploration With HadoopRapid Data Exploration With Hadoop
Rapid Data Exploration With Hadoop
Peter Skomoroch
 
What do we want computers to do for us?
What do we want computers to do for us? What do we want computers to do for us?
What do we want computers to do for us?
Andrea Volpini
 
Introduction to Neo4j
Introduction to Neo4jIntroduction to Neo4j
Introduction to Neo4j
Neo4j
 
The Real-time Web in the Age of Agents
The Real-time Web in the Age of AgentsThe Real-time Web in the Age of Agents
The Real-time Web in the Age of Agents
Joshua Shinavier
 
Case Study: A Real-World Implementation Of Linked Data
Case Study: A Real-World Implementation Of Linked DataCase Study: A Real-World Implementation Of Linked Data
Case Study: A Real-World Implementation Of Linked Data
ProgrammableWeb
 
Intro to Neo4j and Graph Databases
Intro to Neo4j and Graph DatabasesIntro to Neo4j and Graph Databases
Intro to Neo4j and Graph Databases
Neo4j
 
APIs in Enterprise
APIs in EnterpriseAPIs in Enterprise
APIs in Enterprise
Victor Olex
 
Polyglot Persistence with MongoDB and Neo4j
Polyglot Persistence with MongoDB and Neo4jPolyglot Persistence with MongoDB and Neo4j
Polyglot Persistence with MongoDB and Neo4j
Corie Pollock
 
Linked Open Data in Romania
Linked Open Data in RomaniaLinked Open Data in Romania
Linked Open Data in Romania
Vlad Posea
 
Graphs fun vjug2
Graphs fun vjug2Graphs fun vjug2
Graphs fun vjug2
Neo4j
 
Assembling a Linked Ecosystem for the Performing Arts
Assembling a Linked Ecosystem for the Performing ArtsAssembling a Linked Ecosystem for the Performing Arts
Connected data meetup group - introduction & scope
Connected data meetup group - introduction & scopeConnected data meetup group - introduction & scope
Connected data meetup group - introduction & scope
Connected Data World
 
Radical Collaboration in a Linked Digital World
Radical Collaboration in a Linked Digital WorldRadical Collaboration in a Linked Digital World
Linked Data (1st Linked Data Meetup Malmö)
Linked Data (1st Linked Data Meetup Malmö)Linked Data (1st Linked Data Meetup Malmö)
Linked Data (1st Linked Data Meetup Malmö)
Anja Jentzsch
 
Ordering the chaos: Creating websites with imperfect data
Ordering the chaos: Creating websites with imperfect dataOrdering the chaos: Creating websites with imperfect data
Ordering the chaos: Creating websites with imperfect data
Andy Stretton
 
Introduction: Relational to Graphs
Introduction: Relational to GraphsIntroduction: Relational to Graphs
Introduction: Relational to Graphs
Neo4j
 
The Europeana Strategy and Linked Open Data
The Europeana Strategy and Linked Open DataThe Europeana Strategy and Linked Open Data
The Europeana Strategy and Linked Open Data
David Haskiya
 
Neo4j in Depth
Neo4j in DepthNeo4j in Depth
Neo4j in Depth
Max De Marzi
 

Similar to A Real-World Implementation of Linked Data (20)

APIs and Linked Data: A match made in Heaven
APIs and Linked Data: A match made in HeavenAPIs and Linked Data: A match made in Heaven
APIs and Linked Data: A match made in Heaven
 
Semantics and Machine Learning
Semantics and Machine LearningSemantics and Machine Learning
Semantics and Machine Learning
 
Rapid Data Exploration With Hadoop
Rapid Data Exploration With HadoopRapid Data Exploration With Hadoop
Rapid Data Exploration With Hadoop
 
What do we want computers to do for us?
What do we want computers to do for us? What do we want computers to do for us?
What do we want computers to do for us?
 
Introduction to Neo4j
Introduction to Neo4jIntroduction to Neo4j
Introduction to Neo4j
 
The Real-time Web in the Age of Agents
The Real-time Web in the Age of AgentsThe Real-time Web in the Age of Agents
The Real-time Web in the Age of Agents
 
Case Study: A Real-World Implementation Of Linked Data
Case Study: A Real-World Implementation Of Linked DataCase Study: A Real-World Implementation Of Linked Data
Case Study: A Real-World Implementation Of Linked Data
 
Intro to Neo4j and Graph Databases
Intro to Neo4j and Graph DatabasesIntro to Neo4j and Graph Databases
Intro to Neo4j and Graph Databases
 
APIs in Enterprise
APIs in EnterpriseAPIs in Enterprise
APIs in Enterprise
 
Polyglot Persistence with MongoDB and Neo4j
Polyglot Persistence with MongoDB and Neo4jPolyglot Persistence with MongoDB and Neo4j
Polyglot Persistence with MongoDB and Neo4j
 
Linked Open Data in Romania
Linked Open Data in RomaniaLinked Open Data in Romania
Linked Open Data in Romania
 
Graphs fun vjug2
Graphs fun vjug2Graphs fun vjug2
Graphs fun vjug2
 
Assembling a Linked Ecosystem for the Performing Arts
Assembling a Linked Ecosystem for the Performing ArtsAssembling a Linked Ecosystem for the Performing Arts
Assembling a Linked Ecosystem for the Performing Arts
 
Connected data meetup group - introduction & scope
Connected data meetup group - introduction & scopeConnected data meetup group - introduction & scope
Connected data meetup group - introduction & scope
 
Radical Collaboration in a Linked Digital World
Radical Collaboration in a Linked Digital WorldRadical Collaboration in a Linked Digital World
Radical Collaboration in a Linked Digital World
 
Linked Data (1st Linked Data Meetup Malmö)
Linked Data (1st Linked Data Meetup Malmö)Linked Data (1st Linked Data Meetup Malmö)
Linked Data (1st Linked Data Meetup Malmö)
 
Ordering the chaos: Creating websites with imperfect data
Ordering the chaos: Creating websites with imperfect dataOrdering the chaos: Creating websites with imperfect data
Ordering the chaos: Creating websites with imperfect data
 
Introduction: Relational to Graphs
Introduction: Relational to GraphsIntroduction: Relational to Graphs
Introduction: Relational to Graphs
 
The Europeana Strategy and Linked Open Data
The Europeana Strategy and Linked Open DataThe Europeana Strategy and Linked Open Data
The Europeana Strategy and Linked Open Data
 
Neo4j in Depth
Neo4j in DepthNeo4j in Depth
Neo4j in Depth
 

Recently uploaded

办(uts毕业证书)悉尼科技大学毕业证学历证书原版一模一样
办(uts毕业证书)悉尼科技大学毕业证学历证书原版一模一样办(uts毕业证书)悉尼科技大学毕业证学历证书原版一模一样
办(uts毕业证书)悉尼科技大学毕业证学历证书原版一模一样
apvysm8
 
The Building Blocks of QuestDB, a Time Series Database
The Building Blocks of QuestDB, a Time Series DatabaseThe Building Blocks of QuestDB, a Time Series Database
The Building Blocks of QuestDB, a Time Series Database
javier ramirez
 
Predictably Improve Your B2B Tech Company's Performance by Leveraging Data
Predictably Improve Your B2B Tech Company's Performance by Leveraging DataPredictably Improve Your B2B Tech Company's Performance by Leveraging Data
Predictably Improve Your B2B Tech Company's Performance by Leveraging Data
Kiwi Creative
 
Experts live - Improving user adoption with AI
Experts live - Improving user adoption with AIExperts live - Improving user adoption with AI
Experts live - Improving user adoption with AI
jitskeb
 
ViewShift: Hassle-free Dynamic Policy Enforcement for Every Data Lake
ViewShift: Hassle-free Dynamic Policy Enforcement for Every Data LakeViewShift: Hassle-free Dynamic Policy Enforcement for Every Data Lake
ViewShift: Hassle-free Dynamic Policy Enforcement for Every Data Lake
Walaa Eldin Moustafa
 
Beyond the Basics of A/B Tests: Highly Innovative Experimentation Tactics You...
Beyond the Basics of A/B Tests: Highly Innovative Experimentation Tactics You...Beyond the Basics of A/B Tests: Highly Innovative Experimentation Tactics You...
Beyond the Basics of A/B Tests: Highly Innovative Experimentation Tactics You...
Aggregage
 
06-12-2024-BudapestDataForum-BuildingReal-timePipelineswithFLaNK AIM
06-12-2024-BudapestDataForum-BuildingReal-timePipelineswithFLaNK AIM06-12-2024-BudapestDataForum-BuildingReal-timePipelineswithFLaNK AIM
06-12-2024-BudapestDataForum-BuildingReal-timePipelineswithFLaNK AIM
Timothy Spann
 
一比一原版(Unimelb毕业证书)墨尔本大学毕业证如何办理
一比一原版(Unimelb毕业证书)墨尔本大学毕业证如何办理一比一原版(Unimelb毕业证书)墨尔本大学毕业证如何办理
一比一原版(Unimelb毕业证书)墨尔本大学毕业证如何办理
xclpvhuk
 
4th Modern Marketing Reckoner by MMA Global India & Group M: 60+ experts on W...
4th Modern Marketing Reckoner by MMA Global India & Group M: 60+ experts on W...4th Modern Marketing Reckoner by MMA Global India & Group M: 60+ experts on W...
4th Modern Marketing Reckoner by MMA Global India & Group M: 60+ experts on W...
Social Samosa
 
在线办理(英国UCA毕业证书)创意艺术大学毕业证在读证明一模一样
在线办理(英国UCA毕业证书)创意艺术大学毕业证在读证明一模一样在线办理(英国UCA毕业证书)创意艺术大学毕业证在读证明一模一样
在线办理(英国UCA毕业证书)创意艺术大学毕业证在读证明一模一样
v7oacc3l
 
Everything you wanted to know about LIHTC
Everything you wanted to know about LIHTCEverything you wanted to know about LIHTC
Everything you wanted to know about LIHTC
Roger Valdez
 
STATATHON: Unleashing the Power of Statistics in a 48-Hour Knowledge Extravag...
STATATHON: Unleashing the Power of Statistics in a 48-Hour Knowledge Extravag...STATATHON: Unleashing the Power of Statistics in a 48-Hour Knowledge Extravag...
STATATHON: Unleashing the Power of Statistics in a 48-Hour Knowledge Extravag...
sameer shah
 
Intelligence supported media monitoring in veterinary medicine
Intelligence supported media monitoring in veterinary medicineIntelligence supported media monitoring in veterinary medicine
Intelligence supported media monitoring in veterinary medicine
AndrzejJarynowski
 
DSSML24_tspann_CodelessGenerativeAIPipelines
DSSML24_tspann_CodelessGenerativeAIPipelinesDSSML24_tspann_CodelessGenerativeAIPipelines
DSSML24_tspann_CodelessGenerativeAIPipelines
Timothy Spann
 
Learn SQL from basic queries to Advance queries
Learn SQL from basic queries to Advance queriesLearn SQL from basic queries to Advance queries
Learn SQL from basic queries to Advance queries
manishkhaire30
 
Global Situational Awareness of A.I. and where its headed
Global Situational Awareness of A.I. and where its headedGlobal Situational Awareness of A.I. and where its headed
Global Situational Awareness of A.I. and where its headed
vikram sood
 
DATA COMMS-NETWORKS YR2 lecture 08 NAT & CLOUD.docx
DATA COMMS-NETWORKS YR2 lecture 08 NAT & CLOUD.docxDATA COMMS-NETWORKS YR2 lecture 08 NAT & CLOUD.docx
DATA COMMS-NETWORKS YR2 lecture 08 NAT & CLOUD.docx
SaffaIbrahim1
 
一比一原版(UO毕业证)渥太华大学毕业证如何办理
一比一原版(UO毕业证)渥太华大学毕业证如何办理一比一原版(UO毕业证)渥太华大学毕业证如何办理
一比一原版(UO毕业证)渥太华大学毕业证如何办理
aqzctr7x
 
End-to-end pipeline agility - Berlin Buzzwords 2024
End-to-end pipeline agility - Berlin Buzzwords 2024End-to-end pipeline agility - Berlin Buzzwords 2024
End-to-end pipeline agility - Berlin Buzzwords 2024
Lars Albertsson
 
Open Source Contributions to Postgres: The Basics POSETTE 2024
Open Source Contributions to Postgres: The Basics POSETTE 2024Open Source Contributions to Postgres: The Basics POSETTE 2024
Open Source Contributions to Postgres: The Basics POSETTE 2024
ElizabethGarrettChri
 

Recently uploaded (20)

办(uts毕业证书)悉尼科技大学毕业证学历证书原版一模一样
办(uts毕业证书)悉尼科技大学毕业证学历证书原版一模一样办(uts毕业证书)悉尼科技大学毕业证学历证书原版一模一样
办(uts毕业证书)悉尼科技大学毕业证学历证书原版一模一样
 
The Building Blocks of QuestDB, a Time Series Database
The Building Blocks of QuestDB, a Time Series DatabaseThe Building Blocks of QuestDB, a Time Series Database
The Building Blocks of QuestDB, a Time Series Database
 
Predictably Improve Your B2B Tech Company's Performance by Leveraging Data
Predictably Improve Your B2B Tech Company's Performance by Leveraging DataPredictably Improve Your B2B Tech Company's Performance by Leveraging Data
Predictably Improve Your B2B Tech Company's Performance by Leveraging Data
 
Experts live - Improving user adoption with AI
Experts live - Improving user adoption with AIExperts live - Improving user adoption with AI
Experts live - Improving user adoption with AI
 
ViewShift: Hassle-free Dynamic Policy Enforcement for Every Data Lake
ViewShift: Hassle-free Dynamic Policy Enforcement for Every Data LakeViewShift: Hassle-free Dynamic Policy Enforcement for Every Data Lake
ViewShift: Hassle-free Dynamic Policy Enforcement for Every Data Lake
 
Beyond the Basics of A/B Tests: Highly Innovative Experimentation Tactics You...
Beyond the Basics of A/B Tests: Highly Innovative Experimentation Tactics You...Beyond the Basics of A/B Tests: Highly Innovative Experimentation Tactics You...
Beyond the Basics of A/B Tests: Highly Innovative Experimentation Tactics You...
 
06-12-2024-BudapestDataForum-BuildingReal-timePipelineswithFLaNK AIM
06-12-2024-BudapestDataForum-BuildingReal-timePipelineswithFLaNK AIM06-12-2024-BudapestDataForum-BuildingReal-timePipelineswithFLaNK AIM
06-12-2024-BudapestDataForum-BuildingReal-timePipelineswithFLaNK AIM
 
一比一原版(Unimelb毕业证书)墨尔本大学毕业证如何办理
一比一原版(Unimelb毕业证书)墨尔本大学毕业证如何办理一比一原版(Unimelb毕业证书)墨尔本大学毕业证如何办理
一比一原版(Unimelb毕业证书)墨尔本大学毕业证如何办理
 
4th Modern Marketing Reckoner by MMA Global India & Group M: 60+ experts on W...
4th Modern Marketing Reckoner by MMA Global India & Group M: 60+ experts on W...4th Modern Marketing Reckoner by MMA Global India & Group M: 60+ experts on W...
4th Modern Marketing Reckoner by MMA Global India & Group M: 60+ experts on W...
 
在线办理(英国UCA毕业证书)创意艺术大学毕业证在读证明一模一样
在线办理(英国UCA毕业证书)创意艺术大学毕业证在读证明一模一样在线办理(英国UCA毕业证书)创意艺术大学毕业证在读证明一模一样
在线办理(英国UCA毕业证书)创意艺术大学毕业证在读证明一模一样
 
Everything you wanted to know about LIHTC
Everything you wanted to know about LIHTCEverything you wanted to know about LIHTC
Everything you wanted to know about LIHTC
 
STATATHON: Unleashing the Power of Statistics in a 48-Hour Knowledge Extravag...
STATATHON: Unleashing the Power of Statistics in a 48-Hour Knowledge Extravag...STATATHON: Unleashing the Power of Statistics in a 48-Hour Knowledge Extravag...
STATATHON: Unleashing the Power of Statistics in a 48-Hour Knowledge Extravag...
 
Intelligence supported media monitoring in veterinary medicine
Intelligence supported media monitoring in veterinary medicineIntelligence supported media monitoring in veterinary medicine
Intelligence supported media monitoring in veterinary medicine
 
DSSML24_tspann_CodelessGenerativeAIPipelines
DSSML24_tspann_CodelessGenerativeAIPipelinesDSSML24_tspann_CodelessGenerativeAIPipelines
DSSML24_tspann_CodelessGenerativeAIPipelines
 
Learn SQL from basic queries to Advance queries
Learn SQL from basic queries to Advance queriesLearn SQL from basic queries to Advance queries
Learn SQL from basic queries to Advance queries
 
Global Situational Awareness of A.I. and where its headed
Global Situational Awareness of A.I. and where its headedGlobal Situational Awareness of A.I. and where its headed
Global Situational Awareness of A.I. and where its headed
 
DATA COMMS-NETWORKS YR2 lecture 08 NAT & CLOUD.docx
DATA COMMS-NETWORKS YR2 lecture 08 NAT & CLOUD.docxDATA COMMS-NETWORKS YR2 lecture 08 NAT & CLOUD.docx
DATA COMMS-NETWORKS YR2 lecture 08 NAT & CLOUD.docx
 
一比一原版(UO毕业证)渥太华大学毕业证如何办理
一比一原版(UO毕业证)渥太华大学毕业证如何办理一比一原版(UO毕业证)渥太华大学毕业证如何办理
一比一原版(UO毕业证)渥太华大学毕业证如何办理
 
End-to-end pipeline agility - Berlin Buzzwords 2024
End-to-end pipeline agility - Berlin Buzzwords 2024End-to-end pipeline agility - Berlin Buzzwords 2024
End-to-end pipeline agility - Berlin Buzzwords 2024
 
Open Source Contributions to Postgres: The Basics POSETTE 2024
Open Source Contributions to Postgres: The Basics POSETTE 2024Open Source Contributions to Postgres: The Basics POSETTE 2024
Open Source Contributions to Postgres: The Basics POSETTE 2024
 

A Real-World Implementation of Linked Data

  • 1. A Real-World Implementation of Linked Data Dimitri van Hees, APIcon UK 2014
  • 2. About me • Technical Architect • Data Specialist • Freshheads BV • API supporter
  • 3. About me “The only bad thing about API is that it’s the inverse of IPA”
  • 4. About me • Brewmaster • MQTT API driven brewery “De Brouwtoren”
  • 5.
  • 6. 0641011744 • Number • Registration number • Telephone number • Flight number • Bank account
  • 7. 0641011744 • Number • Registration number • Telephone number • Flight number • Bank account
  • 8. Dimitri • String • Word • Place • Dimitri van Hees • Dimitri the Clown
  • 9. Dimitri • String • Word • Place • Dimitri van Hees • Dimitri the Clown
  • 10. Linked Data • Alias The Semantic Web, Web 3.0 • Defines what the data means (government) • Provides links to external resources (apps) • Adds possibility to query multiple datasets (marketing)
  • 11. Five stars of Sir Tim Berners-Lee
  • 12. ★ “Make your stuff available on the Web (whatever format) under an open license”
  • 13. ★ ★ “Make it available as structured data (e.g., Excel instead of image scan of a table)”
  • 14. ★ ★ ★ “Use non-proprietary formats (e.g., CSV instead of Excel)”
  • 15. ★ ★ ★ ★ “Use URIs to denote things, so that people can point at your stuff (RDF)”
  • 16. ★ ★ ★ ★ ★ “Link your data to other data to provide context (Linked Data)”
  • 17. Dutch Linked Open Data Program • Universities • Governments • Semi-governments • Freshheads (me) • Case 5: Linked Data for developers
  • 18. Data landscape • Open Data community • Linked Open Data community • API community • Data publishers • Data consumers
  • 19. Data consumers • Provide us the developer-friendliest way to access your data and we MIGHT use it
  • 20. Data publishers • HOW should we publish our data? • What are the COSTS of doing it that way? • What are the BENEFITS of doing it that way?
  • 21. Open Data community • We don’t care HOW the data is published • We only care IF the data is open
  • 22. API community • Every publisher SHOULD provide RESTful JSON API’s • Because every consumer KNOWS RESTful JSON API’s • We DON’T believe in Linked Data
  • 23. Linked Open Data community • Every publisher SHOULD provide five star data • Every consumer SHOULD learn SPARQL* • So we DON’T need API’s *Linked Data query language
  • 25. Benefits According to EU studies the amount of apps being developed with Linked Open Government Data is negligible. https://joinup.ec.europa.eu/sites/default/files/85/31 /25/Study_on_business_models_for_Linked_Open_ Government_Data_BM4LOGD_v1.00.pdf
  • 26. Costs • Knowledge investment (unknown technology) • Technical investment (hosting infrastructure) • Time investment (change management) • Low ROI
  • 27. “The quality of many datasets is AT MOST three stars”
  • 28. Five stars of Sir Tim Berners-Lee
  • 29.
  • 30. ★ ★ ★ ★ “Provide online access via webservices so developers can use your stuff the way they are used to (RESTful JSON API)”
  • 31. ★ ★ ★ ★ ★ “Add context to your API so it can be linked to other datasets, developers know what the data means and LOD guys can convert it to triples, store it in triplestores and use SPARQL if they want to (JSON-LD)”
  • 32. ★ ★ ★ ★ ★ ★
  • 33. Case “Build a dashboard with which we are capable to better learn about our fans and customers so that we can take action on that knowledge to win sympathy for our brand”
  • 34. Data sources • Facebook (likes, favorites, education, profile) • LinkedIn (skills, education, jobs, profile) • Twitter profiles • Website profiles
  • 35. Challenges • Internal • External • Technical • Agile/rapid development
  • 37. JSON { "id": 43274, "name": "Dimitri van Hees", "gender": "m", "birthDate": "1984-03-14", "birthPlace": "Nijmegen", "facebookLikes": [ 69116329538, 272002449634285, 114690771875816 ] }
  • 38. JSON-LD Context { "id": "@id", "name": "http://xmlns.com/foaf/0.1/name", "gender": "http://xmlns.com/foaf/0.1/gender", "birthDate": "http://schema.org/birthDate", "birthPlace": "http://dbpedia.org/ontology/birthPlace", "facebookLike": "http://xmlns.com/foaf/0.1/interest" }
  • 39. JSON-LD Context { "foaf": "http://xmlns.com/foaf/0.1/", "schema": "http://schema.org/", "dbo": "http://dbpedia.org/ontology/", "id": "@id", "name": "foaf:name", "gender": "foaf:gender", "birthDate": "schema:birthDate", "birthPlace": "dbo:birthPlace", "facebookLikes": "foaf:interest" }
  • 40. JSON-LD { "id": "http://example.com/customers/43274", "type": "schema:Person", "name": "Dimitri van Hees", "gender": "m", "birthDate": "1984-03-14", "birthPlace": { "id": "http://dbpedia.org/resource/Nijmegen", "type": "schema:City" }, "facebookLikes": [ { "id": "http://graph.facebook.com/69116329538", "type": "schema:MusicGroup“ }, { "id": "http://graph.facebook.com/272002449634285", "type": "schema:TVSeries“ }, { "id": "http://graph.facebook.com/114690771875816", "type": "schema:City“ } ] }
  • 41. JSON-LD { "id": "http://example.com/customers/43274", "type": "schema:Person", "name": "Dimitri van Hees", "gender": "m", "birthDate": "1984-03-14", "birthPlace": { "id": "http://dbpedia.org/resource/Nijmegen", "type": "schema:City" }, "facebookLikes": [ { "id": "http://dbpedia.org/resource/The_Beatles", "type": "schema:MusicGroup“ }, { "id": "http://dbpedia.org/resource/Monty_Python", "type": "schema:TVSeries“ }, { "id": "http://dbpedia.org/resource/Nijmegen", "type": "schema:City“ } ] }
  • 42. Triples Subject Predicate Object http://example.com/custom http://xmlns.com/foaf/0.1/ ers/43274 name "Dimitri van Hees" http://example.com/custom ers/43274 http://xmlns.com/foaf/0.1/g ender "m" http://example.com/custom ers/43274 http://dbpedia.org/ontolog y/birthPlace http://dbpedia.org/resource /Nijmegen http://example.com/custom ers/43274 http://xmlns.com/foaf/0.1/i nterest http://dbpedia.org/resource /The_Beatles http://example.com/custom ers/43274 http://xmlns.com/foaf/0.1/i nterest http://dbpedia.org/resource /Monty_Python http://example.com/custom ers/43274 http://xmlns.com/foaf/0.1/i nterest http://dbpedia.org/resource /Nijmegen
  • 43. Triplestore: AllegroGraph • Database for triples • Free up to 5.000.000 triples • SPARQL 1.1 support • REST API • Local installation (privacy) • Help from LOD community
  • 44.
  • 45.
  • 46. SPARQL • SPARQL Protocal And RDF Query Language • SPARQL Endpoint !== API • SPARQL looks like SQL but isn’t
  • 47. SPARQL • SPARQL Protocal And RDF Query Language • SPARQL Endpoint !== API • SPARQL looks like SQL but isn’t • Just like Dutch looks like German but isn’t… Again, it’s all about context!
  • 48. SPARQL 1.1: federated queries • Which people older than 40 live in a capital? • Which people live in a city with more than 600.000 inhabitants? • Which people live in another country than they were born and like The Beatles? • Which people like a movie from a certain director? • Etc.
  • 50. In depth view, statistics
  • 51. One API, three purposes • Conversion to Linked Data • Export possibilities using content-negotiation: JSON, JSON-LD, CSV, Triples • Orchestration layer for the app
  • 52. Step 1: JSON support
  • 53. Step 2: JSON-LD support
  • 54. Step 3: Triples support
  • 55. Used technologies • AngularJS frontend • RAML modeling language • MongoDB raw data store • AllegroGraph triplestore • Symfony2 PHP API
  • 56. “The Semantic Web does exist and goes hand in hand with API’s. Using six stars instead of five, API’s are actually part of the deployment scheme while making live easier for data publishers and data consumers. Let’s bridge the gap, bring the best of both worlds, and let’s change the web together.”
  • 57. Thank you! • Twitter: http://twitter.com/dvh • E-mail: dimitri@freshheads.com • GitHub: http://github.com/dvh • LinkedIn: https://linkedin.com/in/dimitrivanhees
  • 58. Thank you! • Twitter: http://twitter.com/dvh • E-mail: dimitri@freshheads.com • GitHub: http://github.com/dvh • LinkedIn: https://linkedin.com/in/dimitrivanhees • Brewery: http://facebook.com/brouwtoren