http://herzberg.ca.sandia.gov/jess
Jess is a fast, lightweight rule engine and scripting environment for
Java developed by Ernest Friedman-Hill at Sandia National Laboratories.
The latest version adds a number of new APIs and frequently-requested
features. From the change log:
Code cleanup: remove unused return value from
callNodeLeft/Right, add Context argument to
callNodeLeft/Right, and remove ThreadLocal Rete.s_engines and
static Rete.getEngine() method. When any fact, shadow or not,
is modified, either from Jess, from the Java API, or from a
Bean event, a single FACT | MODIFIED event will be
generated. Many of the built-in package classes are no longer
public. Added Rete.updateObject and (update). Added
Rete.modify(). Added Rete.watch(), unwatch(). (watch facts)
reports modify again. max-background-rules declaration added
to defquery. Javadoc coverage improved. Fixed ppdeftemplate
handling of default-dynamic (thanks Ross Judson.)
Jess is available for commercial licensing and is free for academic use.
Contact Craig Smith, cas...@sandia.gov, for prices and licensing terms.
A trial version is also available at the Jess web site.
As usual, comments and questions are welcome at ejf...@ca.sandia.gov.