The SVG argument
by Bijan Parsia
Some time ago, while I was still living in North Carolina, I wrote an article that made a case for the Semantic Web—- RDF in particular. At that time, I was finding RDF a strange and annoying beast (ok, that hasn’t changed) and I was trying to make it (and the bizarre choices going into it) make sense in some way. Now I don’t quite believe A simple, prima facie argument in favor of the Semantic Web anymore, or rather, it seems to work as well for tagging as for the Semantic Web, but I do have a new argument which I think is interesting and helpful. It’s also a big more targeted. I call it the SVG argument.
I often find myself being asked how to answer the question, “Why not use XML?” when proposing to use RDF or OWL. I, myself, have been asked this question directly. But the question involves something of a category mistake, albeit one that has been encouraged by various Semantic Web advocates.
To see the error, consider an analogous situation, albeit with a bit more detail: You are asked to put together a graphic logo repository with a nice browsing interface. You reasonably decide to use SVG as the canonical format. Imagine now that someone asked, “SVG? Why not use XML?” The first retort would be, “But SVG is [an] XML [based format]!”
So are RDF and OWL, of course.
But let’s presume the questioner knows that SVG is an XML format. What possible sensible reading to the question could we give? How about, “Why not use a custom ad hoc, but XML based format with custom code to generate, render, and generally deal with it instead of SVG?” Of course, phrased this way, the answer is obviously “Because it would be absurd not to.” It’s not always absurd, of course, especially when a rival technology is better suited to your needs. But then the question might be “Why not use PDF?” (and one strike against PDF is, for many, its lack of XMLness).
Similarly, if you are dealing with a situation that is a pretty good fit for a binary relational model with a hierarchical categorization, then RDF or OWL are natural candidates. At the very least, their semantics are published and known. If you make up your own system, you have to document it (after having designed and built it). It’s also difficult to get others to build stuff for your personal format, so you have to evangelize it. Even if RDF or OWL are something of a mismatch for your application, the question is whether they are so much a mismatch to make them unusable.
Notice that this question can be flipped around. If someone asks you “Why not use RDF?” when you are building a website or need a validatable format or any of a number of other things which just aren’t a good fit, tell them why it isn’t a good fit. Or send them to me, and I will!
(Alas this post is getting rambly, instead of being tight and right as I intended. I’m under the weather, so cut me some slack.)
Many factors go into whether a technology will suit your particular needs in a particular situation better than another. Many of these have nothing to do with the technology itself. For example, if your team is really experienced with XML, it makes sense to stick with it whenever sensible. If your infrastructure is all XML, how much better does something have to be before you redo applications? (This is also situation dependent…sometimes, a 10% improvement of some metrics is worth the switch.)
September 20th, 2006 at 12:26 am
[...] The SVG argument “But the question involves something of a category mistake”. Exactly (regarding RDF vs. XML). (tags: rdf xml) [...]
July 28th, 2008 at 2:01 pm
[...] The SVG argument [...]