Thursday, February 22, 2007

Semantic Web and Semantic Web Services

Last night I was reading this paper from Hepp about Semantic Web Services (SWS). The paper tile is Semantic Web and Semantic Web Service: Father and Son or Indivisible Twins? This was published in IEEE Internet Computing March-April 2006.

While this paper starts with giving numbers about recent Semantic Web conferences in terms of attendees, industry participation etc. The best thing which I came across in this paper were the facts about Semantic Web and Semantic Web Services. In this post I am writing down what I learnt after going through this paper.

Myths about Semantic Web: While it is widely believed that the next generation of web will have the contents which can be interpreted by computers. The intelligent search engines will be based on meanings which will produce the search result as per the relevance not just the meta tag. This on one hand while looks promising it also is based on several myths:
  1. Everything is Available on Web: Many people today believe that all the information we need in todays world is available on World Wide Web. While this sounds true but far from being real. I come from India and there are many places one can visit and which is of historical importance. But there is almost none information available about them on web. Most of the hotels in the big cities like Bangalore, Delhi, Mumbai does not have the booking or enquiry facility on web. In Order to get any information about booking rate etc one has to pick up the phone and make few phone calls. And they are not 1-2, rather a majority of other businesses also have the similar kind of presence. They are known to locals and people who visit there quite often but they don't have any presence on web.
  2. The Business Systems, Web is not Stateless: A fully compliant web-application should not change its internal state as a result of a http read of an available data. In other words unless the transaction occurs the behavior of a web app should not change at all. But as per one survey almost all business applications do not comply to this standard in todays world. In business world, there is always scarce for resources and that drives the competition today. For example if an airline has say X number of seats for a special fare on some routes then if there are X+1 people querying at the same time the last person who runs the query does not get the discounted fare as the system thinks that the prices are not available at all. Note that its just query and the transaction is not made yet. This while represents the real world scenario, it puts a big question mark on the query results received by two people who are looking for the same thing at the same time.
  3. Annotation of Data Vs Annotation of Functionality: There are evidences of work being carried out to annotate dynamic web contents. But the hard reality is the data what is being generated on a web page comes from an underlying database. The business data is very volatile in nature and annotating that will never give a correct result. So annotating data is virtually impossible. But there is still something which can be done. A function can always declare what are its pre-condition, its logic (as what it does) and post-condition ie how the system's state will be affected as a result of function execution. This feature is already available and one can use Web Service Modeling Ontology(WSMO), OWL-S or Semantic Web Service Language to achieve the same. Also SparQL provides capability to query RDF databases.
  4. The Matchmaking Process: Well it has nothing to do with the matchmaking advertisements on the web these days :). In any industry all the data is not available to everyone. A car dealer never reveals what the best price they can offer on cash purchase. Same goes with any other business. The business never reveal all the secrets and offers on web because fear from competitors. Now this brings a problem in the system. Suppose a car dealer wants to give a 5% discount on cash purchase. Now when a customer is looking at prices on web he cannot find the option whether he/she wants to buy it outright (cash) or on finance. And he will have no clue about the best price he can get. Web in its current form cannot recognize whether the visitor making enquiry is a genuine buyer or just another visitor. This matchmaking process is too complex. It may sound simple in real world but a computer program doing it requires high degree of complexity built in it.
No Semantic Web Without Semantic Web Services: The time is coming where most of the businesses are publishing their services over web in form of Web-Services. This is a much cleaner approach than directly publishing data on the web. In order to transform web into a Semantic Web we need much more than just the static page annotation. We need a dynamic mechanism to retrieve the data based on the current context. Semantic Web Services are promising to provide that missing capability to the web. In todays world the number of materials available on web on semantic web is very less compared to Semantic Web. A Google Statistics for search results on different topics are listed below.
Semantic Web - 20,600,000
Semantic Web Services - 777,000
OWL Ontology - 150,000
OWL-S Ontology - 828
OWL-S Web Services - 230
WSMO - 245,000
WSMO Ontology - 589
WSMO Web Service - 841

These are the search results as of today when I performed the google search with whole search keyword within quotes.

What it indicates is that the number of research papers being published on Semantic Web Services is very less compared to Semantic Web. I guess this calls for research community to increase the participation in the field of Semantic Web Services. We as a research community should think about how we can make Semantic Web Service more reliable. What is the feasibility of Automated Discovery, Composition and Orchestration. Whether a lightweight option is available. It is not just any other AI research topic. The researchers also have to consider the market factor and how businesses operate in real world.

Until Next Time...:)