simple
rule x:
if
a = 5
b = 3
c != 0
then
c = 0
keep in mind that using negation NOT means that condition does not exist. In
other words, if I have this rule
rule y:
if
a = 5
b = 3
not c = 0
then
c = 0
rule y means a is 5, b is 3 and no c is zero. Say i assert 100 objects to
the working memory and 1 of them has c = 0. it means rule y would never
fire, since there is a fact that satisfies "not c = 0".
hope that helps
peter
On 2/27/07, Premkumar Stephen <prem18(a)gmail.com> wrote:
Hi Dev team,
Its been fascinating to watch the growth of this tool. Here is my
question:
Rule x:
if
a = 5
b = 3
then
c = 0
Now, I have written this rule to run when a = 5 and b =3. But actually, I
would like it to ideally run when a = 5 and b = 3 and c != 0
Now, does the second scenario lead to any savings. In Ilog, the second
scenario will result in the rule NOT being added to the agenda whereas it
would in the first.
I cannot code the second scenario into the rule as the rule ( as seen in
UI) needs to match the requirements version ( in Doors) and they do not want
to add these to the requirements. I would just like to make the second
version for performance. We have noticed that less number of rules would
fire.
Now, if a = 5, b = 3 and c = 0, is there a way Drools can look at it and
say, let me not fire this rule since there is no practical use anyways.
If not, what are the ways to automate not firing rules in scenarios where
action does NOT cause updates to data.
Thanks!!
_______________________________________________
rules-dev mailing list
rules-dev(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev