data.semanticweb.org
The upcoming Drupal 7 will have Semantic Web technology built in - any content that users create in a Drupal installation can be embedded as RDFa into a Drupal page. In other words, what Drupal 7 does is publish conventional Drupal content to the Semantic Web. This is great news for publishers who have content which want to port their content from the conventional "eye-ball Web" to the Semantic Web. However, what if you want to go the other way around - what if you have a bunch of Semantic Web data, and you want to publish it as linked data, while making it available to ordinary Web users in a Web browser as well?

This was the situation we were faced with when we started the Semantic Web Conference Metadata Project (aka SWC or "Dog Food Project"). Various SW academic conferences (e.g., ISWC) had for a while started to provide RDF metadata about their delegates, papers, talks, etc., as an effort to "eat their own dog food". However, the metadata was spread over various sites on the Web, wasn't integrated, and wasn't accessible to ordinary users through a Web browser. The SWC project addresses this by providing a single place for all conferences to publish their metadata, by integrating the data from across conferences and by publishing the data so that the conference delegates and others can easily browse it. Rather than starting completely from scratch, we decided to base the project on Drupal and implement the additional functionality of publishing RDF as a Drupal module.
In a nutshell, what the dog food drupal module does is to provide an interface from the SPARQL endpoint of a backend RDF triple store (we use Sesame 2) to the Drupal CMS, providing a way to publish existing RDF to the web of linked data and in a human-readable way as HTML pages at the same time. In this sense, the module provides the exact flip-side of what the RDFa functionality in Drupal 7 (or earlier RDF in Drupal modules) does.
In more detail, the module generates a Drupal node (i.e., a page in Drupal) for each resource in the RDF graph you want to publish - in our case, for each paper, author, organisation or talk at a conference or workshop, which are all modelled using the Semantic Web Conference Ontology. The URI of the node will be the same as the URI of the resource - which means, of course, that the module can only be used to publish resources that are in the same namespace as the Drupal site itself. The module uses a mapping from RDF types to special Drupal node types, so that e.g. a foaf:Person resource (say http://data.semanticweb.org/person/knud-moeller) will be created in Drupal as a DOGFOOD_PERSON. Each such node really only holds the URI and a title (e.g., the name of the person) as its data. When a user looks at the node in a browser, the module will run a number of SPARQL queries for its URI and generate the HTML page from the results (see the screenshot below). Of course, even though the main goal of the module was to use the niceness of Drupal to publish Semantic Web data for normal Web browsing, it also needs to publish to the web of linked data. To do this, the dog food module implements content negotiation to provide RDF instead of HTML to those agents which request it.
Apart from this core functionality, the module also provides additional functionality such as generating and integrating SIOC metadata for comments that visitors to the site leave, or generating bibliographic metadata in the BibTeX format for each paper on the site. The module is currently not publicly available for download (its too poorly documented and would need a lot of code cleaning, generalising and additional maintenance scaffolding to be fit for publication), but anyone interested in working with or even contributing to the module is welcome to contact us at admin@data.semanticweb.org!
If you want to read more about the SW Dog Food project and Drupal module, you can have a look here:
- Möller, K., Heath, T., Handschuh, S., and Domingue, J. (2007). Recipes for Semantic Web Dog Food — the ESWC2006 and ISWC2006 Metadata Projects. In 6th International Semantic Web Conference and 2nd Asian Semantic Web Conference (ISWC+ASWC2007), Busan, South Korea, pages 802–815. Springer.
- Möller, K. (2009). Lifecycle Support for Data on the Semantic Web. PhD thesis, National University of Ireland, Galway.
Knud Möller, Web and Semantic Web Researcher at DERI, National University of Ireland, Galway
- Log in to post comments


