« Peace and quiet | Main | Entity references, and terrorism »


What is the Semantic Web, anyway?

So I have had some time to read and think. I felt that I have to try to figure out what this buzz about microformats and "upper- and lower-case Semantic Web" is all about. It seems that many folks have already weighed in on the topic (1, 2, 3, ...).

One of the key characteristics of microformats, as advertised by the creators, is that they are "open data formats built upon existing and widely adopted standards". Hmm... this is what W3C normally does when building new specifications (as illustrated here, for example). Cynically I would say that there is nothing new here. Then the microformats people say that these formats are for "humans first, machines second". OK, so now I am already not interested. I believe that a desirable goal for the Semantic Web is more like "machines first, humans not needed".

We need to discuss what are some of those characteristics that are essential to the Semantic Web and that differentiate it from other existing technologies. When I read various blogs I see a lot of discussions that say something like "take this stuff, apply some XSLT, throw in this SPARQL query, etc." In my mind, this is not what the Semantic Web, ultimately, is about. What I want to see is "take this information here, that over there, put them together and the right thing happens". We need more discussion about how the Semantic Web is going to be used (how else would we know what we need to implement and how).

What then are the (technical) qualities and features we should be looking for in the Semantic Web? The ability to combine information from different sources is surely one. Being able to process some particular format (of which there are many) is not interesting (you can write code for that; in fact, you can write code that does almost anything, but we are trying to get away from that). Building systems, therefore, that can discover and interpret ontologies (well, declarative descriptions of information), and in a sense "learn" to do new things is at the core of the Semantic Web. Reasoning, as a basic mechanism for the Semantic Web, plays an important role here.

Furthermore, reasoning can be used to make implicit information explicit, and this, I believe, is what's so fundamental about the Semantic Web. Our current systems store a lot of information that's explicit, but even more information is implicit (i.e., could be inferred): For example, if my calendar says that I have a plane reservation to fly from Boston to San Francisco, that may be useful information (it is explicit, by the way), but we think so because we have already applied our own interpretation on it. What's implicit in that piece of information is that after I take that flight, I will be in San Francisco, which, in turn, may have ramifications (to meeting scheduling, for example).

Of those things that the Semantic Web could be used for, one interesting area of research that's emerging is policy-awareness. Generally this idea holds a lot of promise - at least when I think of a policy as a means of instructing some system on how to behave in some future situation. It is a step towards our dream of autonomy and removing humans from the loop to the extent possible. Calling the policy-aware web a "rule-based policy management system" worries me a bit, though, given my current worry about where the rule discussion is headed.

Posted by ora at 09:18


I echo your sentiments on paragraph two. My feelings are more like "machines first, because they need all the help they can get, and then let the machines take care of the humans". You get more out of it, that way.

Keep looking towards the goals... one day my calendar might just be able to figure out which time zone I'm in after my flight lands.

Posted by: Rich at July 12, 2005 06:36 PM