Linked Data Under the Hood

146
Tim Hodson Technical Consultant @timhodson #talisldod Linked Data Under the hood

description

Presentation by Tim Hodson at the Talis Event 'The Web's Influence on Your Data' in London - 20th September 2011

Transcript of Linked Data Under the Hood

Page 1: Linked Data Under the Hood

Tim Hodson

Technical Consultant

@timhodson

#talisldod

Linked DataUnder the hood

Page 2: Linked Data Under the Hood

Where do I start?

Page 3: Linked Data Under the Hood
Page 4: Linked Data Under the Hood

http://www.flickr.com/photos/thienzieyung/5147954561

SPARQLtr

iple

RDFontologypropertyid

entifie

r

urlresourceAPI

merg

ing

modeldereference

Page 5: Linked Data Under the Hood

http://www.flickr.com/photos/thienzieyung/5147954561

SPARQL

trip

le

RDF

ontology

property

identif

ier

url

resource API

merg

ing

model dereference

Page 6: Linked Data Under the Hood

Simple Process

Model

Nam

e

Describ

e

Convert

Publish

Page 7: Linked Data Under the Hood

Simple Process

Model

Nam

e

Describ

e

Convert

Publish

Page 8: Linked Data Under the Hood

Simple Process

Model

Page 9: Linked Data Under the Hood

Look at your data

http://www.flickr.com/photos/pss/4876189045/

Page 10: Linked Data Under the Hood

What am I looking for?

Page 12: Linked Data Under the Hood

Simple Process

Model

Page 13: Linked Data Under the Hood

Simple Process

Model

Nam

e

Page 14: Linked Data Under the Hood

identifier

Page 15: Linked Data Under the Hood

identifier

thing

Page 16: Linked Data Under the Hood

identifier

thing

Page 17: Linked Data Under the Hood

identifier

thing1969-059A

Page 18: Linked Data Under the Hood

identifier

thingspacecraft/1969-059A

1969-059A

Page 19: Linked Data Under the Hood

identifier

thingspacecraft/1969-059A

nasa.dataincubator.org/spacecraft/1969-059A

1969-059A

Page 20: Linked Data Under the Hood

identifier

thingspacecraft/1969-059A

nasa.dataincubator.org/spacecraft/1969-059A

http://nasa.dataincubator.org/spacecraft/1969-059A

1969-059A

Page 21: Linked Data Under the Hood

identifier

thingspacecraft/1969-059A

nasa.dataincubator.org/spacecraft/1969-059A

http://nasa.dataincubator.org/spacecraft/1969-059A

1969-059A

28801.0kg

Page 22: Linked Data Under the Hood

identifier

thingspacecraft/1969-059A

nasa.dataincubator.org/spacecraft/1969-059A

http://nasa.dataincubator.org/spacecraft/1969-059A

1969-059A

28801.0kg

Columbia

Apollo 11 CSM

CSM-107

Page 23: Linked Data Under the Hood

identifier

thingspacecraft/1969-059A

nasa.dataincubator.org/spacecraft/1969-059A

http://nasa.dataincubator.org/spacecraft/1969-059A

1969-059A

28801.0kg

Columbia

Apollo 11 CSM

CSM-107

United States

Page 24: Linked Data Under the Hood

identifier

thingspacecraft/1969-059A

nasa.dataincubator.org/spacecraft/1969-059A

http://nasa.dataincubator.org/spacecraft/1969-059A

1969-059A

28801.0kg

Columbia

Apollo 11 CSM

CSM-107

United States

Cape Canaveral

Page 25: Linked Data Under the Hood

identifier

thingspacecraft/1969-059A

nasa.dataincubator.org/spacecraft/1969-059A

http://nasa.dataincubator.org/spacecraft/1969-059A

1969-059A

28801.0kg

Columbia

Apollo 11 CSM

CSM-107

United States

Cape Canaveral

Saturn 5

Page 26: Linked Data Under the Hood

identifier

thingspacecraft/1969-059A

nasa.dataincubator.org/spacecraft/1969-059A

http://nasa.dataincubator.org/spacecraft/1969-059A

1969-059A

28801.0kg

Columbia

Apollo 11 CSM

CSM-107

United States

Cape Canaveral

Saturn 5

Page 27: Linked Data Under the Hood

identifier

Page 28: Linked Data Under the Hood

identifier

.../1969-059A

Page 29: Linked Data Under the Hood

identifier

.../1969-059A

⤵mass

28801.0

Page 30: Linked Data Under the Hood

identifier

.../1969-059A

⤵mass

28801.0

Apollo 11 CSM⤵name

Page 31: Linked Data Under the Hood

identifier

.../1969-059A

⤵mass

28801.0

Apollo 11 CSM⤵ Columbia⤵name name

Page 32: Linked Data Under the Hood

identifier

.../1969-059A

⤵⤵mass

28801.0

Apollo 11 CSM⤵ Columbia⤵name name

launch

../launch:1969-059

Page 33: Linked Data Under the Hood

identifier

.../1969-059A

⤵⤵mass

28801.0

Apollo 11 CSM⤵ Columbia⤵name name

launch16 July 1969⤵

date../launch:1969-059

Page 34: Linked Data Under the Hood

identifier

.../1969-059A

⤵⤵mass

28801.0

Apollo 11 CSM⤵ Columbia⤵name name

launch16 July 1969⤵

date

site⤵../launch:1969-059

Cape Canaveral

Page 35: Linked Data Under the Hood

identifier

.../1969-059A

⤵⤵mass

28801.0

Apollo 11 CSM⤵ Columbia⤵name name

launch16 July 1969⤵

date

site

N 28° 27' 31''⤵lat

⤵../launch:1969-059

Cape Canaveral

Page 36: Linked Data Under the Hood

identifier

.../1969-059A

⤵⤵mass

28801.0

Apollo 11 CSM⤵ Columbia⤵name name

launch16 July 1969⤵

date

site

N 28° 27' 31''

W 80° 31' 59''

⤵ ⤵lat

long

⤵../launch:1969-059

Cape Canaveral

Page 37: Linked Data Under the Hood

identifier

.../1969-059A

⤵⤵mass

28801.0

Apollo 11 CSM⤵ Columbia⤵name name

launch16 July 1969⤵

date

site<../1969-059A> mass 28801.0 .<../1969-059A> name “Apollo 11 CSM” .<../1969-059A> name “Columbia” .<../1969-059A> launch <../launch/1969-059> .<../launch/1969-059> date 1969-07-16 .<../launch/1969-059> site <..site/capecanaveral> .<..site/capecanaveral> lat “N 28° 27' 31''” .<..site/capecanaveral> long “W 80° 31' 59''” .

N 28° 27' 31''

W 80° 31' 59''

⤵ ⤵lat

long

⤵../launch:1969-059

Cape Canaveral

Page 38: Linked Data Under the Hood

That all looks a bit scary!

Page 39: Linked Data Under the Hood

An easy structure for capturing dataSimple format

Page 40: Linked Data Under the Hood

subject value

An easy structure for capturing dataSimple format

property

Page 41: Linked Data Under the Hood

subject value

thingproperty

thing

An easy structure for capturing dataSimple format

property

Page 42: Linked Data Under the Hood

subject value

thingproperty

thing

An easy structure for capturing dataSimple format

property

An easy way to bung stuff togetherSimple merging

Page 43: Linked Data Under the Hood

subject value

thingproperty

thing

../person/A

An easy structure for capturing dataSimple format

property

An easy way to bung stuff togetherSimple merging

Page 44: Linked Data Under the Hood

subject value

thingproperty

thing

../person/A hasParent

An easy structure for capturing dataSimple format

property

An easy way to bung stuff togetherSimple merging

Page 45: Linked Data Under the Hood

subject value

thingproperty

thing

../person/B../person/A hasParent

An easy structure for capturing dataSimple format

property

An easy way to bung stuff togetherSimple merging

Page 46: Linked Data Under the Hood

subject value

thingproperty

thing

../person/B

../person/B

../person/A hasParent

An easy structure for capturing dataSimple format

property

An easy way to bung stuff togetherSimple merging

Page 47: Linked Data Under the Hood

subject value

thingproperty

thing

../person/B

name../person/B

../person/A hasParent

An easy structure for capturing dataSimple format

property

An easy way to bung stuff togetherSimple merging

Page 48: Linked Data Under the Hood

subject value

thingproperty

thing

../person/B

name../person/B

../person/A hasParent

An easy structure for capturing dataSimple format

“Eric”

property

An easy way to bung stuff togetherSimple merging

Page 49: Linked Data Under the Hood

subject value

thingproperty

thing

../person/B

name../person/B

../person/A hasParent

An easy structure for capturing dataSimple format

“Eric”

property

An easy way to bung stuff togetherSimple merging

Page 50: Linked Data Under the Hood

subject value

thingproperty

thing

name../person/B../person/A hasParent

An easy structure for capturing dataSimple format

“Eric”

property

An easy way to bung stuff togetherSimple merging

Page 51: Linked Data Under the Hood

RDF TripleMerging

Page 52: Linked Data Under the Hood

RDF TripleMerging

The same identifier in a different place is still the same thing

Page 53: Linked Data Under the Hood
Page 54: Linked Data Under the Hood

Simple Process

Model

Nam

e

Page 55: Linked Data Under the Hood

Simple Process

Model

Nam

e

Describ

e

Page 56: Linked Data Under the Hood

Properties and Classes

Page 57: Linked Data Under the Hood

Properties and Classes

Properties?

Page 58: Linked Data Under the Hood

Properties and Classes

Properties?

Classes?

Page 59: Linked Data Under the Hood

they describe why something is linked

Properties and Classes

Properties?

Classes?

Page 60: Linked Data Under the Hood

they describe why something is linked

Properties and Classes

they group similarly typed things together

Properties?

Classes?

Page 61: Linked Data Under the Hood

How do I know what terms to

use?

Page 62: Linked Data Under the Hood

Tools

Page 63: Linked Data Under the Hood

• prefix.cc

Tools

Page 64: Linked Data Under the Hood

• prefix.cc

- namespace lookup

Tools

Page 65: Linked Data Under the Hood

• prefix.cc

- namespace lookup

• schemapedia.com, schemacache.com

Tools

Page 66: Linked Data Under the Hood

• prefix.cc

- namespace lookup

• schemapedia.com, schemacache.com

- vocabulary search

Tools

Page 67: Linked Data Under the Hood

• prefix.cc

- namespace lookup

• schemapedia.com, schemacache.com

- vocabulary search

• sindice.com, ckan.net, LOD Diagram

Tools

Page 68: Linked Data Under the Hood

• prefix.cc

- namespace lookup

• schemapedia.com, schemacache.com

- vocabulary search

• sindice.com, ckan.net, LOD Diagram

- identify data sets to link with

Tools

Page 69: Linked Data Under the Hood

• prefix.cc

- namespace lookup

• schemapedia.com, schemacache.com

- vocabulary search

• sindice.com, ckan.net, LOD Diagram

- identify data sets to link with

• Kasabi Linked Data Marketplace

Tools

Page 70: Linked Data Under the Hood

• prefix.cc

- namespace lookup

• schemapedia.com, schemacache.com

- vocabulary search

• sindice.com, ckan.net, LOD Diagram

- identify data sets to link with

• Kasabi Linked Data Marketplace

- access other data sources

Tools

Page 71: Linked Data Under the Hood

Why don’t I just use my own

terms for things?

Page 72: Linked Data Under the Hood
Page 73: Linked Data Under the Hood
Page 74: Linked Data Under the Hood

Add ValueLink to external sources

Page 75: Linked Data Under the Hood

Simple Process

Model

Nam

e

Describ

e

Page 76: Linked Data Under the Hood

Simple Process

Model

Nam

e

Describ

e

Convert

Page 77: Linked Data Under the Hood

Conversion

Page 78: Linked Data Under the Hood

•Database / spreadsheet export

Conversion

Page 79: Linked Data Under the Hood

•Database / spreadsheet export- Script/program convert

Conversion

Page 80: Linked Data Under the Hood

•Database / spreadsheet export- Script/program convert

•Pull existing Linked Data from sites

Conversion

Page 81: Linked Data Under the Hood

•Database / spreadsheet export- Script/program convert

•Pull existing Linked Data from sites- URI matching

Conversion

Page 82: Linked Data Under the Hood

•Database / spreadsheet export- Script/program convert

•Pull existing Linked Data from sites- URI matching

- Linksets

Conversion

Page 83: Linked Data Under the Hood

•Database / spreadsheet export- Script/program convert

•Pull existing Linked Data from sites- URI matching

- Linksets

•Google Refine

Conversion

Page 84: Linked Data Under the Hood

•Database / spreadsheet export- Script/program convert

•Pull existing Linked Data from sites- URI matching

- Linksets

•Google Refine- Facet analysis

Conversion

Page 85: Linked Data Under the Hood

•Database / spreadsheet export- Script/program convert

•Pull existing Linked Data from sites- URI matching

- Linksets

•Google Refine- Facet analysis

- Reconciliation API

Conversion

Page 86: Linked Data Under the Hood

What does my data look like

now?

Page 87: Linked Data Under the Hood

RDF Flavours

16 July 1969⤵date

⤵../launch:1969-059

Cape Canaveral

Page 88: Linked Data Under the Hood

•RDF/XML

RDF Flavours

16 July 1969⤵date

⤵../launch:1969-059

Cape Canaveral

Page 89: Linked Data Under the Hood

•RDF/XMLMachine to machine

RDF Flavours

16 July 1969⤵date

⤵../launch:1969-059

Cape Canaveral

Page 90: Linked Data Under the Hood

•RDF/XML

•N-TriplesMachine to machine

RDF Flavours

16 July 1969⤵date

⤵../launch:1969-059

Cape Canaveral

Page 91: Linked Data Under the Hood

•RDF/XML

•N-TriplesMachine to machine

Processing

RDF Flavours

16 July 1969⤵date

⤵../launch:1969-059

Cape Canaveral

Page 92: Linked Data Under the Hood

•RDF/XML

•N-Triples

•Turtle

Machine to machine

Processing

RDF Flavours

16 July 1969⤵date

⤵../launch:1969-059

Cape Canaveral

Page 93: Linked Data Under the Hood

•RDF/XML

•N-Triples

•Turtle

Machine to machine

Processing

Human readable

RDF Flavours

16 July 1969⤵date

⤵../launch:1969-059

Cape Canaveral

Page 94: Linked Data Under the Hood

•RDF/XML

•N-Triples

•Turtle

•RDFa

Machine to machine

Processing

Human readable

RDF Flavours

16 July 1969⤵date

⤵../launch:1969-059

Cape Canaveral

Page 95: Linked Data Under the Hood

•RDF/XML

•N-Triples

•Turtle

•RDFa

Machine to machine

Processing

Human readable

Html embedded

RDF Flavours

16 July 1969⤵date

⤵../launch:1969-059

Cape Canaveral

Page 96: Linked Data Under the Hood

•RDF/XML

•N-Triples

•Turtle

•RDFa

Machine to machine

Processing

Human readable

Html embedded

All valid RDF

RDF Flavours

16 July 1969⤵date

⤵../launch:1969-059

Cape Canaveral

Page 97: Linked Data Under the Hood

Simple Process

Model

Nam

e

Describ

e

Convert

Page 98: Linked Data Under the Hood

Simple Process

Model

Nam

e

Describ

e

Convert

Publish

Page 99: Linked Data Under the Hood

Put it on a web server

http://www.flickr.com/photos/traftery/4773457853

Page 100: Linked Data Under the Hood

SPARQL

Page 101: Linked Data Under the Hood

SPARQL RDF Query LanguageSPARQL

Page 102: Linked Data Under the Hood

SPARQL RDF Query Language

•Triple pattern matching

SPARQL

Page 103: Linked Data Under the Hood

SPARQL RDF Query Language

•Triple pattern matching

SPARQL

16 July 1969⤵date

⤵../launch:1969-059

Cape Canaveral

Page 104: Linked Data Under the Hood

SPARQL RDF Query Language

•Triple pattern matching

- uses Turtle

SPARQL

16 July 1969⤵date

⤵../launch:1969-059

Cape Canaveral

Page 105: Linked Data Under the Hood

SPARQL RDF Query Language

•Triple pattern matching

- uses Turtle

SPARQL

Page 106: Linked Data Under the Hood

SPARQL RDF Query Language

•Triple pattern matching

- uses Turtle

•Requires a SPARQL-endpoint

SPARQL

Page 107: Linked Data Under the Hood

SPARQL RDF Query Language

•Triple pattern matching

- uses Turtle

•Requires a SPARQL-endpoint

•Backed by a Triple Store

SPARQL

Page 108: Linked Data Under the Hood

SPARQL RDF Query Language

•Triple pattern matching

- uses Turtle

•Requires a SPARQL-endpoint

•Backed by a Triple Store

- Local hosted

SPARQL

Page 109: Linked Data Under the Hood

SPARQL RDF Query Language

•Triple pattern matching

- uses Turtle

•Requires a SPARQL-endpoint

•Backed by a Triple Store

- Local hosted

- Hosted

SPARQL

Page 110: Linked Data Under the Hood

SPARQL RDF Query Language

•Triple pattern matching

- uses Turtle

•Requires a SPARQL-endpoint

•Backed by a Triple Store

- Local hosted

- Hosted

- Managed Service - Talis

SPARQL

Page 111: Linked Data Under the Hood

eh?

Page 112: Linked Data Under the Hood

Linked Data Views

Page 113: Linked Data Under the Hood

HTML based views of your dataLinked Data Views

Page 114: Linked Data Under the Hood

HTML based views of your data

•Linked Data API

Linked Data Views

Page 115: Linked Data Under the Hood

HTML based views of your data

•Linked Data API- Puelia

Linked Data Views

Page 116: Linked Data Under the Hood

HTML based views of your data

•Linked Data API- Puelia

- Elda

Linked Data Views

Page 117: Linked Data Under the Hood

HTML based views of your data

•Linked Data API- Puelia

- Elda

•Bespoke Views

Linked Data Views

Page 118: Linked Data Under the Hood

HTML based views of your data

•Linked Data API- Puelia

- Elda

•Bespoke Views- Hand crafted webpages

Linked Data Views

Page 119: Linked Data Under the Hood

HTML based views of your data

•Linked Data API- Puelia

- Elda

•Bespoke Views- Hand crafted webpages

•Backed by a Triple Store

Linked Data Views

Page 120: Linked Data Under the Hood

HTML based views of your data

•Linked Data API- Puelia

- Elda

•Bespoke Views- Hand crafted webpages

•Backed by a Triple Store- Local hosted

Linked Data Views

Page 121: Linked Data Under the Hood

HTML based views of your data

•Linked Data API- Puelia

- Elda

•Bespoke Views- Hand crafted webpages

•Backed by a Triple Store- Local hosted

- Hosted

Linked Data Views

Page 122: Linked Data Under the Hood

HTML based views of your data

•Linked Data API- Puelia

- Elda

•Bespoke Views- Hand crafted webpages

•Backed by a Triple Store- Local hosted

- Hosted

- Managed Service - Talis

Linked Data Views

Page 123: Linked Data Under the Hood
Page 124: Linked Data Under the Hood
Page 125: Linked Data Under the Hood
Page 126: Linked Data Under the Hood

Links

Page 127: Linked Data Under the Hood

Follow your noseLinks

Page 128: Linked Data Under the Hood
Page 129: Linked Data Under the Hood

Follow your noseLinks

Page 130: Linked Data Under the Hood
Page 131: Linked Data Under the Hood
Page 132: Linked Data Under the Hood

Is RDF the only way to do Linked

Data?

Page 133: Linked Data Under the Hood
Page 134: Linked Data Under the Hood

Web Standards

Page 135: Linked Data Under the Hood

But I just want to let people use

my data.

Page 136: Linked Data Under the Hood

http://www.flickr.com/photos/jwilde/3499946512

Page 137: Linked Data Under the Hood

http://www.flickr.com/photos/jwilde/3499946512

Accessing your Data

Page 138: Linked Data Under the Hood

http://www.flickr.com/photos/jwilde/3499946512

Accessing your Data

Data API

Page 139: Linked Data Under the Hood

http://www.flickr.com/photos/jwilde/3499946512

Accessing your Data

Data API}All have APIs

Page 140: Linked Data Under the Hood

http://www.flickr.com/photos/jwilde/3499946512

Accessing your Data

Data API}All have APIs

All different!

Page 141: Linked Data Under the Hood

Summary

Model

Nam

e

Describ

e

Convert

Publish

SPARQL

trip

le

RDFontologypropertyid

entifie

r

urlresourceAPI

merg

ing

model

Page 142: Linked Data Under the Hood

Summary

Model

Nam

e

Describ

e

Convert

Publish

SPARQL

triple

RDFontologyproperty

identifier

url resourceAPI

merging

model

Page 143: Linked Data Under the Hood

http://www.flickr.com/photos/thienzieyung/5147954561

trip

leRDFURI

Page 144: Linked Data Under the Hood

http://www.flickr.com/photos/thienzieyung/5147954561

triple

RDF

URI

Page 145: Linked Data Under the Hood
Page 146: Linked Data Under the Hood

http://consulting.talis.com