daml4jess: A Rewrite of DAMLJessKB

Latest Version: daml4jess 1.0b
Status (v1.0b): Moderately tested, being used in my project.
Last Updated: October 24, 2003

A Brief Summary

daml4jess is a rewrite of DAMLJessKB. Just like DAMLJessKB, daml4jess enables DAML inference using Jess, the Java Expert System Shell. It has two basic parts: a Java package and a set of Jess rules. The Java package is used to break a DAML document into Jess facts and insert into Jess; the set of Jess rules implement the DAML semantics in Jess. Together they support the reasoning in DAML with Jess.

You must have asked, why rewrite? Well, DAMLJessKB is an excellent tool, but it doesn't have some of the features that my project needs. Some features it does support don't work well in my specific situations.

Here is a (partial) list of the daml4jess features:


Right click daml4jess to save (download).

To install, just un-jar the jar file downloaded, put the top level directory on your CLASSPATH. Read the readme.txt to find more information on how to play with it - there is not much, for now. You'll need to have Jess and Jena installed in order to use daml4jess. Contact me if you have any issues.

API Documents

Related Resources



  1. The core of daml4jess is the Jess rules that are used to implement the DAML semantics. These rules are direct translations of DAMLJessKB rules and therefore all the credits should go to the author(s) of DAMLJessKB.
  2. In the daml4jess package (Java part), you may still see traits of DAMLJessKB but it's substantialy different (and arguably, better).
  3. This package is being pushed out earlier than planned because of the interests from some users. As a result, the package is not quite polished and some necessary documents are not in place.
  4. There is every intention that this package will be supported and updated.

For more information, suggestions, and bug report, please contact xluan1@cs.umbc.edu