Clone this wiki locally
The OWL API
Planning to upgrade to version 5? List of changes that need to be made to migrate from versions 4 here.
Planning to upgrade to version 4? List of changes that need to be made to migrate from versions 3.4 and 3.5 here.
Looking for support? Subscribe to OWLAPI mailing list.
Alternatively, raise an issue and mark it as a question here on GitHub on the Issues page. You can also ask questions on StackOverflow and mark them with
owl-api, and the same can be done on answers.semanticweb.com.
The OWL API is a Java API for creating, parsing, manipulating and serialising OWL Ontologies. Version 3.1 and newer ones are designed for OWL 2
The OWL API is released under a dual license mode: LGPL and Apache. Both licenses are Open Source.
The following components are included:
- An API for OWL 2.
- an in-memory reference implementation for this API.
- RDF/XML, OWL/XML, OWL Functional Syntax, Manchester OWL Syntax, Turtle, KRSS and OBO Flat file parsers and renderers - extended in version 4 to also use the RIO parsers.
- Reasoner interfaces for external reasoners.
Reasoners known to support these interfaces and relative factory classes:
- FaCT++ (
uk.ac.manchester.cs.factplusplus.owlapiv3.FaCTPlusPlusReasonerFactory, version 4 support imminent) FaCT++ 1.6.3 works with OWLAPI 4, although it was released before 4.0.0 was released.
- HermiT (
org.semanticweb.HermiT.ReasonerFactory, version 4.1.3 support here, version 5.0.0 support here) This is a fork whose purpose is to allow compatibility with 4.1.3 and 5.0.0.
- Pellet (
com.clarkparsia.pellet.owlapiv3.PelletReasonerFactory, version 4 support available) This is a fork of Pellet whose express purpose is to provide compatibility with OWLAPI 4.0.2.
- JFact (
uk.ac.manchester.cs.jfact.JFactFactory, version 4 support ready) Download version 4.0.3 from Maven Central. Version 5 support ready Download version 5.0.0 from Maven Central.
- Chainsaw (to be built manually)
- TrOWL (
eu.trowl.owlapi3.rel.reasoner.dl.RELReasonerFactory, version 4 support plans unknown)
- MORe (
org.semanticweb.more.MOReRLrewReasonerFactory, version 4 support plans unknown)
- ELK (
org.semanticweb.elk.owlapi.ElkReasonerFactory, version 4 support ready)
- Snorocket (
au.csiro.snorocket.owlapi.SnorocketReasonerFactory, version 4 support ready) The latest master is compatible with OWLAPI 4.0.2.
Note that the information on this list is incomplete and might change without notice: most of these reasoners are developed by third parties. Version 4 support might work out of the box for a few of them, because the
OWLReasoner interface has not changed, but we have not tried all of them. The reasoners marked with imminent and possible are reasoners for which an OWLAPI 4 version can be built by checking out the linked repositories.
The original version of the OWL API for OWL 1.0 was developed as part of the WonderWeb project.
Version 3.0.0 was developed primarily at the University of Manchester.
More recent versions, starting with 3.3.0, are maintained by Matthew Horridge, currently in Stanford, and Ignazio Palmisano, currently a visiting fellow at Manchester University. Version 4 has seen also significant contributions by Peter Ansell and Simon Spero. Many contributions and bug fixes have also been provided by the OWL API users community, which can be found on the OWLAPI mailing list.
Other contributors include:
- Clark & Parsia LLC which contributed explanation and modularity code.
- University of Ulm which contributed KRSS2 syntax parser and renderer.
Version 4.2.3 and 5.0.1 are the current main version of the OWL API.
If you have a pet peeve or a great idea you'd like to share, please do so :-) fill in an issue or email the list with your proposal. Or, implement the change you would like to see in the API and issue a pull request.
The OWL API development is supported by various toolmakers:
YourKit is kindly supporting Open Source projects with its full-featured Java Profiler, and free licenses were provided to the OWL API developers. YourKit, LLC is the creator of innovative and intelligent tools for profiling Java and .NET applications.
Some of the OWL API developers are proud to use IntelliJ IDEA
... while others are happy with Eclipse.