Rule filtering by purpose
In this step, the rule resolution algorithm creates a list of all rules that match the referenced rule's purpose. The purpose of a rule is defined by the combination of the rule name and rule type. In the example, all HTML section 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.
Note: The applies to class is displayed in this list to help provide context where each instance of the rule in question is found. The ruleset and ruleset version are omitted from this list.
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.
In the example, the rule resolution algorithm finds three rules where the rule Availability is set to Not Available. The rules are removed from the list of rule candidates.
In the center of the following image, slide the vertical line to view the three rules highlighted on the left and the same three rules removed from the list on the right.
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.
Tip: The Ruleset list is a combination of the ruleset name and a Major-Minor version number.
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).
In the center of the following image, slide the vertical line to view the three rules highlighted on the left and the same three rules removed from the list on the right.
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).
In the center of the following image, slide the vertical line to view the highlighted rule on the left and the same rule removed from the list on the right.
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.
In the center of the following image, slide the vertical line to view the rules highlighted on the left and the same rules removed from the list on the right.
The rules listed in the Quoting and SAE rulesets are eliminated because the rulesets are not listed in the operator's ruleset list.
In the center of the following image, slide the vertical line to view the rules highlighted on the left and the same rules removed from the list on the right.
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.
Note: The ancestor tree refers to a rule’s inheritance.
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.
Caution: To be considered in this step, a rule type must have the Use class-based inheritance to arrive at the correct rule to execute? check box selected in the class definition.
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.
In the center of the following image, slide the vertical line to view the rule highlighted on the left and the same rule removed from the list on the right.
Check your knowledge with the following interaction.
If you are having problems with your training, please review the Pega Academy Support FAQs.
Want to help us improve this content?