JessTab: Integrating Protégé and Jess

JessTab is a plug-in for Protégé that allows you to use Jess and Protégé together. It gives you the best of both worlds. JessTab provides a Jess console window where you can interact with Jess while running Protégé. Furthermore, JessTab extends Jess with additional functions that allows you to map Protégé knowledge bases to Jess facts. Also, there are functions for manipulating Protégé knowledge bases from Jess.

Using JessTab, you can develop programs that manage Protégé knowledge bases directly, and you can write rules that fire on patterns in the knowledge base. It is possible to use JessTab as an object-oriented extension to Jess by defining Protégé classes and instantiating them. Because, Protégé has explicit metaclasses you can map them to facts as well and perform pattern matching on properties of classes.

The most recent version of JessTab is 1.7. The recommended environment for JessTab is Jess version 7.0 or later and Protégé version 3.4 or later. (It may work with somewhat earlier versions of Jess and Protégé, but is has not been tested with them.)

New in version 1.7 (May 14, 2010)






Jess console window in Protégé.

The Jess fact inspector in Protégé.

Jess definition editor in Protégé.


Download and installation

As of Protégé version 3.1, JessTab is part of the full Protégé distribution. Just enable the tab under Project -> Configure and follow the instructions. Note that Jess itself is not part of the distribution. You must install Jess manually to be able to run it.

It is possible to download the latest version of the JessTab the download area. You should put the JessTab.jar file in the plugins/JessTab directory under the Protégé installation. The file should go in the same directory. Furthermore, you need to obtain and possibly compile Jess if you do not have it already. Jess must be available in the plugins/JessTab directory. The JessTab documentation provides additional installation instructions.



Avoid doing (mapclass owl:Thing) under OWL, because JessTab will map all the hidden RDF/OWL classes as well, which may result in a large amount of unwanted Jess facts and stability problems. For the same reason, avoid mapping metaclasses and metaproperties under OWL. Use an intermediate subclass of owl:Thing and map this class instead.


Source code

The source code for JessTab is available for download (maintained as a Subversion repository).


Author and contact information

Henrik Eriksson, Dept. of Computer and Information Science, Linköping University.

(Send bug reports and requests for features here.)


Last edited: 2010-05-14 10:08 +0100