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@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@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@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@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@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