The plug-in provides a feature rich User Interface (UI) consisting of a Command Line Interface (CLI), a text-based console, and other graphical controls to interact with the embedded CLIPS engine. The user interface functionality of the CLIPSTab was modeled around CLIPSWin (CLIPSWin is the standard Windows client for CLIPS ) and implements most of the features supported by CLIPSWin.
command line interface: provides a simple textual interface to write and execute CLIPS commands. The results of the execution are displayed in the console window and can be logged into a text file through a dribble facility. The commands entered by the user are kept in an easily accessible command history and can be referred to at any point. The plug-in also supports loading CLP, batch and binary files into the CLIPS Engine, and saving the current constructs in text or binary formats.
Construct Managers: let the user manage various constructs in CLIPS. These UI components are used to manage rules, deffacts, classes, definstances, etc. There is a special Construct Manager for managing the current agenda, which can be used to selectively fire activations, remove particular activations from the agenda and reorder the activation sequence based on the current execution options. This will help users to study the different conflict resolution strategies and their impact on the agenda.
Runtime Environment Features: The tab provides graphical controls to manage different execution options provided by the CLIPS engine. This include facilities for changing the conflict resolution strategies, salience-evaluation behavior, constraint checking, etc. CLIPSTab allows provides graphical controls to use the CLIPS Watch Functionality. The CLIPSTab allows watches to be assigned to events related to different aspects of the rule engine to activate tracing. The result of the trace is shown on the console window. These watches can prove to be a very handy facility for debugging.
External Access to the CLIPS Engine: CLIPSTab provides the required infrastructure to utilize the embedded CLIPS engine functionality. It allows other plug-ins to access the instance of the engine through public interfaces. They could then interact with the engine. It also lets other Java components add themselves as Observers (by implementing the Observer interface) and in turn sends the console output to all registered listeners.
Ontology Import: CLIPSTab allows for the import of current knowledge base defined in Protégé into the engine. The conversion between the Protégé classes and instances and the corresponding CLIPS structures is done by mapping each Protégé class through a ‘defclass’ construct and defining the instances using the ‘definstances’ construct. Only instances of (:STANDARD-CLASS) are imported during this conversion, while meta-classes and corresponding objects are ignored.
Download CLIPSTab's Source here. This contains both Java code and C/C++ implementation for JNI wrappers.
Installation
Note: This version of CLIPSTab only works with Windows Platform.
The zip file contains clipstab.jar and ProtegeCLIPSInterface.dll. Place the clipstab.jar file in your Protégé plugins directory. Place the ProtegeCLIPSInterface.dll in either Protégé directory or in C:\WINNT\system32.
Last update: v0.6Beta, 21 October 2003.
At the moment there is no documentation on usage of the tab. Any user comfortable with CLIPS and CLIPSWin should find it easy to use.
The javadoc documentation for source can be accessed here. Documentation is present for CLIPSRuntime class, the class implementing the interface to CLIPS engine.