[rules-users] foreach in drl file
Joe White
Joe.White at recondotech.com
Mon Feb 16 18:51:22 EST 2009
Phil,
Take a look at the manual and look for the "forall" LHS conditional element if you can pass all of your objects individually. Or if you must pass your items into WM as a List then take a look at the "collect" LHS element examples.
In your example if you wanted to say "All Golfers have red pants" it would look something like
import com.sample.Golfer;
import java.util.List;
import java.util.ArrayList;
rule "test"
when
$list : List() //<--The list you use insert into working memory
ArrayList( size == $list.size) from collect (Golfer(pantsColor=="red") from $list)
then
System.out.println("HIT");
End
I didn't run it but you get the idea.
Joe
-----Original Message-----
From: rules-users-bounces at lists.jboss.org [mailto:rules-users-bounces at lists.jboss.org] On Behalf Of can_man at gmx.de
Sent: Monday, February 16, 2009 3:58 PM
To: rules-users at lists.jboss.org
Subject: Re: [rules-users] foreach in drl file
Hello,
> maybe you can tell us what you are trying to do? Are you talking about
> the RHS?
>
> --Ingomar
thank you for your reply. I would like to use a template drl file together with a java class. Both the LHS and RHS should contain variables, where the LHS should itterate over a collection in the "when" part.
So for example, in the golf example, I would like a foreach which itterates through a list in my java class, e.g. "Golfer", and addes the conditions in the collection to my rule with "ANDs".
rule "find solution"
when
// cut
Golfer(
@foreach{item : products}
- @{item.serialNumber}
@end{}
)
then
// do something
end
My problem is that I don't really know how to write the foreach syntax.
Hope this is clear.
Thank you.
Phil
> Am 16.02.2009 um 23:15 schrieb can_man at gmx.de:
>
> > Hello,
> >
> > I would like to itterate over a list in a drl template file, I
> > looked at http://mvel.codehaus.org/MVEL+2.0+Orb+Tags
> >
> > @foreach{item : products}
> > - @{item.serialNumber}
> > @end{}
> >
> > but I just can't get the syntax right. Could someone please post an
> > example drl file with a foreach.
> >
> > Thank you very much.
> > Phil
> > --
> > Jetzt 1 Monat kostenlos! GMX FreeDSL - Telefonanschluss + DSL
> > für nur 17,95 Euro/mtl.!* http://dsl.gmx.de/?
> > ac=OM.AD.PD003K11308T4569a
> > _______________________________________________
> > rules-users mailing list
> > rules-users at lists.jboss.org
> > https://lists.jboss.org/mailman/listinfo/rules-users
>
>
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
--
Jetzt 1 Monat kostenlos! GMX FreeDSL - Telefonanschluss + DSL
für nur 17,95 Euro/mtl.!* http://dsl.gmx.de/?ac=OM.AD.PD003K11308T4569a
_______________________________________________
rules-users mailing list
rules-users at lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users
More information about the rules-users
mailing list