1. The Semantic Web and
Drupal 7
Stéphane Corlosquet
NYCCamp
July 21st, 2012
2. About the speaker
● Stéphane “scor” Corlosquet
● 6 years with Drupal
● Drupal 7 RDF core maintainer
● Drupal Security Team member
● Co-authored the
Definitive Guide to Drupal 7
● Co-maintain RDF Extensions,
SPARQL, schema.org
● Member of the RDFa WG
7. Why Structured Data in HTML
● Help machines extract relevant
data from HTML
● Can make use of this data in
amazing ways (e.g. enhanced
search results)
8. Structured Data in HTML
● Add or alter HTML attributes
● Syntaxes
– Microformats (@class, @rel)
– RDFa 1.0 (@property, @about, @typeof, …)
– Microdata (@itemscope, @itemtype, @itemprop, …)
– RDFa 1.1 & RDFa Lite
11. Schema.org
● Describe the type of your content (Person,
Event, Recipe, Product, Book, Movie, etc.)
– 293 types and counting
● Each type has a set of properties
– Common properties: name, description, image, url
– Specific properties depending on the type (see type page
on schema.org)
– 286 properties and counting
22. Drupal 7 and RDF
● Drupal 7 core is RDFa enabled
● RDFa output by default on blogs, forums,
comments, etc. using FOAF, SIOC, DC, SKOS
● Extensible via RDF mapping API, e.g. schema.org
23. Architecture
● User driven data model
● Content type => RDF class
● Field => RDF property
● Node => RDF resource
http://en.wikipedia.org/wiki/File:Oriente_Station_Lisboa_roof.jpg
28. Drupal 7 and RDF
● Contributed module for more features
● RDF Extensions
● Serialization formats: RDF/XML, Turtle, N-Triples
● SPARQL
● Expose Drupal RDF data in a SPARQL Endpoint
● SPARQL Views
● Display remote RDF data in Drupal using SPARQL
● JSON-LD
● Expose Drupal RDF data as JSON-LD (CORS-enabled)
● Features and packaging
● Build distributions / deployment workflow
30. SPARQL Endpoint
● Public endpoint available at /sparql
● http://prefix.cc/sioc,rnews.sparql
31. RDFa 1.1
● Published as W3C Rec last month
● RDFa Lite
● RDFa 1.1 Full
● Leaner markup
● http://rdfa.info/play/
32. RDFa 1.1
● Works with HTML5
● No dependency on XHTML
● HTML5 doctype
● Popular themes are being updated
33. Demos
rNews by International Press
Telecommunications Council (IPTC)
– Open Publish
PREFIX rnews: <http://iptc.org/std/rNews/2011-10-07#>
SELECT * WHERE {
?s a rnews:Article;
rnews:name ?title.
}
34. JSON-LD in Drupal
● Client side as well as server side friendly
● Browser Scripting:
– Native javascript format
– RDFa API in the DOM
● Data can be fetched from anywhere:
– Cross-Origin Resource Sharing (CORS) enabled
● Client can mash data
● http://drupal.org/project/jsonld
35. Demos
● Occupy Directory
– http://directory.occupy.net/occupations
– JSON-LD: http://directory.occupy.net/node/19652.jsonld
● Federated General Assembly
– Drupal distribution for occupy movement
– http://wiki.occupy.net/wiki/Federated_General_Assembly
36. Domeo + Drupal
● Data mash up from independent, but related
sources
37. Domeo + Drupal
● Data mash up from independent, but related
sources