You're right, if you want to do this with 2 facts, you'll need to do : $test : Test( $y : y ) Test( this == $test, x == ($y + 1) )
Chris 2008/5/2 Raffi Khatchadourian <[EMAIL PROTECTED]>: > On Fri 2.May'08 at 10:05:20 +0100, Anstis, Michael (M.) wrote: > > > The "when" section matches fact (object) patterns, so your requirement > > could be written as:- > > > > when there is a Test Fact 'A' and another Test Fact 'B' where "the 'x' > > property of 'A'" equals "the 'y' property of fact 'B' plus 1" then..... > > > > This would become:- > > > > rule "Rule 1" > > when > > Test( $y : y ) > > Test( x == ($y + 1) ) > > > > Actually, please correct me if I am mistaken, but is this condition > correct? I believe that the original question is that for a single > instance of class Test t, fire the rule when t.x == t.y + 1 (where 't' > refers to the *same* instance of class Test). I believe the rule above > would match any instance of class Test whose x value is equal to the > value of the instance field y from *any* instance of class Test plus 1. > Does that make sense? > _______________________________________________ > 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
