Webofdata

Post on 07-Dec-2014

1664 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

GIven to the Edinburgh Tech Meetup on 8 July 2009. A quick introduction to how to publish linked data on the web.

Transcript

Getting started with the web of data

Bill Roberts

bill@swirrl.comhttp://www.swirrl.com

http://webofdatablog.com

What is the web of data?

Tom Coates:

“A web of data sources, services for exploring and manipulating data, and ways that users can connect them together”

Linked data

“a method of exposing, sharing, and connecting data via dereferenceable URIs on the Web”

http://wikipedia.org/Linked_data

Linked data principles

From Sir TimBL:

1. Use URIs as names for things2. Use HTTP URIs so that people can look up those

names3. When someone looks up a URI, provide useful

information, using the standards4. Include links to other URIs so that they can discover

more things

http://www.readwriteweb.com/archives/interview_with_tim_berners-lee_part_1.php

Why publish linked data on the web?

• Be found by your customers• Because it’s your mission• As part of academic publishing• As a paid-for service• Complement your main product or service• Build a reputation or brand

Who’s doing it?

How do you find it?

• Sindice• Yahoo SearchMonkey • Google Rich Snippets• Following links• Data mashups/aggregators• SPARQL

How to get started?

Tom Scott of the BBC:

”...for those considering the Linked Data approach we’d say that 95% of the work is work you should be doing just to build for the (non-semantic) web. Get the fundamentals right and the leap to the Semantic Web is really more of a hop.”

Resource Description Framework

Subject/predicate/object (= Thing/attribute/value)

“Bill’s e-mail address is bill@swirrl.com”

BillBille-mail address

bill@swirrl.com

Everything gets a URI

<rdf:RDF xmlns:foaf="http://xmlns.com/foaf/0.1/"xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#”><foaf:Person rdf:about="http://swirrl.com/bill.rdf#me">

<foaf:mbox rdf:resource=“mailto:bill@swirrl.com”></foaf:Person>

Don’t worry about the XML stuff: it’s just circles and arrows!

http://swirrl.com/bill.rdf#me

http://swirrl.com/bill.rdf#me

http://xmlns.com/foaf/0.1/mbox

mailto:bill@swirrl.commailto:bill@swirrl.com

Everything gets a URI

http://swirrl.com/bill.rdf#me

http://swirrl.com/bill.rdf#me

foaf:Personfoaf:Personrdf:type

<rdf:RDF xmlns:foaf="http://xmlns.com/foaf/0.1/"xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#”><foaf:Person rdf:about="http://swirrl.com/bill.rdf#me">

<foaf:mbox rdf:resource=“mailto:bill@swirrl.com”></foaf:Person>

Ontologies

• Use existing ones where possible• Extend if you have to• Make your own if you really have to

– People: Friend of a Friend (FOAF)– People/companies: vCard– Dates: iCal– Authors, titles, etc: Dublin Core– E-Commerce: GoodRelations– Places: Geonames– Projects: Description of a Project (DOAP)

Publish for people AND machines

URI for a real thing: http://dbpedia.org/resource/Edinburgh

HTML representation: http://dbpedia.org/page/Edinburgh

RDF representation: http://dbpedia.org/data/Edinburgh.xml

Content negotiation

Tell me about resource/Edinburgh (in HTML)DBPedia

303 redirect to …/page/Edinburgh

Ok give me …/page/Edinburgh

HTML file

Content negotiationcurl –v –H “Accept: application/rdf+xml” http://dbpedia.org/resource/Edinburgh

Tell me about Edinburgh (in RDF) DBPedia

303 redirect to …/data/Edinburgh.xml

Ok give me the data

RDF+XML file

RDFa

• Mix the HTML and RDF markup in one file.

+ve: simpler as only one file-ve: sometimes you want to include data that

doesn’t really fit the HTML structure+ve: Google and Yahoo can use it (or at least

some of it)

Tools

• Validators – w3.org/RDF/Validator• Client libraries and frameworks - Jena• RDF databases - Sesame• Platforms – Talis

http://www.flickr.com/photos/mjjames/2767817164/

Looking for data publishing pilot studies…

<rdf:Description rdf:about="http://dbpedia.org/resource/Guinea_pig_breed"><skos:subject rdf:resource="http://dbpedia.org/resource/Category:Guinea_pigs"/></rdf:Description>

<rdf:Description rdf:about="http://dbpedia.org/resource/Guinea_pig_breed"><skos:subject rdf:resource="http://dbpedia.org/resource/Category:Guinea_pigs"/></rdf:Description>

Useful linksTom Coates “Native to a web of data” http://www.plasticbag.org/files/native/Linked Data: http://www.linkeddata.orgRDF primer http://www.w3.org/TR/rdf-primer/RDFa primer http://www.w3.org/TR/xhtml-rdfa-primer/Berners-Lee “Linked data – design issues” http://www.w3.org/DesignIssues/LinkedData.htmlBerners-Lee “Putting government data online” http://www.w3.org/DesignIssues/GovData.htmlTom Scott “Building coherence at bbc.co.uk” http://blogs.talis.com/nodalities/2009/01/building-coherence-at-bbccouk.phpRDF Validator http://www.w3.org/RDF/Validator/Sesame RDF database http://www.openrdf.orgJena – Semantic web framework for Java http://jena.sourceforge.net/Talis Platform http://www.talis.com/platform/Yahoo SearchMonkey http://developer.yahoo.com/searchmonkey/Google Rich Snippets http://www.google.com/support/webmasters/bin/answer.py?answer=99170

Thanks!

http://www.slideshare.net/billroberts/webofdata