The following section will provide more details on rule (
.drl) syntax. It will form the basis for later examples.
A rule can contain many conditions/patterns. For example:
Account( balance == 200 ) Customer( name == "John" )
Code listing 5: Two rule conditions, one for type
Account and one for type
Drools will then try to match every
Account in the session in which the balance is equal to
200 with every
John. If we have three
Account objects that meet this criteria and two that don't, and five
Customer objects that meet this criteria and three that don't, it would create (3+2)*(5+3)=40 possible matches. However, only 3*5=15 of them would be valid. This means that a rule with these two conditions ...