We love seeing momentum for RDFa. Yahoo started things by supporting RDFa in Search Monkey, Google gave it a big push in Rich Snippets and then Facebook adopted RDFa in their Open Graph Protocol. That is 3 very good reasons for Webmasters and site designers to use RDFa. But this is still a world of early adopters and visionaries who use new technology for competitive advantage even when that technology is still a bit hard to use. To get past that to mainstream adoption, it has to be really simple for webmasters and designers to incorporate RDFa into their everyday work.
That is why we were excited to see the Drupal community bake RDFa support into their Drupal 7 release. We wrote about that in our post on Drupal May Be The First Mainstream Semantic Web Winner.
So it was great to see StÃ©phane Corlosquet, who has been the main driving force in incorporating Semantic Web capabilities into Drupal, announce that he has created an Open Graph Protocol module for Drupal 7.
When The Big Dogs Compete, Semantic Web Standards Win
Before describing the Open Graph Protocol (OGP) module for Drupal 7, StÃ©phane also tracks the history of support from Yahoo and Google before Facebook. His key point is that OGP is cool because it is standards based:
"Although it has been designed and created by Facebook, OGP can be used by anyone, Facebook being the first consuming this data produced by the sites having the right OGP markup."
He goes on to praise Facebook for their use of open standards. The bottom line as StÃ©phane relates:
"Any web application is free to markup their webpages with the Open Graph protocol markup, and any web application is free to consume this data like Facebook does today - in essence, it's no different than tackling the Semantic Web chicken an egg issue, making the data available as machine readable format (RDFa in this particular case) so that other peers can consume it. Kudos to Facebook for the right intention. The like button is not part of the Open Protocol, it's a Facebook specific implementation which is detailed on the Facebook developer documentation."
That is a big deal. Facebook has been criticized as a "walled garden". But their use of RDFa in OGP is open and a big boost for the Semantic Web.
OGP In Drupal 7: Making It Simpler
There is nothing that StÃ©phane's module does that could not be done by any Drupal site developer. That is the beauty of Drupal as an open source platform with plug-ins. But those site developers all have a long list of priority items to complete, so anything that makes it simpler is welcome.
He is building on top of the RDFa support in Drupal 7:
"I've created an opengraphprotocol module for Drupal 7 which takes advantage of its new core functionalities such as the use of namespaces in RDFa. OPG requires to add the og and fb namespaces in the HTML output. This is something which would have required users to hack their theme in Drupal 6, but which is only a couple of lines in a Drupal 7 modules thanks to hook_rdf_namespaces"
Anything that makes RDFa simpler for webmasters is a big deal. Saving a few lines of code is not a big deal for one developer. But multiply that by thousands of developers and a few lines of code can be the difference between mass adoption and "worthy but neglected".
StÃ©phane's post resonates with anybody who has spent time with Drupal's "content types". This is what makes Drupal more than a basic blogging platform (and also what can make it a tad unapproachable for less technical folk). His post raises the interesting idea of mapping the Drupal "content types" to the "social objects" that are emerging in the social semantic web:
"Most importantly, taking full advantage of Drupal's content types, the module offers a basic mapping interface to define what type of social object you want your content types to be mapped to which is then reflected in the page markup via the og:type property. With fields now in core, the module will also output whatever field is recognized as one of the Open Graph protocol properties like description, image, latitude, longitude, locality, region, email, phone_number, fax_number. So for instance, if you create a field 'description' (machine name field_description) its content will be marked up with OGP. Similarly you can create a field of type integer 'phone_number' and it will be exported as well. Finally the module adds the Like button for commodity and automatic integration with Facebook."
Will Twitter Annotations Add To RDFa Momentum?
As I write, the Twitter Annotaions Hackfest is going on.
It is reasonable to assume that developers won't be calling for a Twitter proprietary protocol. And Twitter has made openness a core part of their operating mode. So we can be fairly sure that Twitter Annotations will support RDFa.
Twitter is increasingly becoming the message bus of the real time web. Some structure is critical to that role, so that publishers and subscribers (to use an old fashioned term) know what to publish and consume.
So it is also reasonable to assume that some Drupal developer will build a Twitter Annotations module in the not too distant future.