Please restate your problem, correcting (see below)...

On 14/02/2013, DOLECEK Ales <[email protected]> wrote:

> rule "Remove unsued phones"
>       when
>               exists Customer()
>               not Customer(phone == $value)
>               $unused: Phone($value: value)
>       then
>               retract($unused);
> end

Provide the accurate code of your rule. This one isn't correct, since
use of $value precedes its definition....


>
> There might be multiple Customer and Phone facts in the working memory and
> the purpose of the rule is to remove phones that do not belong to any of the
> customers. The rule should not be activated while there are no Customers in
> WM - hence the "exists Customer()". This is becaus there are other rules,
> taht might use the phones to lookup customers.
>
> There Phone with value = "test" in working memory when Customer with phone =
> "test" is inserted. BTW: Both facts are immutable.

Please provide a more accurate description, preferably (correct &
working) Java code.

-W

>
> The behavior differs depending on order of the 3 patterns in the LHS of the
> rule.
>
> 1) If the "exists Customer()" is first activation is created
>       - this is wrong since the "exists Customer()" shall be false
>
> 2) if I move the "exists Customer()" between the other patterns activation
> is created and immediatelly canceled
>       - this is also wrong since, although in my case (where are no side 
> effects)
> it works
>
> 3) Finally if the "exists Customer()" comes last the then activation is not
> created at all
>       - this is correct
>
> Is this bug or am I missing something important about rule language?
> Rewriting the LHS with expicit infix and does not help:
>
>               (exists Customer()) and
>               (not Customer(phone == $value)) and
>               ($unused: Phone($value: value))
>
>
> Ales
>
> FYI: I'm using 5.5.0.Final
> _______________________________________________
> rules-users mailing list
> [email protected]
> https://lists.jboss.org/mailman/listinfo/rules-users
>
_______________________________________________
rules-users mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/rules-users

Reply via email to