At one point in the semantic technologies track of last week’s XML Summer School, I showed a little application I wrote where you enter the names of two film directors on a form, click the search button, and then see a list of all actors who’ve been in movies by both directors. The form calls a CGI script that creates a short SPARQL query, runs it, and generates an HTML page of the results. You can read more about it in the developerWorks article Build Wikipedia query forms with semantic technology; this particular form doesn’t use Wikipedia data but IMDB data from the Linked Movie Database.
The semantic web is really about the combination of tools and data.
Michael and several speakers from other tracks had come to the semantic web track with a reasonable question on their minds: what does this set of tools offer them that other sets of tools don’t? A flippant response to his question about XQuery would be “if the data had been available in XML? That’s an awfully big if!” A better answer would be that while some people focus on the tools, and others on the (linked) data, the semantic web is really about the combination of tools and data. If IMDB offered an SQL interface to their data, I could use that to list all the actors who’ve worked with two particular directors, but that too is a very big if. A SPARQL endpoint seems to be the most popular way to expose machine-readable data these days, even if the underlying data is relational. The Linked Movie Database offers the data in a SPARQL endpoint, so SPARQL is the query language for retrieving this information, and the sending of the query and the display of the results were easy with a CGI script.
So the answer to the question “what does this set of tools offer that other sets of tools don’t” is this: lots of great data to query, not to mention easy ways to convert other data formats for use by these tools. If you want to combine this data from multiple sources from across the web and from behind your own firewall, the ease with which the underlying data model lets you aggregate data is another big advantage. So, tools plus data plus ease of aggregation are what the semantic web has to offer, and that’s quite a lot.
A similar application from a friend of mine: http://10k.aneventapart.com/Uploads/310/
Totally agree on the need for more semantically aware apps, where the goal (the application) is the key, and not the means (the semantic technologies).