I've been playing with the new Ruleflow stuff in 4.0MR2 - which
is cool - and it's raised a couple of questions and observations that I
hope other users can answer.
1. Is there a way of specifying a constraint(s) on a Split node.
I can see the Split node type property can be given an AND value, but
there seems to be no way of specifying which output connections(s)
should be traversed after the split. I quick peek at the source code
did reveal that the core ruleflow stuff seems to have constraint
attributes in the split node implementation, so is this still a
"Todo", or is there a way of specifying constraints in 4.0MR2 release?
2. Am I correct in assuming that a rule can only ever belong to
a single RuleFlowGroup node (i.e. ruleset), as the rules in a
RuleFlowGroup seem to be specified by a rules (single) ruleflowgroup
attribute? It appears that if you want to reuse a rule in another
RuleFlowGroup node in the ruleflow then you have to redefine a copy of
the rule and give it a different ruleflowgroup attribute. However, if a
rule could belong to several ruleflow groups then you could reuse a
rule in other RuleFlowGroup nodes in the same ruleflow, or even in a
different ruleflow. In some the applications I've developed with
commercial rules engines, it's common to have a number of ruleflows
that implement different parts of a system, but where all the rules are
defined against a common model, thus allowing some reuse of rules.
3. The Eclipse GUI ruleflow builder doesn't seem to allow loops
in the flow. It may sound a bit perverse, but is there any reason why
loops should not allowed (assuming the rule modeler is aware of the
potential of infinite loops etc)? I've implemented applications with
commercial rules engines, where looping in the ruleflow has proved
useful. As I said, it may sound perverse, but several commercial rules
engines are getting to the point where the ruleflow tools are
essentially Business Process Management Systems (BPMS). These systems
mix rules and process control flow, such as split conditions, looping
and much more, to define applications within a single framework, but
that's a whole different topic.
Thanks
Shahad
_______________________________________________
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users