The wiki is now available again. However, some recent changes may not have been restored.
Please see Computing Services' blog post for more details
Skip to end of metadata
Go to start of metadata

OWLSBuilder is a library for building OWL-S service descriptions from java web services. The library supports the generation of service ontology descriptions from annotated java classes in much the same way as JAX-WS does for conventional web services.

Underlying services must be described according to JAX-WS conventions, these services can be deployed in any compatible JAX-WS container (e.g. CXF , AXIS2, Glassfish etc).

The tool supports the generation of OWL-S service descriptions (including profiles, atomic processes, and (currently WSDL and Java) groundings).

OWLSBuilder can be run in two modes: on-line or off-line. In on-line mode, it is deployed on the Apache CXF web service framework, and service descriptions can be generated on the fly for services deployed with OWLSBuilder annotations. Off-line mode is a simple command line interface which takes a compiled service with the appropriate annotations, and outputs a service description: it allows for loading ontologies from a local directory, making it of running truly off-line.

Getting the software

The sotware and source package is available from sourceforge:

Required dependencies:

You need to get:

  • apache-cxf 2.2.x
  • Owl-s API 3.0 (you need our modified version for WSDL groundings to work)
  • JAX-WS (2.1 works, 2.0 (bundled in java 6) might not)
  • ALIVE service repository tools > 0.2.5

all of the required dependencies can be checked out of SVN here:

To compile, edit and, set dep.dir to the location of the above jars, and cxf.dir to the root of the CXF directory.


  • "Fixed" Owl-S API: The library uses the OWL-S API v3.0 while working on the plugin we discovered a number of minor bugs, while they are being fixed in the main line please use our version of the library. The changes do not effect the interface.
  • Qualified namespaces:
    The OWL-S API and the generated groundings require that soap body elements are qualified by a namespace, this is not the case by default in JAXB, to fix this add the following to the in your service classes:
  • No labels