1. Drupal and RDF
Stéphane Corlosquet, <scorlosquet@gmail.com>
- Software engineer, MGH
- Drupal developer
- SemWeb geek
This work is licensed under a Creative Commons Attribution 3.0 License, with attribution to Stéphane Corlosquet
2. Drupal
● Small news site in 2000
● Open Source - 2001
● Content Management System
● LAMP stack
● Non-developers can build sites
and publish content
● Control panels instead of code
http://www.flickr.com/photos/funkyah/2400889778
3. Drupal
● Open & modular
architecture
● Extensible by modules
● Standards-based
● Low resource hosting
● Scalable
5. Drupal
● Enable the features you
want:
Comments, tags, voting/rating,
location, translations, revisions,
search...
(from the 3000+ modules contributed
by the community)
http://www.flickr.com/photos/grdloizaga/81742518
6. Drupal
● Place links in the navigation
bars and blocks
● Build Views over your data
http://www.flickr.com/photos/grdloizaga/81742518
11. ● 227,000 sites running
Drupal
● How to leverage
all this data?
● <insert RDF sales pitch here>
http://www.flickr.com/photos/bitzcelt/450640323/
12. Experiment in Drupal 6
● Expose Drupal's data in
RDF
● Automatically
● No RDF expertise
required
● Module based
● 100% PHP based
http://www.flickr.com/photos/neys/238686518
7
13. Architecture
● User driven data model
● Content type = RDF class
● Field = RDF property
● Node = RDF resource
http://www.flickr.com/photos/docman/221656821
17. Goals
● Re-use of published ontology terms
– local schema can be mapped to vocabularies like DC,
FOAF, SIOC, etc.
● Expressing internal Drupal constraints in OWL
– such as required fields and cardinalities
● Auto-generate terms where necessary
– when a content type or field cannot be mapped to an
external term
● Safe vocabulary re-use
– to prevent inconsistencies on the Web of Data
18. Mapping to RDF
● site:Person a rdfs:Class;
rdfs:subClassOf foaf:Person.
● site:first_name a rdf:Property;
rdfs:subPropertyOf foaf:firstName.
● site:colleague rdfs:domain site:Person.
21. Modules for Drupal 6
● 1. Automatic site vocabulary generation
● 2. Mapping Content Models to existing
ontologies
● 3. Data endpoint for SPARQL querying
● 4. Lazy loading of external data (data import)
23. Preparing for RDF in Drupal 7
● March 2008: first draft for schema
http://groups.drupal.org/node/9311
24. Preparing for RDF in Drupal 7
● August 2008 Szeged conference: early RDF CCK
http://szeged2008.drupalcon.org/program/sessions/drupal-and-semantic-web-neologism-project
25. Preparing for RDF in Drupal 7
● March 2009 DC conference: video on RDFa in Drupal
http://www.youtube.com/watch?v=r4WgTRIRoa0
26. Preparing for RDF in Drupal 7
● May 2009, DERI Galway: RDF in core code sprint
27. Preparing for RDF in Drupal 7
● October 2009: main RDF patch committed
http://twitter.com/Dries/status/4997311434
28. Drupal 7 and RDF
● Drupal 7 core is RDFa enabled!
●
RDFa output by default on blogs, forums,
comments, etc. using FOAF, SIOC, DC, SKOS
● Alpha release available
● Sneak preview http://drupalrdf.openspring.net/
31. Conclusion
● Drupal 7 will play a major role in exposing more
RDF data on the web
● Empower users to create new types of apps
● Testing framework part of core
● http://groups.drupal.org/semantic-web
● http://openspring.net/
● Questions?
32. Open questions beyond Drupal
● How to push changes to consumers
● How to pull changes from remote datasets
– deal with locally annotated resources