As an alternative, use different classes for the parameter containers. There
could be one called Ssn (just ssn), one SsnCitizen, etc.
SsnCitizen( $ssn : ssn, $citizenship : citizenship )
Person( ssn = $ssn, citizenship == $citizenship )
Be careful, though, and DO NOT make SsnCitizen a subclass of Ssn. The
parameter classes you use must be on the same inheritance level.
-W
2011/10/20 Michael Anstis <michael.anstis(a)gmail.com>
The same principle applies, but instead of inserting a single SSN
container, you insert a generic "parameters" container:-
rule "rule 1"
when
Parameters( rule == "rule 1", $ssn : ssn, $citizenship : citizenship )
Person( ssn = $ssn, citizenship == $citizenship )
then
....
If your parameters are more generic Parameters could contain a Map instead
of explicit parameters and change the Person pattern accordingly.
It'd be good to be able to extract the rule name in the LHS, but I don't
think this is possible (anybody?)
Cheers,
Mike
On 19 October 2011 22:35, bharath87 <craze.stuff(a)gmail.com> wrote:
> Hi Michael,
> Thanks for your reply... consider the situation where there
> are lot of rules each of which might or might not have unique input
> contraints..
>
> for e.g.
>
> rule "Rule1"
>
> when
> Person ( ssn == "input1" )
> then
> .....
>
> end
>
> rule "Rule2"
>
> when
> Person ( ssn == "input2" and citizenship ==
"inputCountry" )
> then
> .....
> end
>
> In the above scenario the ssn input for Rule1 differs from the ssn input
> for
> Rule2, if i use SSN() facts i will have the rules fire for each ssn facts
> present in the working memory.
>
> what do i do?
>
> --
> View this message in context:
>
http://drools.46999.n3.nabble.com/externalization-of-input-constraints-in...
> Sent from the Drools: User forum mailing list archive at
Nabble.com.
> _______________________________________________
> 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