University of Malta

Department of Computer Science and A.I.


James Scicluna

OWL-S Editor
to Semantically Annotate Web-Services

Introduction

The Semantic Web vision, as expressed by Tim Berners-Lee, is an extension of the current Web in which machines can comunicate between them by providing semantic meaning to Web Content they provide. The World Wide Web Consortium together with other affiliate organisations, is periodically providing standards and markup languages by which semantics can be provided to web content. Such markups include the Resource Description Framework (RDF) and the Web Ontology Language (OWL). An extension to OWL is the OWL Services (OWL-S) markup language (based on DAML-S) which is used to semantically describe a Web-Service.

Although many tools and APIs that help creating semantic web content are available, there is still the need of creating new tools to address specific areas. In particular, the aim of this project is to create an editor tool which will help the un-experienced user and/or programmer to create an OWL-S description for a Web Service.

The current version of the Owl-S Editor can be downloaded from here. We welcome any feedback related to how the tool was used and how effective it was to solve your particular needs. Let us know so that we can improve the tool. Thanks

Overview
The tool is divided into three main parts:
  1. Creator
  2. Validator
  3. Visualiser

The creator enables to create an empty OWL-S description either from a template or through a wizard called "OwlsWiz" which accepts an input WSDL and extracts partial information from it to create a basic OWL-S description. The work of the wizard is based on Massimo Paolucci's et al's work in WSDL2OWLS, although we had to write an API to perform such a transformation as it was not available for download. The OwlsWiz is being given the greatest focus as it's aim is to provide the user with the tools needed to create an OWL-S description in the least amount of time possible and without exposing the user to the (at times) complex structures comprising OWL-S.

The validator part will enable to check if the URIs used in the OWL-S description are valid and also validate the syntax of the ontologies. The Visualiser part enables the user to visualise the descriptions in a graphical manner and also to print out a hard copy of the OWL-S description.


OwlsWiz

The core of the OWL-S Editor tool is a wizard which will enable a user to complete an OWL-S description from a WSDL file. The wizard is carried out on a step by step basis in such a way that each OWL-S Ontology can be completed visually.

 


Where necessary, the user is asked to enter specific information that will enrich the OWL-S description.  An example of such a situation is in the profile step where the information needed can only be obtained from the user.  Such information includes a full human-readable name of the service, a textual description illustrating the service's capabilities, business contact information and quality of service ratings.  Contact information is expressed through an adapted vCard ontology by defining the properties defined in pure OWL rather than RDF.  The screen shot below shows how the wizard presents the user an interface through which such information is entered.

 

The heart of the OwlsWiz is the "Visual Composer". This tool is used during the Process Ontology building where it permits to compose the atomic processes extracted from the WSDL in a drag-and-drop style using standard UML Activity Diagrams. This type of diagramming technique enables to create a workflow using many features needed in composite web services, including:

  • Dataflow
  • Decisions
  • Concurrency

This tool is still under development and will be extended in the future to support all of the control constructs defined in the Process Ontology of OWL-S. Till now, the constructs supported are Sequence, If-Then-Else and Split. When the user completes the ordering information of the composite process, the tool generates automatically the markup by recursively traversing the tree structure in a a top-down approach and using the underlying API in order to create the markup.  The Grounding ontology is fully generated. Thus the final step only shows the mapping constructed between the Process Model Inputs and Outputs to those in the source WSDL file.

 


Verification 

The verification subsystem is integrated with the general tool.  The underlying engine is the Jena API which validates the ontologies both from the syntax and integrity point of views.  Also, we've adopted the ARPServlet source code enabling the tool to generate a directed graph of the OWL-S ontologies .  Optionally, the user may also extract a table of triples rather than a graph.  We are also working on providing the user with the option of choosing parts of ontology to display, so that he can focus more on certain parts rather then others.

 


Conclusion

This tool is written in Java and you can download a self-extracting file of the current version from here. The OWL-S Editor is an ongoing project and as such there are features which require improvement. For example in this implemented version of the Visual Composer, we included the representation of Logical Expressions and Dataflow in the Process Model ( through the DRS and SWRL ontologies) which are not totally consistent with the ideas presented in OWL-S 1.1. We tried to provided simple solutions such as a minimal use of the DRS and SWRL logical formula expressions, but with  the possibility of extending our tool to handle future additions.  Future work will also include a slight re-design in the underlying engine to  support WSDL files with XSD Complex Types definitions. At the moment it is assumed that a simple WSDL with simple atomic XSD datatypes will be fed to the wizard. 

A final note is that although there are already ontology building tools, we think there is still the need for a tool targeting solely OWL-S defined Web Services. Through such Web Service descriptions, the notion of an ontology is given more importance, since  OWL-S enriches service descriptions  with preconditions and effects and also allowing for reasoning to be performed . 

Any queries and/or suggestions regarding this tool are more than welcome and can be e-mailed to:

James Scicluna: james.scicluna@deri.org.
and
Charlie Abela:


Related Publication


J.Scicluna, C.Abela, M.Montebello,Visual Modelling of OWL-S Services, submitted at the IADIS International Conference WWW/Internet, Madrid Spain, October 2004, (abstract)