The SWRLJessTab is a plug-in to the SWRLTab in Protege-OWL that supports the execution of SWRL rules using the Jess rule engine. It provides a graphical interface to interact with the SWRLJessBridge. (BLH)
Installation (6RJ)
The SWRLJessTab is part of Protege-OWL and does not need to be downloaded separately. Since many of the SWRLTab components are under active development, the most recent Protege-OWL release should be used when possible. (9W3)
The SWRLJessTab requires that the Jess rule engine is installed. Information on installing Jess can be found here. If Jess is not installed the SWRLJessTab will display an error when it is activated. (BJ9)
Activation (6QN)
When the SWRLTab is activated, the SWRL Editor will display a list of icons for plugins that have registered themselves with the SWRLTab. These icons will be displayed on the top right of the SWRL rules table. The Jess tab is activated by pressing the "J" icon. (6QO)
When it is pressed, the SWRLJessTab will be displayed within the SWRLTab in a window under the SWRL Editor. (7GD)
If the tab successfully loads the Jess rule engine, it will display a series of tabbed sub windows that can be used to interact with Jess. If it fails, an error message will be displayed indicating that the Jess rule engine was not found. The installation instructions above describe how to install the Jess rule engine so that the SWRLJessTab can find it. (6QP)
Pressing the "J" icon again will hide the tab and deactivate the Jess rule engine. Note that when the tab is deactivated, the associated rule engine is deactivated too so all state that it may hold will be lost. (6RC)
Interacting with the SWRLJessTab (6RD)
The interaction between OWL and the Jess rule engine is user-driven. The user controls when OWL knowledge and SWRL rules are transferred to Jess, when inference is performed using those knowledge and rules, and when the resulting Jess facts are transferred back to Protégé-OWL as OWL knowledge. The paper "Supporting Rule System Interoperability on the Semantic Web with SWRL" gives a high-level overview of this process and describes how SWRL rules and OWL knowledge are represented in Jess. (6QQ)
The SWRLJessTab has eight tabbed subwindows that can be used to control and review this interaction. The primary tab is the Jess Control tab, which provides the control functionality. It provides a status window to display a record of the interaction between the user and Jess and three buttons to control the knowledge transfer and inference process. (6QS)
The button marked "OWL+SWRL->Jess" will transfer all SWRL rules and appropriate OWL knowledge to the Jess rule engine. The status window will indicate the number of rules and OWL classes, properties, and individuals that have been transferred. Pressing the button again will clear all previously transferred knowledge in Jess and will reinitate the transfer process. (6QT)
The "Inferred Axioms" sub tab in the SWRLDroolsTab can be used to examine the OWL axioms that have been transferred to Drools. (CIR)
The "Run Jess" button can then be pressed to initiate the inference process. When pressed, Drools will run its inference engine and possibly generate new knowledge. This inferred knowledge can be reviewed in the "Inferred Axioms" subtab. (CIS)
At that point, this inferred knowledge can be passed back to OWL by pressing the "Jess->OWL" button. At the moment, this new inferred knowledge is not distinguished from asserted knowledge, as is the common practice with reasoner-inferred knowledge in Protege-OWL. We will be fixing this shortcoming in a later release. (8AU)
What reasoner does the SWRLJessTab use? (CJS)
As of the 3.5 release of Protege-OWL, the Jess tab uses an OWL 2 RL-based reasoner. The 'OWL 2 RL' subtab within the SWRLJessTab provides control of this reasoner. See here for additional details on this subtab. (CJT)
Where can I get the source code for the SWRLJessTab? (6UX)
The source code is available in the SWRL Jess bridge Subversion Repository. (6UY)
How can I build the SWRLJessTab? (B4A)
The SWRLJessTab can be downloaded from the SWRL Jess Bridge Subversion Repository. (CBT)
On the command line, with Subversion installed, something like the following should work: (CBU)
svn checkout https://smi-protege.stanford.edu/repos/protege/swrl-jess-bridge/trunk <your-destination-dir> (CBV)
In general, the trunk is under active development so downloading the code for a particular public release may be safer. The Subversion repository has a tags subdirectory containing the code for each numbered release. (CH0)
If using the trunk, it is advisable to download and build the latest version of Protege and Protege-OWL before building a new SWRLJessTab. These can be obtained at the Core Protege and OWL Subversion repositories. Instructions on how to build the SWRLTab can be found here. (B4B)
The root of the download directory has an Ant build file that can be used to compile and install it. An option called install can be used to perform an install. The installation step is expecting an existing Protege installation and determines its location using the PROTEGE_HOME environment variable. An example Protege installation directory could be C:/Program Files/Protege_3.5. It is also expecting a Jess installation directory containing jess.jar, which it locates using the JESSHOME environment variable. (B4G)