[rules-users] Problem with RuleFlow: Split

Kris Verlaenen kris.verlaenen at cs.kuleuven.be
Tue Sep 23 08:33:58 EDT 2008


>     I have a condition on an attribute of a few inserted objects(all of
> same type) in the Split node of a ruleflow.
Basically rules that are used inside split nodes are evaluated exactly the 
same way as normal rules.

> The condition looks like:  Author( attribute == -1 )
> and it holds for all objects if at least one of them has the attribute set
> to -1. If none of them is -1 only then
> the condition is not satisfied.
That is indeed correct: you could translate your condition as "if there 
exists an author with attribute equal to -1".  This is not a bug and 
actually is expected behaviour.

It is unclear to me what behaviour you are actually expecting here?  Do you 
want to execute the RuleFlow for each author object separately? If so, you 
should probably start the ruleflow for each author object and use a variable 
to store the reference to that one specific author (e.g. add the authorId as 
a parameter when starting the process, where this authorId can then be 
referenced in eval constraints in your process).

> A solution I can think of is to insert objects one by one and fire all 
> rules
> after every insertion and retract object every time you fire.  Will it be
> inefficient? I can potentially have 10s of thousand of such objects.
I suggest you try to create a proof-of-concept solution that can be used to 
evaluate performance.  Based on those results, giving advice on how to 
improve performance will be a lot easier.

Kris 




More information about the rules-users mailing list