If you execute the agenda function before any rules are
defined then you will not see any activations. This seems
to be the case you have shown in your example ... not too clear since
your syntax is incorrect:
Rule 1 (
)
is NOT Jess syntax. I expect you meant
(defrule
I'm don't know how JessTab actually instantiates Jess but if it
creates a Main object and calls the main method then I believe you could
(assuming you have access to the Jess source code) modify the Jess
Main class (Main.java) as follows:
1. add the line
import nrc.fuzzy.jess.*;
2. chang
One last kick at this question ...
Perhaps you could convince the JessTab authors to include the option to
use the FuzzyRete object in JessTab. By default it could use the Jess
Rete object but with the presence of a command line switch or a configuration
setting it would use the FuzzyRete object.
After a bit of investigation I found the code in JessTab that connects to Jess.
It is in the JessTabEngine class.
/**
* Create and initialize the Jess engine.
* @param name the name (label) for the engine
*/
public JessTabEngine(String name) {
engine = new Rete();
I didn't run your program but I did notice that many of your rules
are dependent on an absence of a 'repair' fact. Since you appear to
retract the repair fact, these rules will fire again. You should
'watch rules' or 'watch all' to see what is happening ... it will
tell you exactly why the rules a