13.
Release Notes
13.1. About this release
Jess 6.1p8 is a minor bugfix release.
Jess 6.1p7 contained a fairly major change in the way concurrent
access to the engine is handled. Most users shouldn't notice
a difference, except those using rule salience in a
multithreaded program. This last category of users should find that
salience is now more "meaningful" under these conditions. Other
users may notice improve liveness characteristics.
13.2. Important changes in Jess 6.1
These are a few of the many things that changed between Jess 6.0 and
6.1 that are of particular interest. Also see the change log for more information.
-
The unique CE has been removed. For the
time being, the parser will accept but ignore it.
If your program depended on unique for
correct operation, it may need to be rewritten.
Note that the manual has always discouraged use of
unique for anything other than
optimization.
-
The assert method in the Rete
class is deprecated; use Rete.assertFact()
instead. assert will be removed in the
first post-6.1 release.
-
Nested conditional elements. Jess 6.1
supports full, arbitrary, and correct nesting of
and, or, and not
conditional elements.
-
logical facility Java interface.
There is now a public Java API (in the
jess.Rete class) to the logical
dependency facility. There are also two Jess
functions, dependencies and
dependents, that give you logical
information about a specific fact.
-
updateObject method. You can call
jess.Rete.updateObject() to notify Jess that
the properties of a static definstance have changed.
13.3. Porting from Jess 5 to Jess 6
Jess 6 introduces many new features, but it is mostly backwards
compatible with Jess 5. This section lists a few specific areas
where Jess 5 applications may need to be changed to work with
Jess 6.
13.4. Past problems now fixed
The issues in this list were dealt with during the 6.1
development cycle and aren't problems any more.
-
breadth conflict
resolution strategy.
Both built-in conflict-resolution strategies are
now correct under all circumstances. Recall that
the order of firing of rules activated by the same
fact, with the same salience, is arbitrary. You
may now also notice slight differences in this
arbitrary ordering compared to previous versions
of Jess.
-
Backwards chaining during
run-query
You can now control how many rules can be fired
during The run-query using the
max-background-rules declaration.
-
Performance issues
The performance issues with earlier 6.1 alpha versions of
Jess have been fixed. Jess 6.1 is faster than Jess
6.0 on many problems.
-
Classloader issues
The Jess library now works perfectly if you
install jess.jar as a standard extension under
Java 2, including loading user classes.
The manual doesn't yet mention any of this class
loader stuff.
-
Defclass and Deftemplate inheritance
defclass and
deftemplate constructs can inherit from each other
to the extent that this makes sense.
Back to index