Wednesday, March 14, 2007

Introducing Semantic Web Services

In last few posts I was concentrating mostly on Web Services and what they are not. Last night I was reading and Article Approximate Reasoning and Semantic Web Services and there I happen to read about what it takes to create a Semantic Web Services. According to one of many definitions the Web Services can be described as systems with a number of features:
  1. They are identified by a Uniform Resource Identifiers (URI)
  2. Their public interfaces and bindings are defined and described using XML;
  3. Their definitions can be discovered by other software systems;
  4. Other systems may interact with the Web Services in a manner prescribed by their definitions using XML-based messages conveyed by Internet protocols.
The proposed definition of the new concept Semantic Web Services has few changes and enhancements when compared with the definition of the Web Services. Semantic Web Services are system that:
  1. Are identified by a URI.
  2. Whose public interfaces, bindings, some behaviour and various other features are defined and described using Semantic Web language. The Semantic Web Language here refers to OWL, DAML-S etc.
  3. Their definitions and other descriptions can be discovered by other systems.
  4. Other systems may then reason about and interact with the semantic web services in a manner guided by their definitions using xml-based messages conveyed by internet protocols.
In the light of those definitions, it can he stated that the biggest advantage of the Semantic Web Services is their flexibility. The interacting system do not have to know everything about each other before they start interaction. They "learn" about their specifics and behaviour at the time they interact. The concept of Ontology and its application to represent information ahout data and services give such capabilities. Each service in the fiamework of the Semantic Web Services is represented by:
  1. Profile ontology, called ServiceProfile, is a description of a service.
  2. Model ontology, ServiceModel, is a description of a process itself and its composition.
  3. Grounding ontology, called just Grounding, describes mapping of service elements to WDSL messages.
This is the first of the many posts yet to come related to Semantic Web Services. Keep watching this space for more on this topic in days / weeks / months to come.

Until Next Time...:)