1. SKOS, RDFa & Co,
Linked Data Related Examples
INFO 4302 - April 20, 2011
Bernhard Haslhofer - Cornell University
2. Today we talk about...
• Simple Knowledge Organization System (SKOS)
• Machine-readable data in (X)HTML(5)
(RDFa, Microformats, Microdata)
• Search Engines and machine-readable data
• Facebook Graph API & Open Graph Protocol
4. Why Linked Data?
• There is lots of information on the Web
• ... valuable information that can be (re-)used
• Problem
• information is usually expressed in the form of
HTML documents
• the underlying raw data are locked in closed data
silos (mostly DBMS)
5. Why Linked Data?
• The Web is successful because it provides
• Uniform encoding (HTML)
• Uniform addressing (URI)
• Uniform transportation (HTTP)
for the exchange of documents.
• Why not apply the same mechanism to the
underlying data?
6. What is Linked Data?
• A method to build a Web of Data
• Architectural style, set of standards
Web
7. Publishing Data
• Distinguish between non-information and
information resource
• Sample non-information resource
• http://dbpedia.org/resource/The_Shining_(film)
• Sample information resource
• http://dbpedia.org/page/The_Shining_(film) - HTML
• http://dbpedia.org/data/The_Shining_(film) - RDF
8. Publishing Data
GET http://dbpedia.org/resource/The_Shining_(film)
Accept: application/rdf+xml
303 See Other
Location: http://dbpedia.org/data/The_Shining_(film)
GET http://dbpedia.org/data/The_Shining_(film)
Accept: application/rdf+xml
200 OK
...
<?xml version="1.0" encoding="utf-8"?>
<rdf:RDF ...
9. Simple Knowledge Organization System (SKOS)
• A language for describing controlled vocabularies
(taxonomies, thesauri, classification schemes)
http://dbpedia.org/resource/
Category:1980s_horror_films
skos:subject rdf:type
http://dbpedia.org/resource/ skos:broader
http://www.w3.org/2004/02/
The_Shining_(film) skos/core#Concept
rdf:type
http://dbpedia.org/resource/
Category:1980s_films
13. Knowledge Organization Systems (KOS)
semantic
expressiveness
Ontology
DL, FOL, etc
OWL
Data Model
UML
ER
Thesaurus
Taxonomy XML/S
SKOS
Folksonomy
Glossary Term/Tag list
complexity
14. Glossary
• A simple (alphabetical) list of terms and their
definitions for a particular domain of
knowledge
• Useful for creating clear and unambiguous
term definitions
16. Controlled Vocabulary
• A simple list of terms, definitions and naming
conventions
• Some process “controls” adding and removing
term definitions to ensure consistency
• Terms are often defined in relationship to
each other
• Taxonomies, Thesauri, and Ontologies are
special forms of controlled vocabularies
17. Taxonomy
• Classification of entities in a hierarchy
• A taxonomy node stands for a real-world entity
animate object
agent
subclass of
person organization
manager employee
20. Thesaurus
• Associates the meaning of a term with the
meaning of another term
• hypernym, hyponym, synonym, antonym
Imagery
Aerial imagery Infrared imagery
Radar imagery Combat support
equipment
Moving target Radar Intelligence and electronic
indicators photography warfare equipment
Imaging systems
narrower than Infrared imaging
Imaging radar
systems
related to
21.
22.
23. Ontology
• Defines concepts that represent an area of
knowledge
• Machine-read and -interpretable
representation
• Classes, instances, relationships, properties,
functions, constraints, etc.
26. What is SKOS?
• A model for expressing the basic structure
and content of concept schemes such as
thesauri, classification schemes, taxonomies,
folksonomies, and other similar types of
controlled vocabularies
• Allows concepts to be composed and
published as Linked Data on the Web
• Hides the complexity of OWL - easy to use
27. semantic
expressiveness
Ontology
DL, FOL, etc
OWL
Data Model
UML
ER
Thesaurus
Taxonomy XML/S
SKOS
Folksonomy
Glossary Term/Tag list
complexity
28. SKOS Concepts are...
• ... identified with URIs
• ... labeled with 1..* natural language strings
• ... documented with various types of notes
• ... semantically linked to each other
• ... aggregated into concept schemes
30. skos:Concept
• Concepts are
• the units of thought: ideas, meanings, categories of
objects, etc.
• abstract entities which are independent of the terms
used to label them
skos:Concept
rdf:type
lcsh:sh2007025344#concept
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
@prefix lcsh: <http://id.loc.gov/authorities/> .
31. skos:(pref|alt|hidden)Label
• Labels refer to concepts’ natural language(s)
• skos:prefLabel: the preferred lexical label
• skos:altLabel: alternative lexical labels (e.g., synonyms)
• skos:hiddenLabel: labels useful for indexing
"Parody films"@en
skos:prefLabel
lcsh:sh2007025344#concept skos:altLabel "Movie parodies"@en
skos:altLabel
"Send-up films"@en
32. SKOS Semantic Relationships
• The meaning of a concept is also defined by its
links to other concepts
• skos:broader: hierarchical link to a more general concept
• skos:narrower: hierarchical link to a more specific concept
• skos:related: associative (non-hierarchical) link
skos:broader
lcsh:sh2007025038#concept skos:prefLabel "Comedy films"@en
skos:narrower skos:broader
lcsh:sh2007025344#concept skos:prefLabel "Parody films"@en
skos:narrower
33. SKOS Documentary Notes
• Add further human-readable documentation
• skos:scopeNote: info about intended meaning
• skos:definition: complete explanation of meaning
• skos:example: example concept use
“This heading is used as a
genre/form heading for
films that comically imitate
lcsh:sh2007025038#concept skos:scopeNote
another work or group of
works of a more serious
nature.”@en
skos:prefLabel
"Comedy films"@en
34. skos:ConceptScheme
• Allow the organization of skos:Concepts in
some Knowledge Organization Scheme (KOS)
skos:ConceptScheme
lcsh:#genreFormTerms
skos:inScheme skos:inScheme
skos:Concept skos:Concept
lcsh:sh2007025038#concept ...
35. Example
• Dereference and analyze
“Jack Nicholson” @ New York Times
• http://data.nytimes.com
• http://data.nytimes.com/N5761411277431266513
38. Why RDFa?
GET http://dbpedia.org/resource/The_Shining_(film)
Accept: application/rdf+xml
303 See Other
Location: http://dbpedia.org/data/The_Shining_(film)
Oh dear!
GET http://dbpedia.org/data/The_Shining_(film)
Accept: application/rdf+xml
200 OK
...
<?xml version="1.0" encoding="utf-8"?>
<rdf:RDF ...
39. What is RDFa?
• A mechanism for embedding RDF metadata
within XHTML 1.1 Web documents
• Defines a set of attributes to augment visual
data with machine-readable hints
• User agents can extract triples from RDFa-
enables Web pages
40. What is RDFa?
• Markup human-readable data (HTML) with
machine-readable indicators
41. RDFa Example
XHTML
...
All content on this site is licensed under
<a href="http://creativecommons.org/licenses/by/3.0/">
a Creative Commons License
</a>.
XHTML + RDFa
...
All content on this site is licensed under
<a rel=”license” href="http://creativecommons.org/licenses/by/3.0/">
a Creative Commons License
</a>.
42. RDFa Attributes
• about and src: the resource the metadata is about
• rel and rev: (reverse) relationship between resources
• href and resource: the partner resource
• property: a property for the content of an element
• content: override content of an element
• datatype: specify the datatype of text
• typeof: specifies the RDF type(s) or a subject
43. RDFa Example
XHTML
<div>
<h2>The trouble with Bob</h2>
<h3>Alice</h3>
...
</div>
XHTML + RDFa
<div xmlns:dc="http://purl.org/dc/elements/1.1/">
<h2 property="dc:title">The trouble with Bob</h2>
<h3 property="dc:creator">Alice</h3>
...
</div>
48. Microformats
• A Microformat extends conventional HTML
tags with semantic information
• Started by Technorati, Inc.; now community-
driven (IRC, mailing list, blogs)
• Make use of the following (X)HTML attributes
• class
• rel
49. Microformats Example
HTML
<div>
<div>Joe Doe</div>
<div>Jo</div>
<div>The Example Company</div>
<div>604-555-1234</div>
<a href="http://example.com/">http://example.com/</a>
</div>
XHTML + Microformats
<head profile="http://www.w3.org/2006/03/hcard">
...
</head>
...
<div class="vcard">
<div class="fn">Joe Doe</div>
<div class="nickname">Jo</div>
<div class="org">The Example Company</div>
<div class="tel">604-555-1234</div>
<a class="url" href="http://example.com/">http://example.com/</a>
</div>
53. Microformats vs. RDFa
<div class="vcard">
<span class="fn">Bernhard Haslhofer</span>
<div class="adr">
<div class="street-address">301 College Avenue</div>
<span class="locality">Ithaca</span>
<span class="postal-code">14850</span>
<span class="country-name">United States</span>
</div>
<a class="email"
href="mailto:bernhard.haslhofer@cornell.edu">bernhard.haslhofer@cornell.edu</a>
</div>
hCard sample created with http://microformats.org/code/hcard/creator
54. Microformats RDFa
flat namespace XML namespaces
support HTML4, XHTML 1.1, and
support for XHTML 1.1
HTML 5
use latent HTML attributes introduces new metadata attributes
vocabulary defined by one
open to any RDF-based vocabulary
organization/community
Also see: http://evan.prodromou.name/RDFa_vs_microformats
55. Microdata (HTML5)
• A very young HTML 5 proposition that
extends Microformats and addresses its
shortcomings
• Items are created within an itemscope
• Ever item is assigned an arbitrary number of
properties (itemprop)
• Uses global identifiers for typing and naming
items
59. Google Rich Snippets
• Reviews
• People
• Products
• Businesses and organizations
• Recipes
• Events
60. Google Rich Snippets
HTML
<div>
L’Amourita Pizza
Reviewed by Ulysses Grant on Jan 6.
Delicious, tasty pizza on Eastlake!
L'Amourita serves up traditional wood-fired Neapolitan-style pizza,
brought to your table promptly and without fuss. An ideal neighborhood pizza joint.
Rating: 4.5
</div>
61. Google Rich Snippets
Microdata
<div>
<div itemscope itemtype="http://data-vocabulary.org/Review">
<span itemprop="itemreviewed">L’Amourita Pizza</span>
Reviewed by <span itemprop="reviewer">Ulysses Grant</span> on
<time itemprop="dtreviewed" datetime="2009-01-06">Jan 6</time>.
<span itemprop="summary">Delicious, tasty pizza in Eastlake!</span>
<span itemprop="description">L'Amourita serves up traditional wood-fired
Neapolitan-style pizza,
brought to your table promptly and without fuss. An ideal neighborhood pizza
joint.</span>
Rating: <span itemprop="rating">4.5</span>
</div>
</div>
62. Google Rich Snippets
Microformats
<div class="hreview">
<span class="item">
<span class="fn">L’Amourita Pizza</span>
</span>
Reviewed by <span class="reviewer">Ulysses Grant</span> on
<span class="dtreviewed">
Jan 6<span class="value-title" title="2009-01-06"></span>
</span>.
<span class="summary">Delicious, tasty pizza on Eastlake!</span>
<span class="description">L'Amourita serves up traditional wood-fired
Neapolitan-style pizza, brought to your table promptly and without fuss.
An ideal neighborhood pizza joint.</span>
Rating:
<span class="rating">4.5</span>
</div>
63. Google Rich Snippets
RDFa
<div xmlns:v="http://rdf.data-vocabulary.org/#" typeof="v:Review">
<span property="v:itemreviewed">L’Amourita Pizza</span>
Reviewed by
<span property="v:reviewer">Ulysses Grant</span> on
<span property="v:dtreviewed" content="2009-01-06">Jan 6</span>.
<span property="v:summary">Delicious, tasty pizza on Eastlake!</span>
<span property="v:description">L'Amourita serves up traditional wood-fired
Neapolitan-style pizza, brought to your table promptly and without fuss.
An ideal neighborhood pizza joint.</span>
Rating:
<span property="v:rating">4.5</span>
</div>
68. Required Reading
• SKOS Primer: http://www.w3.org/TR/skos-primer/
• RDFa Primer: Bridging the Human and Data Webs.
http://www.w3.org/TR/xhtml-rdfa-primer/
• HTML Microdata: http://www.w3.org/TR/microdata/
• Microformats: http://microformats.org/
69. Recommended Readings
• SKOS Vocabularies Overview:
• RDFa.info: http://rdfa.info/wiki/RDFa_Wiki
• CC REL: Creative Commons Rights Expression
Language (CC REL)