[Download] [Tutorial] [Technical Details]

Distributed Reasoner for Aligned Ontologies (DRAOn)

DRAOn is a reasoner which offers inference services for a network of aligned ontologies. It uses the OWL API to manipulate ontologies, the Alignment API to manipulate alignments, and HermiT reasoner for checking locally consistency of ontologies and alignments. The main feature of DRAOn is to perform reasoning in a distributed way over a network of aligned ontologies. The distributed behavior implemented in DRAOn is founded on IDDL (Integrated Distributed Description Logics). Details on this formalism can be found in Technical Report, Paper and first API.

DRAOn implements the following inferences:

Specific features

The current version (1.5)

In this version we implement optimizations for reducing the number of configurations to be considered and for improving communication protocol between global and local reasoners. In addition, entailment services for the IDDL semantics are available for some kinds of concept axioms.


We have developed and implemented in this version new techniques whose behaviour is more goal-oriented than those implemented in early versions. The main ideas are:

Distributed Reasoning

The inference services supporting the IDDL semantics are parallelized and implemented in a distributed way in this version. When defining a network of aligned ontologies, a global reasoner and several remote local reasoners are created. The global reasoner uses threads to manage communication between the remote reasoners and itself. We have to use sockets to establish the communication between global and local reasoners instead of OWLLink. This is due to effciency question and an intrinsic characteristic of IDDL. The readers can find more details about this here.

Entailment Services

Instead of allowing for disjointness axioms in alignments, we implement entailment services by using the fact that the entailments $O_i \cup A \models C(a)$ and $O_i \cup A \models C \sqsubseteq D$ (we use $O_i$ to denote a set of ontologies, $A$ to denote a set of alignments, C(a) to denote that individual $a$ is an instance of class $C$, $C \sqsubseteq D$ to denote that $C$ is a subclass of $D$) can be achieved by propagating disjointness axioms to alignments and non-emptiness axioms to local ontologies. We refer the readers, who are interested in technical details, to this document where a deeper discussion can be found.


You can download DRAOn, uncompress the file DRAOn.zip obtained and execute the following command from a command line (Linux, Windows or Mac):

$ ant compileall

You can use directly iddl.jar from a Java programme.

How to call inference services offered by DRAOn from a Java programme

The most important reason for which we implement DRAOn in Java is portability. A Java programme can call directly the inference services implemented in DRAOn via its native interface. A tutorial is avaiable to show how to use this interface via examples.


$IUT de Montreuil, Universite de Paris8 $