I'd like to talk about an interesting XML application called the Resource Description Framework, or RDF, because it lets me talk about two of my favorite subjects--namely, XML and metadata--under the aegis of what I hope you'll agree is an interesting topic.
RDF exists to provide a framework for the kind of metadata that's intended to help us discover the kinds of information elements that populate one of the biggest connections of data known to mankind--and yes, I'm talking about the World Wide Web and the unthinkable legions of uniform resource locators needed to access the documents of which it's comprised.
An outstanding article at XML.com entitled "What is RDF?" (http://www.xml.com/pub/a/2001/01/24/rdf.html) compares the World Wide Web to an enormous library where just about every conceivable kind of information is available, if only you know where to look for it. The context of this observation occurs in light of the Web's relative lack of meaningful metadata--without systematic ways to assess what's "out there," we have no choice but to rely on brute-force surveying tools like the Web spiders that ultimately feed their discoveries into search engines, to help us separate the miniscule amounts of information that may actually interest us at any given moment from the massive mountains of data about which we could currently care less.
In its purest essence, RDF is nothing more than an attempt to identify common threads of and organization principles for information that Web designers and architects could use to provide meaningful metadata without having to rely on an army of researchers to find things, and editors to figure out what they represent, how to categorize them, and where to situate them in an information hierarchy (or other organization).
RDF is built on 3 simple, straightforward rules:
- A resource is anything accessible through a URL, including Web documents and the pieces and parts (such as graphics, style sheets, and so forth) that make attractive Web documents possible.
- A property is a name associated with a resource that identifies the resource, but that is itself also a resource (so that it, too, can have properties that more fully define and explain what the property indicates, signifies, contains, and so forth).
- A statement takes a resource and a property and combines it with some related value so that in logical terms, the resource becomes the subject of the statement, the property becomes a predicate in the statement, and the value becomes the object of the statement.
RDF makes it possible to identify, describe, and classify resources through its ability to construct statements that link resources and properties to specific instances of values somewhere on the Web. This creates an open-ended framework where properties can be defined at will, and RDF statements can easily be translated into XML to enable easy data access and exchange. RDF statements are simple, three-valued (subject, predicate, object) data tuples that can be created and managed in extremely large numbers if necessary. This lets RDF keep up with the monumental--and still growing--scope and scale of the World Wide Web. And because properties, values, and statements can all be resources--and therefore have some real existence somewhere on the Web--it's easy to represent and access this kind of arbitrary meta-information.
The real value that RDF can deliver comes from specific vocabularies of properties and types of statements that it can be used to define. The jury's still out on where, when, and how the many RDF vocabularies that could be envisioned will actually be created and managed, but there's plenty of interesting work on this topic to investigate in the meanwhile. The W3C's RDF home page (http://www.xml.com/pub/a/2001/01/24/rdf.html) is a good place to start learning more about this topic as is XML.com itself and also XMLhack's RDF page (http://www.xmlhack.com/list.php?cat=28). We can only hope that the enormous potential of the metadata that RDF can capture and organize will be realized in as many ways as possible. Why? Because it will make it ever so much easier for those of us who understand the vocabularies that RDF uses to find exactly what we're looking for at any given moment (and because it also promises to make search engines' jobs far easier as well, everyone should benefit equally).
Have questions, comments, or feedback about this or other XML-related topics? Please e-mail me at firstname.lastname@example.org; I'm always glad to hear from my readers!
Ed Tittel is a principal at LANWrights, Inc., a wholly owned subsidiary of LeapIt.com. LANWrights offers training, writing, and consulting services on Internet, networking, and Web topics (including XML and XHTML), plus various IT certifications (Microsoft, Sun/Java, and Prosoft/CIW).