During my 5 week stay in the US, I was based at the Harvard's Initiative in Innovative Computing where I worked on the Drupal based Science Collaboration Framework (SCF) project with Tim Clark, Sudeshna Das and Benjamin Melançon. I had the chance to meet Tim last year when he visited DERI and presented the SCF project. Our goal was to align the efforts which were put into SCF with the efforts of the Drupal community in terms of RDF, and see what requirements are emerging from a project such as SCF and contribute them back to the Drupal community. Tim and Benjamin had arranged for me to present the latest RDF module developments at the semantic web interest group gatherings in Cambridge, Mass and New York. Many more popped up as I was there. They are detailed below.
One of the key requirements for the Semantic Web to take off is the ability to express local content and its associated data model with existing well-known ontologies such as DC, FOAF, SIOC etc. RDF data with a local RDF schema that doesn't have any references to other schema is not very useful. We will present the latest developments in terms of RDF support in Drupal and in particular the modules RDF vocabulary importer (evoc) and RDF CCK which when combined allow to map local content models to external vocabularies and export a mapped local schema and RDF data. Existing sites using the CCK module can simply install these modules and get a default local RDF schema for free. They can also map their local CCK fields to external RDF terms from any ontology available online. If time permits, we will also talk about Neologism which allows to create and publish custom vocabularies inline with the RDF vocabulary best practices.
I co-presented with Benjamin Melançon who introduced the history of RDF in Drupal. I then talked about the technicalities of the current implementation of RDF in Drupal, including the RDF CCK and evoc modules I've been developing as part of my work at DERI. The audience consisted of about 30 people. The attendance was very mixed in terms of background and interest. It included many ontologists and librarians among others. There was much interest and many questions. At the end I met Sergey Chernyshev from mediawiki who is involved in the semantic web work done in mediawiki. I also met various people interested in using Drupal for their semantic web application such as Christine Connors. See an article about the presentation on semantic alley blog.
Feb 28th: DrupalCamp NYC. A full day of Drupal presentations in a relaxed and jovial atmosphere. Our presentation about RDF in Drupal was scheduled in the afternoon. Marco Neumann kick started the presentation with a brief introduction and Benjamin and I did the same presentation from the 26th. Some members of the audience were familiar with RDF, but regardless, we presented a general introduction to RDF, it's various serialization formats etc.
I enjoyed New York and Manhattan. NYC is huge. Driving through the suburbs to reach the center took for ever. It's a dense area of building and people, but it was an exciting place to visit for the first time. Thanks to Marco Neumann for inviting me and allowing me to stay in the Chelsea area for 2 days!
March 4th - 7th: Drupal Conference in DC. 1400 people and 110 sessions on a variety of topics related to Drupal. More specifically on RDF, 2 regular presentations served as introduction to those who were unfamiliar with the topic, or just wanted to refresh their mind with the latest happenings. Boris Mann presented Practical Semantic Web and Why You Should Care focused on the practicalities of RDF, in particular the newly standardized RDFa, Open Data and what benefits the semantic web can bring. Using Intelligent Web Services for Semantic Drupal Sites by Frank Febbraro illustrated a use case of RDF with Drupal, built on top of the Open Calais service. Following up on the 2 presentations, I scheduled 2 BoF sessions to talk in more details about the RDF modules in Drupal. The first one on Thursday started by a round of table where we all introduced ourselves. During/after lunch I went over the RDF CCK and Evoc modules, I showed how to use them and how they easily allow to map existing CCK content models to external vocabularies. Some interesting questions emerged from the demo, some of them related to RDF in general, others asking about the features of the modules. Someone asked about the patch for CCK to enable RDFa with RDF CCK which is now published. I was delighted to see so much interest and despite the late notice more than 20 people turned up! On Friday, a second BoF focused on the implementation of RDF in core. I presented my ideas in a few slides as a starter for brainstorming and we continued from there. The idea #1 is basically a simple RDFa annotation in the tpl files, which is not what we want for core - though it might fit some use particular uses cases where you want to create a tpl for each content type. The idea #2 is more flexible and is more what we want for core. Fago suggested to use token since it's under review for being integrated into core. Robert mentioned that all these mappings could be expressed in RDF if Drupal had a way to store its settings as RDF, but this seems like a big undertaking given that the code freeze is now planned for September 1st. That's an idea for Drupal 8 though! Feel free to jump in the RDF core issues on drupal.org, especially the one we discussed during the brainstorming: RDFa: Add semantics from the ground up.
A lot of interest from various people including some newbies. We collected some use cases in the audience. Additionally you can also listen to the interviews Ivan Libra, Boris Mann and myself had with Kent Bye for the Lullabot Drupal Voices.
March 5th: Washington Semantic Web Meetup at the Centre for American progress: I was invited to give a talk in complement of the Open Calais presentation by Tom Hague from Thomson Reuters and some guys from Phase2. About 30 people were attending. Again, nice conversation on the topic of RDF in Drupal.
March 10th: Cambridge Semantic Web gatherings at the Stata Center, MIT. I was happy to meet many people I only knew by name: Lee Feigenbaum, Eric Prud'hommeaux, David Booth, Sandro Hawke, Lalana Kagal. Some folks of OpenLink and Cambridge Semantics were also in attendance. I was again presenting Drupal and RDF but this time to rather more RDF savvy crowd. Some of them had some background on how Drupal works but most of them were new to the business. Lee's request was to be able to SPARQL query a Drupal site, and this is something we've long thought about but haven't yet found the time to implement.
March 26th: Decentralized Information Group group at MIT. I had the honor to present in front of Tim Berners Lee's group, with Tim in attendance! I demoed the usual RDF CCK and evoc modules, emphazising the RDF compliancy aspect of the modules. Tim suggested to declare the local classes as owl:sameAs the external classes but I pointed out we don't do that due to the risk of hijacking with the local Drupal constraints which are expressed in the site vocabulary. He was trying all the urls I was demoing on tabulator. He pointed that the RDF CCK urls don't support content negotiation which is a known missing feature. This should be part of the RDF API module. In the end we looked at Neologism and how easy it is now to publish your own RDF vocabulary respecting the RDF best practices. Tim was delighted to see his Tabulator working on these URIs. Thanks to Lalana Kagal and Oshani Seneviratne for organizing this last minute talk.
Overall, this was a fantastic trip which I enjoyed very much. The 5 weeks time I was there passed so quickly it felt like a few days only.
"RDFa in Drupal: Bringing Cheese to the Web of Data" is the title of our workshop paper illustrating the use of RDF CCK in Drupal. It was just accepted at the 5th Workshop on Scripting and Development for the Semantic Web.