Task 1: Making decisions with single rules
Each decision node uses decision logic to determine its value based on direct predecessor values in the decision diagram. The logic must satisfy two critical requirements:
- Completeness: The decision logic must determine a value (or a list of values if the decision node is multi-valued) for the decision node.
- Consistency: Same cases in different scenarios must always produce the same value or list of values for the decision node.
Rule structure and independence
Each rule must be self-sufficient: it determines a decision node value by using only the available information (the direct predecessor values) for every case where it applies.
A rule consists of two parts: a condition and an action. The condition defines when the rule is applicable, while the action sets the value of the decision node.
When a rule runs, its action sets the decision node value without modifying predecessor values. This has a critical implication: applying one rule does not change whether other rules are applicable. Under this assumption, all rules operate independently of each other.
Consider a decision node sensor format with three direct input data nodes:
level, subject, and budget. This decision node
contains the following decision table:

This table does not determine a sensor format for beginners with high budget that is interested in sports or portrait photography. It does not meet the completeness requirement.
The following decision table is similar to the previous one but contains an extra row. This row chooses an APS-C sensor for beginners with high budget:

- Row 1: APS-C sensor
- Row 5: Micro Fourth Third sensor
In the following decision table, the first row is replaced by two rows that specify different values for different subjects:

Each case now matches exactly one row, satisfying both completeness and consistency requirements.
Verification methods
One approach to meet both requirements is using rule sets that cover all possible cases and where each case matches exactly one rule. This helps ensure that exactly one rule applies in every scenario. Alternative methods are explored in a subsequent tutorial task.
How can you confirm that a rule set is complete and overlap-free? The answer depends on the number of dimensions involved.
For a small number of dimensions, create a diagram that shows all possible cases:
- Display each case combination in a separate cell.
- Mark each cell with the applicable rule.
The following diagram shows all possible cases for level,
subject, and budget. Each cell displays the applicable row number
and the resulting sensor format:

As each cell contains exactly one row number, the decision table is both complete and overlap-free.
For larger numbers of dimensions, this logical analysis can be carried out by organizing rules in a tree structure where each rule corresponds to a branch. For example, column cells in a decision table can be grouped if their left neighbors are also grouped and share values. This creates a hierarchical tree organization. If no cells are empty, it is possible to identify missing cases and overlaps by analyzing the tree.
In all other cases, rigorously analyzing rule conditions to detect missing cases and overlaps becomes computationally difficult, even for small rule sets, as demonstrated in the preceding examples.
Exercise 1: Incomplete decision table
- Import the Step4 solution for Decision Modeling practice tutorial sample from the New decision service wizard. For more information about importing samples, see Building decision services.
- Open the Step 4 - Exercise 2 decision model and update the decision
diagram to include the following nodes only:
- The decision node sensor format.
- The three input data nodes level, subject, and budget.
- Click the sensor format decision node and open the Logic tab.
- Click Create rule artifact
and create a decision table named Incomplete DT.
- Populate the table with values from the Incomplete decision table (Fig. 1) available above.
- Go to the Run tab.
- Create a test data set with the following values:
- level: beginner
- subject: portrait
- budget: 3000
- Click Run.
- Review the output: is a sensor format proposed in the results?
To understand why this response was returned, you can create a diagram that shows all possible input combinations and mark each cell in the diagram with the row numbers from the decision table that apply to that case. Did you label all cells with at least one row number?
Exercise 2: Decision table with overlaps
- Create a new decision table named DT with overlaps in the sensor format node.
- Populate the table with values from the Decision table with overlaps (Fig. 2) available above.
- Go to the Run tab.
- Create a test data set with the following values:
- level: beginner
- subject: landscape
- budget: 3000
- Click Run.
- Review the output and note the suggested sensor format.
- Return to the Logic tab and change the interaction policy to Rules are applied in sequence.
- Run the test data set again.
Exercise 3: Complete and overlap-free decision table
- Change the interaction policy for the sensor format node to First rule applies.
- Create a new decision table named complete and overlap-free DT.
- Populate the table with values from the Complete and overlap-free decision table (Fig. 3) available above.
- Go to the Run tab.
- Create a test data set with the following values:
- level: beginner
- subject: portrait
- budget: 3000
- Click Run.
- Compare the output with the results from exercise 1. Is the completeness problem fixed?
- Create a new test data set with the following values:
- level: beginner
- subject: landscape
- budget: 3000
- Click Run.
- Return to the Logic tab and change the interaction policy to Rules are applied in sequence.
- Run the test data set again and compare the output with the results from exercise 2. Is the overlap problem fixed?
Lessons learned
Complete and overlap-free rule sets provide a foundational approach to meeting the completeness and consistency requirements of decision logic. A decision logic based on this approach has two key characteristics:
- Each rule can make a decision independently, by using only the available information, for all cases where it applies.
- Exactly one rule applies to each possible case.
Limitations
While complete and overlap-free rule sets are ideal, it can be difficult to verify that rules don't overlap and that they cover all possible cases.