Alignment API: Libraries shipped with the package (release 4.10)

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 Project Object Models (POM) which provide information about the version, license and dependencies for these libraries.

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:

This is a simplified view: click here for the full graph generated by Tattletale.

Required for the API implementation (procalign)

Commons CLI 1.4: commons-cli.jar [Apache]
Library for parsing command line arguments. Required for the command line use (cli package; included by OWL-API).
SLF4J 1.7.30: slf4j-api.jar log4j-over-slf4j.jar jcl-over-slf4j.jar [MIT license]
Java unified logging library!

Required for using EDOAL

Jena 3.16.0: jena-base.jar jena-core.jar jena-iri.jar jena-arq.jar jena-shaded-guava.jar [Apache]
Provides the RDF parser.
Xerces 2.12.1: xercesImpl.jar resolver.jar xml-apis.jar [Apache]
Required by Jena for parsing international characters.

Required for some bundled matching methods

OntoSim 2.6: ontosim.jar [LGPL]
The whole ontosim system requires more libraries, including JWNL. But in our simplest behaviour, these libraries are not needed.
Lucene 8.6.2: lucene-core.jar, lucene-analyzers-common.jar [Apache]
This small part of lucene is used for WordNet matching classes.

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

DRAOn 2.0: draon.jar [LGPL]
In turns it requires HermiT.
HermiT 1.3.8: hermit.jar [LGPL]
Provides OWL Reasoning. It requires the OWL API.

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.5.6: 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. Jena then requires the following libraries:
guava 18: guava.jar [LGPL]
The usual guava stuff.
Trove4j 3.0.3: trove4j.jar [LGPL]
An efficient collection implementation.
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.
is also an option. Required for parsing RDF files and in particular EDOAL alignments. Jena then requires the following libraries:
HTTP components client 4.5.12 and core 4.5.12: httcore.jar, httclient.jar, httpclient-cache.jar [Apache]
Providing components for HTTP negociation.
Thrift 0.13.0: libthrift.jar [Apache]
For interoperable data serialization.

Required for the Alignment server (alignsvc)

MySQL JDBC Connectors 8.0.21: mysql-connector-java.jar [GPL] or Postgres JDBC connectors 42.2.16: postgres-jdbc4.jar [BSD]
This also requires MySQL to be installed. Required for alignsvc.
Jetty 9.4.31: jetty-server.jar jetty-http.jar jetty-io.jar jetty-util.jar [Apache]
Required for HTTP management (HTML, REST, Web service).
Servlet API 3.1: servlet-api.jar [CDDL + GPLv2 with classpath exception]
Required and shipped with Jetty. This is part of Java 2 Enterprise Edition
Apache Commons fileupload 1.4, Commons compress 1.20, and Commons IO 2.7: commons-fileupload.jar, commons-compress.jar, commons-io.jar [Apache]
Required for uploading alignments and networks to the server.
gson 2.8.6: gson.jar [Apache]
JSON from and to Java converter.
Apache Commons Lang 3.11: commons-lang3.jar and Apache Commons Text 1.9: commons-text.jar [Apache]
Required for escaping strings for various formats (XML, JSON)

Required for the Agent/JADE plug-in

Java Agent Development Environment (JADE) 4.5: 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

Required for the OSGI plug-in

OSGi core framework 7.0.0: osgi-core.jar [Apache]
Required by alignsvc (OSGi version).