I'm not quite sure if I understand your question. Could you write out the
rule(even pseudo-code if necessary), or the something as to try and clarify
what you are trying doing?
On Wed, Dec 31, 2008 at 11:38 AM, Maxim Veksler <maxim.veksler(a)gmail.com>wrote:
Hello Again David / List,
I should have probably mentioned that I'm working with Drools 3, I'm not
sure how or "if" this can be implemented in Drools 3 syntax. I've tried to
search Drools 3 documentation and googled for this.
Currently I'm using contains with first finds the age groups then follows
to find the matching Campaing but as I already know what campaign I'm
checking and my intention is to check if this campaign can accept this age
group I would like to reverese the search order...
Ideas are very welcome.
Happy new year everyone !
On Sun, Dec 21, 2008 at 10:20 PM, David Sinclair <
dsinclair(a)chariotsolutions.com> wrote:
> u almost had it. This should do it.
>
> Subscriber($age : age)
> Campaign($campaignAgeRangs : listOfAgeRangeCodes)
> AgeRange(minAge <= $age, max >= $age, code memberOf $campaignAgeRangs)
>
> As far as performance, i would think the former would be faster. This one
> will look at all campaigns regardless if they have an AgeRange that matches.
> The former just looks for an AgeRange, then joins back to the Campaign.
>
> dave
>
>
> On Sun, Dec 21, 2008 at 2:18 PM, Maxim Veksler <maxim.veksler(a)gmail.com>wrote:
>
>> Thank you very much for the fast and accurate reply David,
>>
>>
>> Is it also possible to use the opposite positioning?, something like:
>>
>> Subscriber($age : age)
>> Campaign($campaignAgeRangs : listOfAgeRangeCodes)
>> AgeRange(minAge <= $age, max >= $age, $campaignAgeRangs contains code)
>>
>>
>> Please don't try the above as this tries to create a field extractor for
>> $campaignAgeRangs on the AgeRange object which fails for obvious reasons..
>>
>> I would like to to filter first by Subscriber, then by Campaign and last
>> by age range. This is obviously a simplification of the actual filtering
>> rules.
>>
>>
>>
>> On Sun, Dec 21, 2008 at 7:28 PM, David Sinclair <
>> dsinclair(a)chariotsolutions.com> wrote:
>>
>>> Subscriber($age : age)
>>> AgeRange(minAge <= $age, max >= $age, $code : code)
>>> Campaign(listOfAgeRangeCodes contains $code)
>>>
>>> On Sun, Dec 21, 2008 at 12:17 PM, Maxim Veksler <
>>> maxim.veksler(a)gmail.com> wrote:
>>>
>>>> Hello,
>>>>
>>>>
>>>> The dataModel is as following:
>>>>
>>>> class AgeRange() {
>>>> Integer code;
>>>> int minAge;
>>>> int maxAge;
>>>> }
>>>>
>>>> Campaign() {
>>>> List<Integer> listOfAgeRangeCodes;
>>>> }
>>>>
>>>> Subscriber() {
>>>> int age;
>>>> }
>>>>
>>>> AgeRange()'s and Campaign()'s are pre-populated into the WM.
>>>> Subscriber() is asserted right before fireAllRules is called.
>>>>
>>>> I need a rule that would allow me to check if Subscriber() is within
>>>> one of the defined on the Campaign() AgeRange()'s.
>>>>
>>>> What would be the most efficient way to enforce this constraint?
>>>> The other possibility I see is to store the list of AgeRange()'s in
>>>> each Campaign() and then use eval() to iterate over the list...
>>>>
>>>>
>>>> Advice and ideas are appreciated.
>>>>
>>>>
>>>> Thank you,
>>>> Maxim.
>>>> --
>>>> Cheers,
>>>> Maxim Veksler
>>>>
>>>> "Free as in Freedom" - Do u GNU ?
>>>>
>>>> _______________________________________________
>>>> rules-users mailing list
>>>> rules-users(a)lists.jboss.org
>>>>
https://lists.jboss.org/mailman/listinfo/rules-users
>>>>
>>>>
>>>
>>> _______________________________________________
>>> rules-users mailing list
>>> rules-users(a)lists.jboss.org
>>>
https://lists.jboss.org/mailman/listinfo/rules-users
>>>
>>>
>>
>>
>> --
>> Cheers,
>> Maxim Veksler
>>
>> "Free as in Freedom" - Do u GNU ?
>>
>> _______________________________________________
>> rules-users mailing list
>> rules-users(a)lists.jboss.org
>>
https://lists.jboss.org/mailman/listinfo/rules-users
>>
>>
>
> _______________________________________________
> rules-users mailing list
> rules-users(a)lists.jboss.org
>
https://lists.jboss.org/mailman/listinfo/rules-users
>
>
--
Cheers,
Maxim Veksler
"Free as in Freedom" - Do u GNU ?
_______________________________________________
rules-users mailing list
rules-users(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users