EN FR
EN FR


Section: Software

Alignment API: manipulating ontology alignments

Participants : Jérôme Euzenat [Contact] , Jérôme David, Cássia Trojahn dos Santos.

We have designed a format for expressing alignments in a uniform way . The goal of this format is to be able to share available alignments on the web. It should help systems using alignments, e.g., mergers, translators, to take advantage of any alignment algorithm and it will help alignment algorithms to be used in many different tasks. This format is expressed in RDF , so it is freely extensible, and has been defined by a DTD (for RDF/XML ), an OWL ontology and an RDF Schema.

The API itself [3] is a Java description of tools for accessing the common format. It defines five main interfaces (OntologyNetwork, Alignment, Cell, Relation and Evaluator) and proposes the following services:

  • Storing, finding, and sharing alignments;
  • Piping matching algorithms (improving an existing alignment);
  • Manipulating alignments (thresholding and hardening);
  • Generating processing output (transformations, axioms, rules);
  • Comparing alignments.

We provide an implementation for this API which can be used for producing transformations, rules or bridge axioms independently from the algorithm which produced the alignment. The proposed implementation features:

  • a base implementation of the interfaces with all useful facilities;
  • a library of sample matchers;
  • a library of renderers (XSLT, SWRL, OWL, C-OWL, SEKT mapping language);
  • a library of evaluators (various generalisation of precision/recall, precision/recall graphs);
  • a library of wrapper for several ontology API ;
  • a parser for the format.

To instanciate the API , it is sufficient to refine the base implementation by implementing the align() method. Doing so, the new implementation will benefit from all the services already implemented in the base implementation.

We have developed on top of the Alignment API an Alignment server that can be used by remote clients for matching ontologies and for storing and sharing alignments. It is developed as an extensible platform which allows to plug-in new interfaces. The Alignment server can be accessed through HTML , web service (SOAP and REST ) and agent communication interfaces.

This year, within the SEALS project (see § 8.2.1 ), we have developed a flexible test generation framework within the Alignment API which allows for generating new evaluation datasets [12] .

The Alignment API is used in the Ontology Alignment Evaluation Initiative data and result processing. It is also used by more than 30 other teams worldwide.

The Alignment API is freely available since december 2003 under the LGPL licence at http://alignapi.gforge.inria.fr