A circumstance is an optional qualification available for supported rule types and is built upon the base rule.
Using circumstances in your application allows you to easily support a variety of use cases. For example, you might want a different data transform to execute depending on a customer's geographic location (for example, when
.StateCode = "MA"). Instead of maintaining the logic for all cases in one large rule, start with a base rule and extend (or specialize) it as needed. At runtime, the Pega Platform automatically selects the correct version to execute as part of its rule resolution process.
The following figure illustrates example logic for evaluating geographic location and other properties in a case.
You can create a circumstance of a base rule by a single value property, template (multiple properties), or date.