Skip to main content
Verify the version tags to ensure you are consuming the intended content or, complete the latest version.

Rule resolution process and Rule availability

Rules that are subject to the rule resolution process have an availability value. The current availability of a rule is visible on the rule form next to the rule name or description.

availability setting

The availability setting determines if a rule is available for use during rule resolution. The availability of a rule also determines if you can view, copy, or edit a rule in Dev Studio.

You can set the availability of a rule to one of five values.

Availability = Available

An availability of Available indicates the rule may be used during the rule resolution process.

You can view, copy, edit, and run rules in Dev Studio when the availability is set to Available.

Tip: When you create a rule, the default availability of the rule is Available.

Availability = Final

An availability of Final indicates the rule may be used during the rule resolution process.

Rules marked as Final can be viewed and run in Dev Studio, but cannot be edited or copied into another ruleset with the same name. You cannot override a final rule except through a higher version in the same ruleset.

Note: The Final setting is used by Pega Platform™ to indicate that Pega-provided rules might change in subsequent releases. To learn more about Troubleshooting final rules, see Troubleshooting final rules.

Availability = Not Available

An availability of Not Available indicates the rule may not be used during the rule resolution process. When a rule set to Not Available is found during the rule resolution process, the rule in the next-highest version is considered for rule resolution. The following table represents an ordered list of rules. The availability of the rule named CreateRequest in the Purchasing:02-01-10 ruleset is set to Not Available. The rule in the next-highest version — Purchasing:02-01-05 — is considered for rule resolution.

You may choose to set the availability of a rule to Not Available during initial development. Doing so allows you to save a rule without validation. Rules marked as Not Available can be viewed, copied, or edited in Dev Studio, but do not run.

In the center of the following image, drag the vertical line to see the skipped rule candidate. The selected rule is in bold in the image on the right.

Availability = Blocked

An availability of Blocked indicates the rule may be used during the rule resolution process. Rules marked as Blocked can be viewed, copied, or edited in Dev Studio, but do not run. If a blocked rule is selected during rule resolution, the run halts, and an error message is added to the log file.

In the following table, the availability of the highest version of the rule named CreateRequest in the Purchasing:02-01-10 ruleset is Blocked. This version of the rule is available during rule resolution but does not run. There are no higher versions of the rule available, so in the case of the example section rule, the section does not display.

Block a rule when access to the rule must not be used and you need more time to develop and release an updated rule.

Note: When a circumstanced rule is blocked, it is not considered for rule resolution, but all the remaining rule instances in the current version ruleset are considered.

In the center of the following image, drag the vertical line to see that the process does not skip any rule candidate. The selected rule is in bold in the image on the right.

Availability = Withdrawn

An availability of Withdrawn indicates all rules that are in the current version ruleset and previous version ruleset and have the same purpose (or rule type) and Apply to: class are hidden and no longer considered after Availability is checked during the rule resolution process.

When a rule marked as Withdrawn is found during rule resolution, the system looks for an instance of the rule in the parent class or next highest ruleset in the application ruleset stack.

In the following table, the availability of the rule named CreateRequest in the Purchasing:02-01-10 ruleset is Withdrawn. All rules that are in the same ruleset with an equal or lower version number and have the same purpose and Apply To class are not considered during rule resolution. The rule named CreateRequest in the Purchasing:02-01-15 is considered during rule resolution because the ruleset version is higher than the ruleset version of the withdrawn rule. If the rule in Purchasing:02-01-15 did not exist, a rule in the parent class, TGB-Purchasing-Work, would be chosen.

Rules marked as Withdrawn can be viewed, copied, or edited in Dev Studio, but do not run.

Note: When a circumstanced rule is withdrawn, it is not considered for rule resolution, but all the remaining rule instances in the current version ruleset are considered.

In the center of the following image, drag the vertical line to see the skipped rule candidate. The selected rule is in bold in the image on the right.

Note: To learn more about setting rule status, see Setting rule status and availability.

Check your knowledge with the following interactions:


This Topic is available in the following Module:

If you are having problems with your training, please review the Pega Academy Support FAQs.

Did you find this content helpful?

Want to help us improve this content?

We'd prefer it if you saw us at our best.

Pega Academy has detected you are using a browser which may prevent you from experiencing the site as intended. To improve your experience, please update your browser.

Close Deprecation Notice