liveontologies / elk-reasoner

A Java-based OWL 2 EL reasoner
Apache License 2.0
95 stars 25 forks source link

ELK Reasoner

Maven Central Version License Build status

A Java-based ontology reasoner for the OWL 2 EL profile.

For a detailed information, see the project wiki.

Features

ELK is an ontology reasoner implementing a polynomial-time goal-directed consequence-based procedure for a fragment of OWL 2 EL.

Its distinguishing features include:

Concurrent computation:

ELK can take advantage of multi-core processors to speed-up the computation of reasoning results.

Incremental reasoning:

ELK can update the reasoning results incrementally after changes in the ontology by only re-computing the reasoning results that depend on the changed axioms. In many cases, reasoning results, such as ontology class hierarchy, can be updated almost in real time

Generation of explanations:

ELK can explain logical consequences of ontologies by showing how consequences are derived, step-by-step from the axioms of the ontology:

Explaining why American is a CheesyPizza

Usage

ELK is provided in several distribution packages for different use-cases:

Stand-alone application

A stand-alone command-line Java application can perform selected reasoning tasks with a given ontology. E.g., the following command classifies the Pizza ontology and saves the result in another file:

java -jar elk.jar -i pizza.owl -c -o pizza-taxonomy.owl

OWL API

A library for the OWL API implementing the OWLReasoner interface. See an example how to perform queries using an OWL reasoner. Both versions 4.x and 5.x of OWL API are currently supported. To use the ELK OWL API library, include the following maven dependency to your project:

<dependency>
  <groupId>io.github.liveontologies</groupId>
  <artifactId>elk-owlapi</artifactId>
  <version>0.6.0</version>
</dependency>

Protégé

We provide a reasoner plug-in for the Protégé Desktop ontology editor, which can be installed from within the editor. See the general documentation about how to work with ontologies and use reasoners in Protégé.

License

ELK is Copyright (c) 2011 - 2024 Live Ontologies Project.

All sources of this project are available under the terms of the Apache License 2.0 (see the file LICENSE.txt).