Columns and Rows (Rules) in a Decision Table
A decision table rule is a row in the decision table. It has one or more conditions and one or more actions.
Each condition cell is equivalent to one condition (one line) in the TIBCO BusinessEvents rule editor condition area. Similarly each action cell is equivalent to one action (one line) in the TIBCO BusinessEvents rule editor action area (that is, one rule). Decision table rules are like business rules. The rule that calls the virtual rule function that implements the decision table participates in inferencing in the usual way. When the virtual rule function is called, the decision table rules are applied.
Conditions and Actions
The columns of a decision table are made up of condition columns on the left, and action columns on the right. Each column represents one condition or one action.
A condition is a test that must evaluate to true before the action is executed. If a decision table rule uses multiple conditions, all conditions for a row must evaluate to true in order for the action to execute.
In each row (rule) you define the specific conditions and actions. For example, if a condition column is Age (using a concept property of that name), then each row can define a different age range. The action for each row would define what action to take if a given concept instance contains an age property within the specified range.
If you add a second condition column called Income, then before the action is taken, a concept instance would be tested to see if both the age and the income are within the ranges specified in the rule’s conditions.
Regular and Custom Conditions and Actions
Use of Non-literal Values in a Regular Condition or Regular Action
Suppose event A and event B are in scope, and event A has property ZZ, and event B has property YY. Both properties belong to the same data type. Suppose you then drag property ZZ to a condition or action column. In the cell, you can then specify a value as b.YY
. The effect is different depending on the type of column:
- In a condition column, this means: compare the value of property ZZ with the value of property YY.
- In an action column this means: set the property ZZ to the value of YY.