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-macroscontains Scala macros used throughout the other subprojects.reasoner-kernelcontains the implementation of the core algorithm and data structures.reasoner-owl-apicontains the implementation of the OWL API bindings.reasoner-clicontains the implementation of the command-line interface of the reasoner.reasoner-protege-plugincontains 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.