December 9, 2007

Defining How An Application Can Be Semantic

There seems to be quite a bit of confusion about the different meaning "Semantics" can have in computer science - as you can see for example from read Read/Write's 10 Semantic Apps to Watch; an interesting article but one that starts with a nonsensical classification of Semantic applications into 'top down' and 'bottom up'. So - an attempt to give a better classification of the different ways in which an application can be 'Semantic'.

A Semantic application is one that tries to improve some computing task by explicitly considering the meaning and context of the symbols it is manipulating. This is still very nonspecific, but will become clearer when we consider the four ways in which this can be instantiated:

  1. Semantics as in "The Semantic search engine Powerset". These approaches use natural language processing  techniques to give context to words in texts; e.g. to understand that a string "SAP" in a document refers to the company as opposed to a striver.
  2. Semantics as in "The lowercase semantic web". These approaches try to build the web of data by using machine understandable markup and establishing information interchange formats; e.g. by embedding <a  href= "http://technorati.com/tag/SemanticWeb" rel="tag"> in this page I can associate it with the topic Semantic Web; in this way give this document some context. I've used microformats for this example, but many applications of RDF are Semantic is this sense.
  3. Semantics as in "The Semantics of OWL 1.1" - these approaches define the meaning of symbols by associating them with a mathematical theory that exactly defines what follows from any collection of symbols.
  4. Semantics as in "Semantic Portal". These approaches use technologies that allow to flexibly represent data without a fixed schema; technologies such as RDF that make it easy to represent diverse data that is interconnected in a myriad ways. Twine is an example for an application that's semantic (mainly) in this sense, TripIt and Freebase as well.

(and yes, many applications are semantic in more than one sense).

Labels:

1 Comments:

Blogger Kingsley Uyi Idehen said...

I certainly can comprehend your breakdown, but I would also like to add some additional attributes to this concept of "Semantic Web" applications:

1. Semantic Web application are Data Web Applications
2. Data Web Applications have to expose data graphs woven together via URIs
3. The URIs have to be dereferencable via HTTP otherwise, we are not really talking about the Web Platform and it's inherent architecture

Thus, 1-3 bring us to Linked Data as a critical determinant of Semantic Data Web vitality.

BTW - How many applications, today, provide the ability to cost-effectively expose data conceptually via dereferencable URIs?

As a simple example, http://dbpedia.org showcases what that this is all about, but somehow missed a list that includes Freebase. The same applies to the corpus of Linked Data that's growing exponentially thanks to the Linking Open Data (LOD) effort [1].

Document linking is well understood in the Document Web realm. In the emerging Semantic Data Web realm, on the other hand, many of the commentators and vendors continue to struggle with the concept of openly interlinking Data (Linked Data) via dreferencable URIs.

Maybe, I have to continue to describe and qualify myself as a Semantic Data Web practitioner of the tribe: Linked Data :-) And the same may have to apply to Semantic Web application classification.

Links:

1. http://esw.w3.org/topic/SweoIG/TaskForces/CommunityProjects/LinkingOpenData

December 09, 2007  

Post a Comment

<< Home