[rules-users] Iterating two collection in LHS

Edson Tirelli tirelli at post.com
Mon Feb 2 19:11:23 EST 2009


   Since Drools language is FOL equivalent, any FOL logic expression can be
represented.

rule "city has unlucky males"
  where
     $c : City()
     exists(  $m : Male( $age : age ) from $c.maleList and
                 not( Female( age ==$age ) from $c.femaleList ) )
  then
     // $c has unlucky males
  end

   []s
   Edson

2009/2/2 techy <techluver007 at gmail.com>

>
> Thanks Edson.
>
> Is there way to find City() where if least one unlucky male is found using
> current object structure.
>
>
> Edson Tirelli-3 wrote:
> >
> >    You should really insert your males and females into your working
> > memory
> > instead of having them as nested lists only. Anyway:
> >
> > rule "unlucky male"
> > where
> >     $c : City()
> >     $m : Male( $age : age ) from $c.maleList
> >     not( Female( age ==$age ) from $c.femaleList )
> > then
> >      // $m is unlucky, no female with the same age
> > end
> >
> >    []s
> >    Edson
> >
> >
> > 2009/2/2 techy <techluver007 at gmail.com>
> >
> >>
> >> Hello,
> >>
> >> Please help me to implement following rule in drool. I could not find a
> >> way
> >> to iterate two collection using accumulate or collect in LHS.
> >>
> >> public Male{
> >>  int age;
> >>  //other fields
> >>
> >> }
> >>
> >> public Female{
> >>  int age;
> >>  //other fields
> >>
> >> }
> >> public City{
> >>
> >>  private List<Male>  maleList;
> >>  private List<Female> femaleList;
> >>
> >> }
> >>
> >> #Rule to get all Male whose age != any of female's
> >> rule "Get Unlucky Male"
> >> when
> >>        city : City()
> >>        maleList : ArrayList() from collect ( Male( his age = any of
> >> Female's age  from city.femaleList  ) from city.maleList)
> >> //consequence
> >> end
> >> --
> >> View this message in context:
> >>
> http://www.nabble.com/Iterating-two-collection-in-LHS-tp21796713p21796713.html
> >> Sent from the drools - user mailing list archive at Nabble.com.
> >>
> >> _______________________________________________
> >> rules-users mailing list
> >> rules-users at lists.jboss.org
> >> https://lists.jboss.org/mailman/listinfo/rules-users
> >>
> >
> >
> >
> > --
> >  Edson Tirelli
> >  JBoss Drools Core Development
> >  JBoss, a division of Red Hat @ www.jboss.com
> >
> > _______________________________________________
> > rules-users mailing list
> > rules-users at lists.jboss.org
> > https://lists.jboss.org/mailman/listinfo/rules-users
> >
> >
>
> --
> View this message in context:
> http://www.nabble.com/Iterating-two-collection-in-LHS-tp21796713p21801175.html
> Sent from the drools - user mailing list archive at Nabble.com.
>
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>



-- 
 Edson Tirelli
 JBoss Drools Core Development
 JBoss, a division of Red Hat @ www.jboss.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/rules-users/attachments/20090202/e8eec5e4/attachment.html 


More information about the rules-users mailing list