Skip to main content
This content has been updated. Click here to continue your progress on the latest version.

Ruleset validation

Ruleset validation

Ruleset validation is performed every time a rule is saved. It guarantees that referenced rules are available on the target system when the ruleset is promoted.

Ruleset validation does not affect rule resolution at run time but is applied only at design time.

There are two options for the validation mode:

  • Application Validation
  • Ruleset Validation

The selected validation mode applies to all versions of the ruleset.

The New Application wizard creates rulesets that are set to both Application Validation (AV) and Ruleset Validation (RV) modes. The rulesets that contain the application rules are set to AV mode to reduce the difference between design and run time.

Conversely, the organizational rulesets created by the New Application wizard are set to RV mode. RV ensures strict validation on prerequisite rulesets when migrated.

Application validation mode

If the AV mode is used, rules in the ruleset can reference all rules in the rulesets defined in the:

  • Same application
  • Rulesets belonging to any built-on application

Rules in the ruleset cannot reference rules outside the current application stack or above the defining application.

In the following example, all rulesets are AV mode. The shaded and unshaded cells represent applications. The loan application is built on a loan framework.

Ruleset Validation

 

 

Ruleset Mode
LoanPricing Can call all other rulesets listed
LoanUnderwriting Can call all other rulesets listed
LoanPricingFW Can call LoanUnderwritingFW but not shaded rulesets
LoanUnderwritingFW Can call LoanPricingFW but not shaded rulesets

AV allows for codependent rulesets within the same application. That is, rules in LoanPricing can reference rules in LoanUnderwriting, and rules in LoanUnderwriting can reference rules in LoanPricing.

Each ruleset in the application has a version. When AV mode is used, the application defines the ruleset versions accessible for a given ruleset. For example, ruleset LoanPricing:01-01-03 can access ruleset version 01-01-01 to 01-01-03 of the ruleset LoanUnderwriting and 01-01-01 to 01-02-10 of the LoanPricingFW and LoanUnderwritingFW rulesets.

When AV mode is selected, if you change the application definition, the rules may become invalid. Invalid rules might cause serious errors at run time. Use the Validation tool (Dev Studio > Configure > Application >Tools > Validation) to quickly identify invalid rules in the application.

Ruleset validation mode

When you use RV mode, each ruleset version defines one or more ruleset versions on which the ruleset version depends. For example, if you create a ruleset Myco:01-01-01 that uses rules in MyCoInt:01-01-01 and Customer:01-01-01, then MyCoInt:01-01-01 and Customer:01-01-01 ruleset versions must be specified as a prerequisite. Only rules in the ruleset versions that are specified as prerequisites (and their prerequisites) can be referenced from the ruleset.

For example, if MyCo:01-01-01 specifies Customer:01-01-03 as a prerequisite, rules in version 01-01-01 to 01-01-03 of the Customer ruleset can be referenced.

 

Ruleset Validation

Ruleset prerequisites

If your ruleset version does not have any prerequisite ruleset versions, you need to specify the base product ruleset Pega-ProcessCommander as a prerequisite.

Ruleset Validation

The Pega-ProcessCommander ruleset lists all product rulesets. You do not need to list any product rulesets below Pega-ProcessCommander. There is a 99 patch version of the Pega-ProcessCommander ruleset available in the product. Use that ruleset version as a prerequisite to avoid having to update the ruleset after product updates. For example, if the product is updated from 07-10-13 to 07-10-18, you do not need to update the rule prerequisites since the 99 version automatically picks the highest patch for the ruleset version.

Ruleset prerequisites cannot be cyclic. For example, if Alpha:01-01-01 defines Beta:01-01-01 as a prerequisite, then Beta:01-01-01 cannot define Alpha:01-01-01 as a prerequisite.

Mixing application ruleset validation modes

You can mix rulesets that use AV and RV.

  • Rulesets with another ruleset in brackets — for example, MyCoPL [MyCo] — next to them use RV. The ruleset in brackets is the prerequisite ruleset.
  • Rulesets without a ruleset with brackets next to them use AV.

With RV, you cannot call AV rulesets that are not in the prerequisites.

Ruleset Validation
Name Mode
LoanPricing Can call all other rulesets listed
LoanUnderwriting Can call rules in all other rulesets including LoanPricing
MyCoPL [MyCo] Can call rules in MyCo and PRPC but not in LoanUnderwriting, LoanPricing, LoanPricingFW, or LoanUnderwritingFW
LoanPricingFW Cannot call rules in MyCoPL, LoanUnderwriting, or LoanPricing
LoanUnderwritingFW Cannot call rules in MyCoPL, LoanUnderwriting, or LoanPricing
MyCo [PRPC] Can only call rules in PRPC

Ruleset validation best practices

Follow these best practices when configuring rulesets.

  • Only use RV for rulesets that are designed to be used across multiple applications, such as organizational rulesets, to make them easily portable and prevent the introduction of dependencies on a specific application.
  • Create applications for common rulesets; use the built-on functionality to include common rulesets in the application.
  • Include unlocked AV rulesets in one application only. Doing so prevents AV rulesets from referring to rules that may not exist in applications that do not contain the ruleset.
  • Run the Validation tool after implementation of critical changes or milestones (for example, changes to the application ruleset list or built-on application as well as changes made before lock/export).
Note: Note: For more information about the Validation tool, see the Help topic Validation tool.
If you are having problems with your training, please review the Pega Academy Support FAQs.

Did you find this content helpful?

100% found this content useful

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