The Semantic Web, Semantic Web Services and more…

Posts Tagged ‘Semantic Web Services’

Service Ontologies

Posted by Aditya Thatte on December 10, 2008

Ontologies classifying and describing services are called service ontologies. The existing WSDL interface describes a service by specifying operation name, inputs required, output of the service and its target address for invocation. Human intervention is required in this loop since the current architecture only addresses the syntactical aspects of Web services and lacks choreography mechanisms.

Service ontologies supplements the WSDL interface, adding knowledge required to enable automatic discovery, invocation and composition of web services. The idea is to annotate web services, enabling the automation of the web service life cycle.

The existing conceptual models for describing services are OWL-S, WSMO, WSDL-S, SWSF, SAWSDL.

For example, the OWL-S service ontology is classified into three categories : profile, model, grounding as shown in the diagram. The service component is actually an instance of the service and is linked to the profile, model, grounding by different properties. The profile is an advertisement of what the service does i.e what the service offers in terms of functionality. It considers input, output, preconditions, effects ( IOPE ).

The input specifies the actual input required for invoking the web service, output specifies the actual output the client gets or expects. Preconditions indicates the conditions that need to be satisfied for the successful execution of the web service. The effect describes the state of the web service after its execution.

The service model describes how the service works in order to achieve its functionality. It describes atomic processes, composite processes and the message choreography involved in invoking the web service. Atomic processes are the ones, that undergo straight forward execution requiring standard input, whereas composite processes are the ones which involve combination of different services.

Service grounding illustrates as to how the service can be accessed.It describes the network protocols, data exchange formats, required to invoke the web service.

Like OWL-S, the other models also address the semantic nature of web service descriptions thereby making an effort to automate the web service life cycle.

Posted in Semantic Web | Tagged: , | Leave a Comment »

Motivation : Semantic Web Services

Posted by Aditya Thatte on December 3, 2008

The aim of the Semantic Web is to enable machines or software systems understand information (resources) on the web and apply reasoning techniques on it to achieve specific goals.Applying Semantic web technologies to the Web services architecture introduces the concept of “Semantic Web Services”.


The current Web services architecture follows the Publish, find, bind paradigm involving human (manual) intervention to a certain extent.Web services are ofcourse exposed via an interface and published in a registry. The client looks up the registry and binds to the relevant service provider and invokes the service by exchanging some messages. The following slide shows the current Web service life cycle.
Semantic Web Services (SWS), aims at enabling automatic
discovery, invocation, composition and mediation of web services, all of which are otherwise done manually as of today. Semantic Web applications can be created by using “services” from the web services architecture. At the heart of the semantic technology reside ontologies and agents who are responsible for representing knowledge and perform reasoning on that knowledge respectively.
The idea of using SWS is to automate the entire web service life cycle.

Semantic Web Services Scenario

A booking agency wants to book airplane tickets for a customer to find the best deal : A software agent acting on the behalf of the agency is provided with the details of the journey like source , destination , first class seats ,price( discount offered) etc. The software agent looksup the registry of available service providers and selects one on based on the details mentioned above.The agent visits different providers to check airfare details, using negotiation algorithms to select the best deal (service provider).Based on the best deal offered, the ticket will be booked automatically.However, the issue of trust will play a vital role in the design of such an application.
Certain assumptions that the application will have the credit card number of the customer are made, which ofcourse depends on the design of the application.
The complexity of the application will depend on the granularity of the services.Semantic Web applications are developed using composite services. The key to effective discovery, invocation and composition of services includes critical discovery mechanisms, negotiation algorithms, composition techniques.Such services are identified by service ontologies. Service ontologies equips itself with knowledge which supplements the WSDL interface. These ontologies advertise the service, describe its behavior and protocols used to access the service. Currently there are 2 standards of specifying ontology services, viz. OWL-S, WSMO.

In case of OWL-S, agents require the OWL-S specification of the service as well as the client query in the form of an OWL-S template , specifying parameters like input,output, pre-conditions and effects ( IOPE ) to enable automation of the web service life cycle.

Semantic web applications deals with complexities, at the same time making applications “smarter”, reducing human intervention. Ideal scenarios of using Semantic web services would be in the areas of B2B and B2C transactions.

Posted in Semantic Web | Tagged: | Leave a Comment »