RDF in Drupal: What is it and Why Should We Care?

RDF. Semantic Web. Giant Global Graph. Food for Robots. By now you've probably heard all of these phrases, but relatively few of us have actually done anything with them. For example, I try to follow all the RDF modules on Drupal.org, read all the blog posts regarding Drupal and RDF but I've yet to implement anything having to do with RDF on any of the sites I develop or maintain. Why is this? Am I behind the curve?

The answer is two-fold. First, I have yet to have any clients specifically ask for RDF functionality in their web sites. Secondly, I hadn't been convinced that recommending that my clients spend the time and money to implement an RDF solution is a sensible move for them. The reason I decided to research and write this series of articles is to figure out if and why I should recommend implementing RDF functionality to my clients.

Prior to performing the research for this series, my knowledge of RDF was limited to water-cooler-conversation type knowledge. Big on bulletpoints, small on details. I was aware that RDF will, in the future, be used by search engines to provide better search results. I was also aware that by "tagging" web site content with RDF would enable a "richer" experience. The one example I would relay to people was a vCard-powered business card embedded on a web page using microformats that allowed the user's computer to do something with the contact information. Amusingly, it turned out that my one RDF example didn't even involve RDF, and that the vCard format was actually called hCard when used as a microformat. I had a lot to learn.

Definition

Just so we're all on the same page, RDF stands for "Resource Description Framework". The current HTML-based structure of the web it great for us humans, but it is difficult for computers to make sense of all the data. RDF is a framework to describe information on the web that makes it easy for software programs to process.

Industry Support and Momentum

As Drupal project lead Dries Buytaert pointed out in a blog post, Google has announced Rich Snippets - its first (of many, I'm sure) way of utilizing RDF and other semantic markup formats in its search results. Cutting to the chase, implementing RDF now can lead to better search rankings for your site. With Google's big announcement and Yahoo already on-board (Microsoft isn't sitting still either), now is a good time to get down to brass tacks and start talking about implementing RDF your Drupal sites.

Benefits to Site Administrators and Owners

As I mentioned, implementing RDF today has the potential of immediately leading to better search rankings - contingent on how quickly Google and other search providers fully roll out their RDF capabilities. If you've been paying any attention at all to RDF and the Semantic Web, then you'll know that better search rankings are only the tip of the iceberg. By adding RDF data to your site you are, in effect, giving absolute meaning and context to your content. This means that you can allow present and future Semantic Web applications to absolutely know that the text "Ice Cube" on your site refers to the rap artist and not an actual ice cube. Then, when other sites markup their Ice Cube text in the same way your site does, your data is in effect, linked using RDF.

Applications can then utliize these links to create mashups and add additional value to your data. Extrapolate this out past just people's names but also events, relationships, and topics and you'll realize how powerful RDF can be. This is the Giant Global Graph that Tim Berners-Lee first envisioned (yeah, his blog runs on Drupal). While there will definitely be people and organizations that argue that they don't want their data "linked" with anything for proprietary reasons, most RDF proponents argue that linking your data with other people's data makes it more valuble.

It stands to reason that RDF will follow Metcalfe's Law - the value of the RDF "network" is proportional to the square of the number of connected datapoints. The more data that is connected using RDF, the more valuble your data becomes. A great example of Metcalfe's Law is the fax machine (thanks Ryan). If you're the only one with a fax machine, it kind of sucks. Once all your friends get fax machines, it's kind of awesome. Imagine the same senario but with RDF.

Another immediate benefit, should you choose to pursue it, is the ability to use a technology like SPARQL to start linking your site's data to other RDF-ized data and presenting it back to your users in a format they can use (check out the Drupal SPARQL module). This is precisely what Dries showed during his keynote at DrupalCon Boston in 2008. Implementing RDF now will put you ahead of the Semantic Web curve. Tom Scott summed things up nicely on his blog in his Semantic web - why bother? post:

As a publisher of linked data not only are you enabling others to build cool things with your data – helping you right now – you are also helping to insulate yourself against atrophy. If your data is as open and accessible as possible – then it is relatively straight forward for your future colleagues, working on a as yet unimagined product, to use the data you are publishing right now.

This article is the first in a five-part series about RDF on DrupalEasy.com. Over the next 4 days, I'll be delving deeper into RDF and Drupal:

  1. RDF in Drupal: What is it and Why Should We Care?
  2. RDF in Drupal: Benefits to Casual Web Surfers
  3. RDF in Drupal: Super-Simple Primer
  4. RDF in Drupal: What can I do now? Drupal 6 and the Semantic Web
  5. RDF in Drupal: The Future - RDF in Drupal 7

Comments