[rules-users] Check if fact is subset of items in the rule

Kumar Pandey kumar.pandey at gmail.com
Wed Oct 13 09:45:05 EDT 2010


Michael
  Here are some examples

Rule1  has "str1", "Str2", "Str3"

Rule2 has "str2", "Str3", "Str5", "Str6", "Str7"

Rule3 has "str1", "Str3", "Str6"

etc.

With fact1 that has  "str1", "Str3" , since this is subset of values in
Rule1 and Rule3, they should not fire but Rule2 should fire

With fact2 that has "str2", "Str6", "Str7", Rule 2 should not fire and Rule1
and Rule3 should fire.

Hope this is clear.

Thanks
Kumar

2010/10/13 Michael Anstis <michael.anstis at gmail.com>

> Thanks, please provide a specific example rule too.
>
> Don't forget to keep your posts to the mailing list for the good of the
> community.
>
>
> On 12 October 2010 22:18, Kumar Pandey <kumar.pandey at gmail.com> wrote:
>
>> Michale
>>   Thanks for the response.
>> Here's the link for the thread .
>>
>>
>> http://drools-java-rules-engine.46999.n3.nabble.com/Check-if-fact-is-subset-of-items-in-the-rule-td1680013.html#a1680013
>>
>> and the original about matching strings in two arrays.
>>
>> http://drools-java-rules-engine.46999.n3.nabble.com/Matching-strings-in-two-arrays-td1602511.html#a1602511
>>
>>
>> My use case is that I could have hundreds of rule and each rule could have
>> its own set of strings.
>> A fact object is run through these rules to see which ones are fired.
>> One of the condition to check is that the a list in the fact is not a
>> subset of list in the rule.
>> That is fire the rule only if list in fact is not a subset of list in
>> rule.
>>
>> Thanks
>> Kumar
>>
>>
>> On Tue, Oct 12, 2010 at 12:38 PM, Michael Anstis <
>> michael.anstis at gmail.com> wrote:
>>
>>> OK, I admit I don't have the original thread anymore.
>>>
>>> If I am not wrong (which is always a possibility) for Wolfgang's operator
>>> to work you'd need to externalise the superset from the rule into
>>> WorkingMemory. You could have a rule with higher salience construct the
>>> superset WM fact.
>>>
>>> If you don't mind re-posting or providing a link to the complete thread
>>> (on Nabble or somewhere) I'll happily try to help further.
>>>
>>> On 12 October 2010 17:23, <kumar.pandey at gmail.com> wrote:
>>>
>>>> <quote author='Michael Anstis-2'>
>>>>
>>>> Wolfgang gave a great solution.
>>>> </quote>
>>>> Don't know if I'm missing something obvious here.  I have a superset in
>>>> the rule itself. Each rule has a superset list. In this case how would I use
>>>> Wolfgang's solution. Its comparing through two arrays in runtime. I have not
>>>> been able to construct an array construct with specific values in the rule
>>>> itself.
>>>>
>>>
>>>
>>
>>
>
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/rules-users/attachments/20101013/a3b20b36/attachment.html 


More information about the rules-users mailing list