Alignment API: Libraries

# Alignment API: Libraries shipped with the package (release 4.0)

The Alignment API uses a number of external libraries. These libraries are shipped (in the lib directory) with the Alignment API. Each subdirectory of the lib directory contains version.txt and license.txt files which indicates what version are embedded and what are its conditions of use.

We provide here the list of these libraries together with the reason why they may be necessary within the API and some other information.

Some of these libraries are necessary for recompiling the Alignment API. Some of them are only needed at runtime when invoking the feature that uses them. You may use this information for restricting the libraries to only the one you need.

Here is a picture of the various dependencies involved:

## Required for the API implementation (procalign)

Gnu getopt 1.0.13: getopt.jar [BSD/GPL]
  Gnu library for parsing command line arguments. Required everywhere (included by OWL-API).
Apache Log4J 1.2.15 & Jakarta Commons Logging 1.1.1: log4j.jar commons-logging.jar [Apache] slf4j-api.jar (1.5.6) slf4j-log4j.jar [MIT license]
  Required by OWL-API, jwnl, Jena for the last two ones... if someone could clear the mess with loggers in Java, you are welcome!

### Required for using EDOAL

Jena 2.6.2: jena.jar icu4j.jar iri.jar arq.jar [BSD*]
  Provides the RDF parser (which is also used by Pellet).
Xerces 2.9.1: xercesImpl.jar resolver.jar xml-apis.jar [Apache]
  Required by Jena for parsing international characters.

### Required for some bundled matching methods

OntoSim 2.0: ontosim.jar [LGPL]
  The whole ontosim system requires more libraries, including JWNL. But in our simplest behaviour, these libraries are not needed.

### Required for the WordNet addition (JWNLAlignment)

In addition to OntoSim, JWNLAlignment requires JWNL.

JWordNet (JWNL) 1.4rc2: jwnl.jar [BSD]
  This also requires WordNet to be installed in the computer.

### Required for reasoning with alignments

IDDL 1.3-20100325: iddl.jar [LGPL]
  In turns it requires Pellet.
Pellet 2.0.2: aterm-java-1.6.jar pellet-core.jar pellet-jena.jar pellet-owlapiv3.jar [LGPL]
  In turns it requires Jena, Jetty, etc.

## Required for parsing ontologies (ontowrap)

Ontowrap requires one of these libraries to be functional. It will only compile if all of them are available. However, it is possible to delete the subdirectories `src/fr/inrialpes/exmo/ontowrap/xxxx` and this will compile again.

OWL API 3.0: owlapi-bin.jar [LGPL]
  Provides parsing and API to OWL entities. Used by OWLAPIAlignments. api.jar is required for compiling, the others are necessary for executing parts of the Alignment API which need the OWL API.
OWL API 1.4.3: rdfapi.jar rdfparser.jar api.jar impl.jar io.jar [LGPL]
  Provides parsing and API to OWL entities. Used by OWLAPIAlignments. api.jar is required for compiling, the others are necessary for executing parts of the Alignment API which need the OWL API.
Jena
  is also an option.

## Required for the Alignment server (alignsvc)

MySQL JDBC Connectors 5.1.12: mysql-connector-java-5.0.3-bin.jar [GPL] or Postgres JDBC connectors 8.4.701 [BSD]
  This also requires MySQL to be installed. Required for alignsvc.
Jetty 6.1.2rc5: jetty.jar jetty-util.jar [Apache]
  This also requires MySQL to be installed. Required for HTML and web service part.
Servlet API 2.5: servlet-api.jar [Sun Binary Code License]
  Required and shipped with Jetty. This is part of Java 2 Enterprise Edition

### Required for the Agent/JADE plug-in

Java Agent Development Environment (JADE) 3.7: jade.jar http.jar iiop.jar [LGPL]
  Required by alignsvc (Agent version).

### Required for the Web service plug-in

### Required for the P2P/JXTA plug-in