141
Tim Hodson Technical Consultant @timhodson #talisldod Linked Data Under the Hood Thursday, 20 October 11

Linked data under the hood

Embed Size (px)

DESCRIPTION

Presented by Tim Hodson at the Talis Event 'Data on the Web the Benefits of Linking' London 19th October 2011

Citation preview

Tim Hodson

Technical Consultant

@timhodson

#talisldod

Linked DataUnder the Hood

Thursday, 20 October 11

Where do I start?

Thursday, 20 October 11

Thursday, 20 October 11

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

SPARQLtr

iple

RDFontologypropertyid

entifie

r

urlresourceAPI

merg

ing

modeldereference

Thursday, 20 October 11

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

SPARQL

trip

le

RDF

ontology

property

identif

ier

url

resource API

merg

ing

model dereference

Thursday, 20 October 11

Simple Process

Model

Nam

e

Describ

e

Convert

Publish

Thursday, 20 October 11

Simple Process

Model

Nam

e

Describ

e

Convert

Publish

Thursday, 20 October 11

Simple Process

Model

Thursday, 20 October 11

Look at your data

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

Thursday, 20 October 11

What am I looking for?

Thursday, 20 October 11

http://www.flickr.com/photos/striatic/729822

Thursday, 20 October 11

Simple Process

Model

Thursday, 20 October 11

Simple Process

Model

Nam

e

Thursday, 20 October 11

identifier

Thursday, 20 October 11

identifier

thing

Thursday, 20 October 11

identifier

thing

Thursday, 20 October 11

identifier

thing1969-059A

Thursday, 20 October 11

identifier

thingspacecraft/1969-059A

1969-059A

Thursday, 20 October 11

identifier

thingspacecraft/1969-059A

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

1969-059A

Thursday, 20 October 11

identifier

thingspacecraft/1969-059A

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

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

1969-059A

Thursday, 20 October 11

identifier

thingspacecraft/1969-059A

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

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

1969-059A

28801.0kg

Thursday, 20 October 11

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

Thursday, 20 October 11

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

Thursday, 20 October 11

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

Thursday, 20 October 11

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

Thursday, 20 October 11

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

Thursday, 20 October 11

identifier

Thursday, 20 October 11

identifier

.../1969-059A

Thursday, 20 October 11

identifier

.../1969-059A

mass

28801.0

Thursday, 20 October 11

identifier

.../1969-059A

mass

28801.0

Apollo 11 CSM⤵name

Thursday, 20 October 11

identifier

.../1969-059A

mass

28801.0

Apollo 11 CSM⤵ Columbia⤵name name

Thursday, 20 October 11

identifier

.../1969-059A

⤵⤵mass

28801.0

Apollo 11 CSM⤵ Columbia⤵name name

launch

../launch:1969-059

Thursday, 20 October 11

identifier

.../1969-059A

⤵⤵mass

28801.0

Apollo 11 CSM⤵ Columbia⤵name name

launch16 July 1969⤵

date../launch:1969-059

Thursday, 20 October 11

identifier

.../1969-059A

⤵⤵mass

28801.0

Apollo 11 CSM⤵ Columbia⤵name name

launch16 July 1969⤵

date

site⤵../launch:1969-059

Cape Canaveral

Thursday, 20 October 11

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

Thursday, 20 October 11

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

Thursday, 20 October 11

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

Thursday, 20 October 11

That all looks a bit scary!

Thursday, 20 October 11

An easy structure for capturing dataSimple format

Thursday, 20 October 11

subject value

An easy structure for capturing dataSimple format

property

Thursday, 20 October 11

subject value

thingproperty

thing

An easy structure for capturing dataSimple format

property

Thursday, 20 October 11

subject value

thingproperty

thing

An easy structure for capturing dataSimple format

property

An easy way to bung stuff togetherSimple merging

Thursday, 20 October 11

subject value

thingproperty

thing

../person/A

An easy structure for capturing dataSimple format

property

An easy way to bung stuff togetherSimple merging

Thursday, 20 October 11

subject value

thingproperty

thing

../person/A hasParent

An easy structure for capturing dataSimple format

property

An easy way to bung stuff togetherSimple merging

Thursday, 20 October 11

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

Thursday, 20 October 11

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

Thursday, 20 October 11

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

Thursday, 20 October 11

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

Thursday, 20 October 11

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

Thursday, 20 October 11

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

Thursday, 20 October 11

RDF TripleMerging

Thursday, 20 October 11

RDF TripleMerging

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

Thursday, 20 October 11

Thursday, 20 October 11

Simple Process

Model

Nam

e

Thursday, 20 October 11

Simple Process

Model

Nam

e

Describ

e

Thursday, 20 October 11

Thursday, 20 October 11

Properties?

Thursday, 20 October 11

Properties?

Classes?

Thursday, 20 October 11

describe why something is linkedProperties?

Classes?

Thursday, 20 October 11

describe why something is linked

group similarly typed things together

Properties?

Classes?

Thursday, 20 October 11

How do I know what terms to

use?

Thursday, 20 October 11

Ask someone

Thursday, 20 October 11

Ask someone

•schemapedia.com

Thursday, 20 October 11

Ask someone

•schemapedia.com•scemacache.com

Thursday, 20 October 11

Ask someone

•schemapedia.com•scemacache.com•sindice.com

Thursday, 20 October 11

Why don’t I just use my own

terms for things?

Thursday, 20 October 11

Thursday, 20 October 11

Thursday, 20 October 11

Add ValueLink to external sources

Thursday, 20 October 11

Simple Process

Model

Nam

e

Describ

e

Thursday, 20 October 11

Simple Process

Model

Nam

e

Describ

e

Convert

Thursday, 20 October 11

Conversion

Thursday, 20 October 11

•Database / spreadsheet export

Conversion

Thursday, 20 October 11

•Database / spreadsheet export- Script/program convert

Conversion

Thursday, 20 October 11

•Database / spreadsheet export- Script/program convert

•Pull existing Linked Data from sites

Conversion

Thursday, 20 October 11

•Database / spreadsheet export- Script/program convert

•Pull existing Linked Data from sites- URI matching

Conversion

Thursday, 20 October 11

•Database / spreadsheet export- Script/program convert

•Pull existing Linked Data from sites- URI matching

- Linksets

Conversion

Thursday, 20 October 11

•Database / spreadsheet export- Script/program convert

•Pull existing Linked Data from sites- URI matching

- Linksets

•Google Refine

Conversion

Thursday, 20 October 11

•Database / spreadsheet export- Script/program convert

•Pull existing Linked Data from sites- URI matching

- Linksets

•Google Refine- Facet analysis

Conversion

Thursday, 20 October 11

•Database / spreadsheet export- Script/program convert

•Pull existing Linked Data from sites- URI matching

- Linksets

•Google Refine- Facet analysis

- Reconciliation API

Conversion

Thursday, 20 October 11

What does my data look like

now?

Thursday, 20 October 11

RDF Flavours

16 July 1969⤵date

⤵../launch:1969-059

Cape Canaveral

Thursday, 20 October 11

•RDF/XML

RDF Flavours

16 July 1969⤵date

⤵../launch:1969-059

Cape Canaveral

Thursday, 20 October 11

•RDF/XMLMachine to machine

RDF Flavours

16 July 1969⤵date

⤵../launch:1969-059

Cape Canaveral

Thursday, 20 October 11

•RDF/XML

•N-TriplesMachine to machine

RDF Flavours

16 July 1969⤵date

⤵../launch:1969-059

Cape Canaveral

Thursday, 20 October 11

•RDF/XML

•N-TriplesMachine to machine

Processing

RDF Flavours

16 July 1969⤵date

⤵../launch:1969-059

Cape Canaveral

Thursday, 20 October 11

•RDF/XML

•N-Triples

•Turtle

Machine to machine

Processing

RDF Flavours

16 July 1969⤵date

⤵../launch:1969-059

Cape Canaveral

Thursday, 20 October 11

•RDF/XML

•N-Triples

•Turtle

Machine to machine

Processing

Human readable

RDF Flavours

16 July 1969⤵date

⤵../launch:1969-059

Cape Canaveral

Thursday, 20 October 11

•RDF/XML

•N-Triples

•Turtle

•RDFa

Machine to machine

Processing

Human readable

RDF Flavours

16 July 1969⤵date

⤵../launch:1969-059

Cape Canaveral

Thursday, 20 October 11

•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

Thursday, 20 October 11

•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

Thursday, 20 October 11

Simple Process

Model

Nam

e

Describ

e

Convert

Thursday, 20 October 11

Simple Process

Model

Nam

e

Describ

e

Convert

Publish

Thursday, 20 October 11

Put it on a web server

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

Thursday, 20 October 11

SPARQL

Thursday, 20 October 11

SPARQL RDF Query LanguageSPARQL

Thursday, 20 October 11

SPARQL RDF Query Language

•Triple pattern matching

SPARQL

Thursday, 20 October 11

SPARQL RDF Query Language

•Triple pattern matching

SPARQL

16 July 1969⤵date

⤵../launch:1969-059

Cape Canaveral

Thursday, 20 October 11

SPARQL RDF Query Language

•Triple pattern matching

- uses Turtle

SPARQL

16 July 1969⤵date

⤵../launch:1969-059

Cape Canaveral

Thursday, 20 October 11

SPARQL RDF Query Language

•Triple pattern matching

- uses Turtle

SPARQL

Thursday, 20 October 11

SPARQL RDF Query Language

•Triple pattern matching

- uses Turtle

•Requires a SPARQL-endpoint

SPARQL

Thursday, 20 October 11

SPARQL RDF Query Language

•Triple pattern matching

- uses Turtle

•Requires a SPARQL-endpoint

•Backed by a Triple Store

SPARQL

Thursday, 20 October 11

SPARQL RDF Query Language

•Triple pattern matching

- uses Turtle

•Requires a SPARQL-endpoint

•Backed by a Triple Store

- Local hosted

SPARQL

Thursday, 20 October 11

SPARQL RDF Query Language

•Triple pattern matching

- uses Turtle

•Requires a SPARQL-endpoint

•Backed by a Triple Store

- Local hosted

- Hosted

SPARQL

Thursday, 20 October 11

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

Thursday, 20 October 11

eh?

Thursday, 20 October 11

Linked Data Views

Thursday, 20 October 11

Alternative views of your dataLinked Data Views

Thursday, 20 October 11

Alternative views of your data

•Linked Data API

Linked Data Views

Thursday, 20 October 11

Alternative views of your data

•Linked Data API- Puelia

Linked Data Views

Thursday, 20 October 11

Alternative views of your data

•Linked Data API- Puelia

- Elda

Linked Data Views

Thursday, 20 October 11

Alternative views of your data

•Linked Data API- Puelia

- Elda

•Bespoke Views

Linked Data Views

Thursday, 20 October 11

Alternative views of your data

•Linked Data API- Puelia

- Elda

•Bespoke Views- Hand crafted webpages

Linked Data Views

Thursday, 20 October 11

Alternative views of your data

•Linked Data API- Puelia

- Elda

•Bespoke Views- Hand crafted webpages

•Backed by a Triple Store

Linked Data Views

Thursday, 20 October 11

Alternative views of your data

•Linked Data API- Puelia

- Elda

•Bespoke Views- Hand crafted webpages

•Backed by a Triple Store- Local hosted

Linked Data Views

Thursday, 20 October 11

Alternative 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

Thursday, 20 October 11

Alternative 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

Thursday, 20 October 11

Thursday, 20 October 11

Thursday, 20 October 11

Thursday, 20 October 11

Links

Thursday, 20 October 11

Follow your noseLinks

Thursday, 20 October 11

Thursday, 20 October 11

Follow your noseLinks

Thursday, 20 October 11

Thursday, 20 October 11

Thursday, 20 October 11

Is RDF the only way to do Linked

Data?

Thursday, 20 October 11

Thursday, 20 October 11

Web Standards

Thursday, 20 October 11

But I just want to let people use

my data.

Thursday, 20 October 11

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

Thursday, 20 October 11

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

Accessing your Data

Thursday, 20 October 11

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

Accessing your Data

Data API

Thursday, 20 October 11

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

Accessing your Data

Data API}All have APIs

Thursday, 20 October 11

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

Accessing your Data

Data API}All have APIs

All different!

Thursday, 20 October 11

Summary

Model

Nam

e

Describ

e

Convert

Publish

SPARQL

trip

le

RDFontologypropertyid

entifie

r

urlresourceAPI

merg

ing

model

Thursday, 20 October 11

Summary

Model

Nam

e

Describ

e

Convert

Publish

SPARQL

triple

RDFontologyproperty

identifier

url resourceAPI

merging

model

Thursday, 20 October 11

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

trip

leRDFURI

Thursday, 20 October 11

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

triple

RDF

URI

Thursday, 20 October 11

Thursday, 20 October 11

http://consulting.talis.com

Thursday, 20 October 11