Rule filtering by purpose
The purpose of a Rule is defined by the combination of the Rule name and Rule Type. The first step of the Rule resolution algorithm creates a list of all Rules that match the referenced Rule's purpose. In the example, all FlowAction Rules named CreateRequest are assumed to have the same purpose, and the Rule resolution algorithm collects the Rule instances into the list.
There can be many instances of the Rule in the initial list of Rule candidates because each Rule instance has a different Ruleset and Ruleset version:
Rules marked Not Available
In this step, the Rule resolution algorithm filters the list of Rule candidates and removes any Rules where the Rule availability is set to Not Available.
The following image shows the Rule resolution algorithm highlighting the three Rules whose availability is set to Not Available:
These Rules are removed from the list of Rule candidates.
The following image shows the Rule resolution algorithm after removing the three Rules whose availability is set to Not Available:
Rules in inapplicable Rulesets
In this step, the Rule resolution algorithm uses the operator's Ruleset list to determine which candidate Rules the operator can access.
Each Rule candidate must belong to a Ruleset listed in the operator's Ruleset list to be included in the results. Each Rule must have the same major version number and a minor version number less than or equal to the specified Minor version number listed in the operator's Ruleset list.
In the example, assume the operator's Ruleset list includes Purchasing:02-01 and TGB:03-01. The three Rules in the Purchasing:01-01-01 Ruleset are eliminated because they do not match the major version defined in the operator's Ruleset list (Purchasing:02-01).
The following image shows the Rule resolution algorithm highlighting the Rules set for removal:
The following image shows the Rule resolution algorithm after removing the Rules set for removal:
The Rule in the Purchasing:02-02-01 Ruleset is also eliminated because the minor version number (Purchasing:02-02) is higher than the minor version number defined in the operator's Ruleset list (Purchasing:02-01).
Of the Rules listed in the TGB Rulesets, only one Rule matches the current major version listed in the operator's Ruleset list (TGB:03-01). All other Rules in the TGB Rulesets are eliminated.
The following image shows the Rule resolution algorithm highlighting the Rules set for removal:
The following image shows the Rule resolution algorithm after removing the Rules set for removal:
The Rules listed in the Quoting and SAE Rulesets are eliminated because the Rulesets are not listed in the operator's Ruleset list.
The following image shows the Rule resolution algorithm highlighting the Rules set for removal:
The following image shows the Rule resolution algorithm after removing the Rules set for removal:
Rules outside the class hierarchy
In this step, the Rule resolution algorithm examines the Applies to class in the list of candidate Rules if the remaining candidate Rules are in the referenced Rule's inheritance hierarchy.
The Applies to class of the remaining candidate Rules must match the ancestor tree of the referenced Rule to be included in the results. Only Rules found in the referenced Rule's ancestor tree — by either pattern or direct inheritance — are retained in the list.
In the example, the referenced Rule applies to class TGB-Purchasing-Work-PurchaseRequest. There is one candidate Rule not in the ancestor tree, so it is removed from the list.
The following image shows the Rule resolution algorithm highlighting the Rule set for removal:
The following image shows the Rule resolution algorithm after removing the Rule set for removal:
Check your knowledge with the following interaction:
This Topic is available in the following Module:
Want to help us improve this content?