Sigh. I guess I'll be testing the beta. Any estimate of when it will be out?
> -----Original Message----- > From: Geoffrey Wiseman [mailto:[EMAIL PROTECTED] > > Seems to be DROOLS-430 <http://jira.codehaus.org/browse/DROOLS-430>. > > On 11/20/05, Michael Neale <[EMAIL PROTECTED]> wrote: > > > > I have been out of the loop for the past few weeks, but I believe a > > bug was found in the xor group feature, which has been fixed and > > should be out with > > "2.5". Perhaps this is showing the bug... (can't remember > the jira off the > > top of my head). > > > > -----Original Message----- > > From: Karr, David [mailto:[EMAIL PROTECTED] > > > > I think I understand salience, but I still don't understand > > xor-groups. From what I thought I understood, what I > described doesn't > > match your description, particularly related to your > statement "then > > the other rule will not as it is in the same XOR group". In my test > > case, it executed the consequence for both rules in the same > > xor-group. How does that jive with your statement? > > > > Perhaps my misunderstanding about this has to do with what "fire" > > means. I thought this referred to the checking of the > parameters and > > conditions on a rule. Your statements seem to imply that's not the > > case. > > > > > -----Original Message----- > > > From: Michael Neale [mailto:[EMAIL PROTECTED] > > > > > > Salience "2" will fire first, as salience is priority > (numerically). > > > XOR means that once rule with salience 2 fires, then the > other rule > > > will not as it is in the same XOR group. > > > > > > Salience and XOR have no direct interaction, you only > need salience > > > if order of firing is important (order of firing > > > *consequences* of course - it is hard to predict when conditions > > > will be evaluated). > > > > > > Make sense? (ie what you described is to be expected). > > > > > > -----Original Message----- > > > From: Karr, David [mailto:[EMAIL PROTECTED] > > > > > > I just tried to set this up in a prototype, and I must be > > > misunderstanding something about xor-group, because it > didn't work > > > the way I expected. > > > > > > I defined two rules, both of which would match the input based on > > > their parameters and conditions. I set the first one to > salience "1" > > > and the second to "2". I set them both to have the same xor-group > > > value. In my consequence, I just added a print statement, > so I would > > > know which one it matched. > > > > > > What I saw is that it matched both rules, and it matched the one > > > with salience "2" first. > > > > > > What do I have to do to have it match only a single rule (or > > > none) in an xor-group? > > > > > > > -----Original Message----- > > > > From: Michael Neale [mailto:[EMAIL PROTECTED] > > > > > > > > No if salience (priority) is not set, then it is not > necessarily > > > > as simple as top to bottom in the XML (as I am sure you read > > > in the doco > > > > on it). > > > > > > > > If you care about the order in the xor group, you need to > > > set salience > > > > accordingly. > > > > > > > > If you have very special needs for ordering, you can write > > > and plug in > > > > your own conflict resolver of course. > > > > > > > > -----Original Message----- > > > > From: Karr, David [mailto:[EMAIL PROTECTED] > > > > > > > > So are you saying that rules definitely fire (checking > > > > conditions) in the order they are in in the XML, > ignoring for the > > > > moment any conflict resolution settings (like > salience)? If that's > > > > the case, then that might give me what I need, if I order the > > > > rules in order of priority in each xor-group. > > > > > > > > > -----Original Message----- > > > > > From: Michael Neale [mailto:[EMAIL PROTECTED] > > > > > > > > > > No the ordering works over the whole ruleset with nothing > > > to do with > > > > > xor grouping. > > > > > > > > > > The rules inside an xor group would follow the ordering of > > > > rule firing > > > > > of the whole rule set, the xor group having no effect on > > > > this (the xor > > > > > group simply only allows one of the rules to fire). > > > > > > > > > > -----Original Message----- > > > > > From: Karr, David [mailto:[EMAIL PROTECTED] > > > > > > > > > > > -----Original Message----- > > > > > > From: Geoffrey Wiseman [mailto:[EMAIL PROTECTED] > > > > > > > > > > > > On 11/19/05, Karr, David <[EMAIL PROTECTED]> wrote: > > > > > > > I'm trying to figure out how I can make only one rule > > > > in a set of > > > > > > > rules fire, and have it check the rules in a > certain order. > > > > > > > > > > > > > > I see that using the "xor-group" attribute deals with the > > > > > > "only one" > > > > > > > part, but I'm not sure how to specify the order it checks > > > > > > the rules in > > > > > > > an xor-group. Is that what "salience" is for? In a > > > > > > > particular xor-group, will the rule with the highest > > > > > > > salience be > > > > > checked first? > > > > > > > > > > > > Salience is a factor, yes; that's the easiest way > to control > > > > > > the firing of rules. There's a page on the Drools site > > > about Conflict > > > > > > Resolution that should help clarify somewhat. > > > > > > > > > > Yes, I saw that section. I wasn't certain from that > > > > exactly what the > > > > > semantics would be in the context of xor-groups. > > > > > Would the saliency ordering in a particular xor-group be > > > completely > > > > > independent of the saliency ordering in a different > > > xor-group, even > > > > > for identical saliency values across xor-groups? > > > > > > > > > > I want to use salience within xor-groups because I want > > > each rule in > > > > > an xor-group to have a condition which checks to see > whether a > > > > > particular code value "isPresent()" in a list, but each > > > particular > > > > > code value has a "priority", so I'll set the salience for > > > > that rule to > > > > > the priority for the code value.
