Rule execution modes and control properties

Rule task execution modes define the rule engine algorithm that is used to execute the rules. Control properties further refine the number and order in which the rule engine executes rules, depending on the execution mode.

You can choose a rule execution mode to execute the rules in a particular rule task with a rule engine algorithm that corresponds to your chosen mode. You can use execution control properties to refine further the number and order of rules that the rule engine executes.

You set the execution mode, and the ordering and exit criteria as rule task properties in the Selection Properties pane.

Rule execution modes and control properties are technical features of the ruleflow. For more information about these features, refer to the Rule Designer user documentation.

Execution Mode property

You can choose between three execution modes to operate the rule engine. The execution mode determines which rules to execute and in which sequence.

You can select an execution mode for each rule task in a ruleflow. By default, a rule task uses the RetePlus execution mode. To achieve optimal performance, you can choose another execution mode that is better suited to the rules in a particular rule task.

You can set the Execution Mode property of a rule task to one of the following values:

Ordering property

Selected rules do not necessarily execute in the order in which the rule task lists them. The rule execution mode you chose determines the order. With the Ordering property, you can define an execution order for your rules.

You can set the Ordering property of a rule task to one of the following values:

The packages in the list of selected rules expand when the business rules for the rule task are evaluated at compilation time. The expansion starts at the top of the list. If a business rule is listed separately above its package, it retains its execution position in the list. However, if it is listed separately below its package, the business rule executes from the package. Under the package, the business rule is redundant because it is already in the package.

For example, consider a package that contains rules R1, R2 andR3:

Exit Criteria property

The Exit Criteria property specifies whether all the rules execute or just the first instance of the first rule executes. You can set the rule task Exit Criteria property to one of the following values: