Welcome to the official repository for Sequoia!
Sequoia is an ontology reasoner that supports OWL 2 DL ontologies. Sequoia can be used from the command line, through the Protégé plug-in, or via the OWL API.
Feel free to fork this repository and submit pull requests.
If you discover a bug, please report it here on GitHub.
Sequoia is free and open-source software that is licensed under the GNU GPL v3 only.
Note: To compile Sequoia you will need JDK 8 installed. Compiling with Java 9 is not supported at this time.
- Datatypes are not supported.
- Neither nominals nor ABox assertions are supported.
- SWRL rules are not supported.
The following publications describe the algorithms and implementation of Sequoia.
-
Andrew Bate‚ Boris Motik‚ Bernardo Cuenca Grau‚ František Simančík, Ian Horrocks. Extending Consequence−Based Reasoning to SRIQ. In Principles of Knowledge Representation and Reasoning: Proceedings of the Fifteenth International Conference. Pages 187–196. AAAI Press. 2016. (Main reference on Sequoia)
-
Andrew Bate‚ Boris Motik‚ Bernardo Cuenca Grau‚ František Simančík, Ian Horrocks. Extending Consequence−Based Reasoning to SRIQ (Technical Report). arXiv:1602.04498 [cs.AI]. February, 2016.
-
Andrew Bate‚ Boris Motik‚ Bernardo Cuenca Grau‚ František Simančík, Ian Horrocks. Extending Consequence−Based Reasoning to SHIQ In Proceedings of the 28th International Workshop on Description Logics. Vol. 1350 of CEUR Workshop Proceedings. CEUR−WS.org. 2015.
Sequoia is developed by Andrew Bate and is actively maintained.
To build Sequoia, you will need SBT installed on your system.
The Sequoia reasoner is comprised of multiple subprojects:
reasoner-macros
contains Scala macros used throughout the other subprojects.reasoner-kernel
contains the implementation of the core algorithm and data structures.reasoner-owl-api
contains the implementation of the OWL API bindings.reasoner-cli
contains the implementation of the command-line interface of the reasoner.reasoner-protege-plugin
contains the implementation of the Protégé plugin.
To compile all subprojects and run all tests in a single command, first clone this repository,
and then from the root directory, type sbt test
. The tests will take several minutes to complete.
From the root directory, type sbt
to launch the SBT REPL. Then type project cli
and hit Enter, followed by universal:packageBin
and hit Enter.
From the root directory, type sbt
to launch the SBT REPL. Then type project protegeplugin
and hit Enter, followed by osgiBundle
and hit Enter.
Previous versions of Sequoia were developed at the Knowledge Representation and Reasoning group at the Department of Computer Science of the University of Oxford.