A Visual Environment for Developing Defeasible Rule Bases for the Semantic Web

VDR-Device is a visual integrated environment for developing (creating, editing, running, testing and deploying) defeasible rule bases for the Semantic Web. The following is a brief tutorial to get you started with the use and functionality of the VDR-Device system, accompanied by a number of screenshots, aiming at a better depth of understanding.

 *Please note that VDR-Device is still under development and, therefore, a number of its features require some “polishing”, while many more are planned to be added in future releases.

This tutorial covers the following aspects of VDR-Device:

·         The Main Window of the program

·         Creating a New Project

·         Opening an Existing Project

·         Namespaces in VDR-Device

·         Compiling & Running a Set of Rules


The Main Window of the Program

The main window of the program is composed of two major parts:

(a) the upper part includes the menu bar, which contains the program menus, and the toolbar that includes icons, representing the most common utilities of the rule editor, and

(b) the central and more “bulky” part is the primary frame of the main window and is in turn divided into two panels.

main window

The left panel displays the rule base in XML-tree format, which is the most intuitive means of displaying RuleML-like syntax, because of its hierarchical nature. The user has the option of navigating through the entire tree and can add to or remove elements from the tree. However, since each rule base is backed by a DTD document (compatible to RuleML v. 0.85), potential addition or removal of tree elements has to obey the DTD limitations. Therefore, the rule editor allows a limited number of operations performed on each element, according to the element's meaning within the rule tree.

The right panel shows a table, which contains the attributes that correspond each time to the selected tree node in the left-hand area. The user can also perform editing functions on the attributes, by altering the value for each attribute in the panel that appears below the attributes table on the right-hand side. The values that the user can insert are obviously limited by the chosen attribute each time.


Creating a New Project

Each new project created by VDR-Device determines a separate folder, dedicated for the storage of the rule base as well as the various relevant files created during compilation. The next time any of these files are needed, they can be directly loaded, improving speed considerably (running a compiled project is up to 10 times faster).

There are 3 types of new projects, depending on the location and type of the corresponding rule base: Projects with remote rule base, projects with local rule base and projects with blank rule base. If, for example, the former project type is selected, then the user has to input the project name and the location of the rule base in the dialog box that opens immediately afterwards:

creating a new project with remote rule base

VDR-Device loads the rule base and displays it in tree format in the left-hand frame. The project and rule base names are displayed in the upper part of the main window and the attributes of the rule base can be viewed and edited in the right-hand panel.


Opening an Existing Project

An existing project can also be accessed, by clicking on the respective icon in the toolbar and selecting the desired directory in the dialog panel that appears immediately afterwards. This results in the project rule base being loaded and displayed in the left-hand frame, as well as the relevant project and rule base names displayed in the upper part of the main window.

opening an existing project

Namespaces in VDR-Device

Another important aspect of the VDR-Device system is the namespace dialog window, where the user determines which RDF/XML namespaces will be used by the rule base. Namespace declarations are treated as addresses of input RDF Schema ontologies that contain the vocabulary for the input RDF documents, over which the rules of the rule base will be run.

the namespaces window


The namespaces entered by the user, as well as those contained in the input RDF documents are then analyzed, in order to extract all the allowed class and property names for the rule base being developed. These names are then used throughout the authoring phase of the RuleML rule base, constraining the corresponding allowed names that can be applied and narrowing the possibility for errors on behalf of the user.

As can be observed in the screenshot, the “rdf” and “rdfs” namespaces are already included in the namespace dialog window, indicating that the authoring of a VDR-Device rule base is compliant to the two aforementioned specifications. The user can, however, append as many additional namespace declarations as he/she wishes.


Compiling & Running a Set of Rules

When the project parameters have been set up and a valid rule base is created (or loaded), the user can compile and run the rules, in order to obtain a result. More specifically, the compilation of the rule base transforms the rules from the RuleML-like syntax of VDR-Device into CLIPS production rules, which are then executed by the reasoning system and an output is produced. The exported results as well as the execution trace of the compilation and running processes can then be displayed to the user.