Login | Register   
RSS Feed
Download our iPhone app
Browse DevX
Sign up for e-mail newsletters from DevX


Simplifying RDFa Notation : Page 5

Discover how to use namespace prefixes to define taxonomies and categorization through compact URI encoding (CURIE) to make the semantic web more accessible for web development.

The ROI for RDFa
The examples given here represent a fairly limited subset of the full RDFa specification. It should be possible, after RDFa becomes a formal recommendation, to build nearly any RDF structure using an RDFa notation. However, except for extremely specialized applications, just the ability to provide about groups should prove useful to most people. The question, of course, is whether the advantages of an RDFa notation outweigh the real impacts of encoding RDFa into documents in the first place. In other words, is all this work really worth it?

If the only advantage to this approach is to provide a quick and dirty way of generating full RDF documents from RDF-lite (RDFa) documents, it's likely not. There are certainly applications out there that utilize RDF, but so far their interaction with the web is fairly limited, and their utility, after the initial novelty of seeing relational data interacting with other relational data wears off, is at best somewhat dubious. I'm not necessarily interested in getting 3D spatial linked views of my document in the data model (it is cool to see it, but for the most part it is a little too abstract to have any real relevance to a programmer).

However, there are other users of metadata. One of the more significant is news feeds (especially Atom). Suppose, for instance, that you could point your RSS newsreader to a document with a request for its atom contents. An RDFa-filled paragraph, as shown previously, could very easily be rectified into an Atom feed that looks like this:

<atom:feed xmlns:atom="http://www.w3.org/2005/Atom" xmlns:ev="http://www.metaphoricalweb.org/xmlns/event" xmlns:h="http://www.w3.org/1999/xhtml"> <atom:title>RDFa For "CURIE Society Notes</atom:title> <atom:author>Kurt Cagle</atom:author> <atom:link hrel="alternate" ref= "http://www.metaphoricalweb.org/?q=node/curie_society_notes"/> <atom:published>2007-09-09T09:02:12</atom:published> <atom:updated>2007-09-09T09:02:12</atom:updated> <atom:id>scheme:d428e711-1a99-4212-bd4f-abdf1a2edde5</atom:id> <atom:entry> <atom:title>CURIE Society 3rd Annual Picnic</atom:title> <atom:author>Kurt Cagle</atom:author> <atom:published>2007-09-09T09:02:12</atom:published> <atom:updated>2007-09-09T09:02:12</atom:updated> <atom:link hrel="alternate" ref="http://www.metaphoricalweb.org/?q=node/ curie_society_notes#annual_picnic"/> <atom:category term="event" schema="http://www.metaphoricalweb.org/xmlns/event"/> <ev:venue>Marie Curie Park</ev:venue> <ev:street>3129 N. Douglas St.</ev:street> <ev:city>Victoria</ev:city> <ev:province>British Columbia</ev:province> <ev:date>2007-09-29T13:00:00 - 2007-09-29T17:00:00</ev:date> <ev:speaker>Max Planck</ev:speaker> <ev:speaker>Neils Bohr</ev:speaker> <ev:topic>uncertainty in taxonomic division</ev:topic> <ev:topic>modelling atomic predicates</ev:topic> <ev:content type="text">Also announced today was the CURIE Society third-annual picnic that will be held at Marie Curie Park in downtown Victoria on Sunday, the 29th of September from 1 to 5 <span style="font-variant: small-caps">pm</span>. Guest speakers will include Max Planck and Niels Bohr talking about uncertainty in taxonomic divisions and modeling atomic predicates, respectively. </ev:content> </atom:entry> </atom:feed>

A normal news-feed reader would be able to look at this metadata and at a minimum display the entry, using the RDFa properties for populating critical information. However, specialized applications that make use of the ev: properties are able to do far more, such as populating calendars with the event in question, by looking at the additional information contained, RDF-like, as additional properties attached to the Atom core schema. With a slightly different namespace, this approach is exactly the same one that Google uses for its Calendar service (among other uses).

RDFa and Atom make for a surprisingly potent combination. One provides a useful way for annotating XHTML content with metadata easily and unobtrusively. The other provides a way of transporting both the metadata and its corresponding links such that generalized feed processors can display at least a minimal set of information about the given resource, and specialized feed processors can take the same Atom feed and use the object properties to generate considerably more sophisticated effects.

Look for an upcoming article that will delve into the formal mechanics of building Atom feeds from RDFa and illustrating how you can extend certain CMS systems to better incorporate RDFa as a core capability.

The CURIE model—using namespace prefixes to define taxonomies and categorization—opens up some interesting doors in the W3C model and provides a particularly intriguing way to make the semantic web more accessible for web developers. Folksonomies have generally proven quite successful, and they open up the possibility that the slightly more fine-grained tweaking that RDFa exposes may have a similar adoption cycle and prove to be as useful (and hopefully more so) in the long run.

Kurt Cagle is the managing editor for XMLToday.org and a contributing editor for O'Reilly Media. He is currently working on a book about XBRL. Follow him on Twitter at twitter.com/kurt_cagle.
Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.



Thanks for your registration, follow us on our social networks to keep up-to-date