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.

Note: Conditions that are blank, contain an asterisk, or are disabled are ignored, and are treated as if they evaluate to true.

Regular and Custom Conditions and Actions

Regular condition
  A regular condition is the value of an entity specified in the VRF scope, or a simple comparison with the value - is greater than, is less than, is greater than or equal to, is less than or equal to.
Custom condition
 A custom condition can use the rule language, standard functions, and data in the scope of the function at runtime (for example, scorecards and global variables). It can contain complex formulas.
Regular action   
A regular action sets the value of an entity specified in the VRF scope.
Custom action   
A custom action can use the rule language, standard functions, and data in the scope of the function at runtime to do whatever is desired. For example, the action could be to send an event out to a different system for follow-up.

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.