React Native vs Ionic - The Best Mobile App Framework
Webofdata
1. Getting started with the web of
data
Bill Roberts
bill@swirrl.com
http://www.swirrl.com
http://webofdatablog.com
2. 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”
3.
4. Linked data
“a method of exposing, sharing, and
connecting data via dereferenceable URIs on
the Web”
http://wikipedia.org/Linked_data
5. Linked data principles
From Sir TimBL:
1. Use URIs as names for things
2. Use HTTP URIs so that people can look up those
names
3. When someone looks up a URI, provide useful
information, using the standards
4. Include links to other URIs so that they can discover
more things
7. 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
9. How do you find it?
• Sindice
• Yahoo SearchMonkey
• Google Rich Snippets
• Following links
• Data mashups/aggregators
• SPARQL
10. 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.”
11. Resource Description Framework
Subject/predicate/object (= Thing/attribute/value)
“Bill’s e-mail address is bill@swirrl.com”
Bill bill@swirrl.com
e-mail address
12. Everything gets a URI
http://swirrl.com/
mailto:bill@swirrl.com
bill.rdf#me
http://xmlns.com/foaf/0.1/mbox
<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!
13. Everything gets a URI
http://swirrl.com/
foaf:Person
bill.rdf#me
rdf: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>
14. 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)
15. 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
16. Content negotiation
DBPedia
Tell me about resource/Edinburgh (in HTML)
303 redirect to …/page/Edinburgh
Ok give me …/page/Edinburgh
HTML file
17. Content negotiation
curl –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
18. 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)
20. Looking for data publishing pilot studies…
<rdf:Description
rdf:about="http://dbpedia.org/resourc
e/Guinea_pig_breed">
<skos:subject
rdf:resource="http://dbpedia.org/reso
urce/Category:Guinea_pigs"/>
</rdf:Description>
http://www.flickr.com/photos/mjjames/2767817164/
21. Useful links
Tom Coates “Native to a web of data” http://www.plasticbag.org/files/native/
Linked Data: http://www.linkeddata.org
RDF 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.html
Berners-Lee “Putting government data online” http://www.w3.org/DesignIssues/GovData.html
Tom Scott “Building coherence at bbc.co.uk” http://blogs.talis.com/nodalities/2009/01/building-coherence-at-bbccouk.php
RDF Validator http://www.w3.org/RDF/Validator/
Sesame RDF database http://www.openrdf.org
Jena – 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