Rule resolution exceptions
Understanding rule resolution of circumstance rules across rulesets can help you troubleshoot unexpected rule resolution results.
Privately edited and branched rules
When privately edited or branched rules are matched, circumstance rules do not work because they are in a different ruleset. In the following example, line 1 is a privately edited rule and line 2 is a branched rule. If either of the rules is matched, the circumstance rules are ignored.
1. MyRule in myusername@ ***
2. MyRule in MyRuleset_branch_BranchName Base rule ***
3. MyRule in MyRuleset 01-01-05 Circumstance by Property: .pyLabel = Green
4. MyRule in MyRuleset 01-01-05 Circumstance by Property: .pyLabel = Yellow
5. MyRule in MyRuleset 01-01-05 Base rule
6. MyRule in MyRuleset 01-01-04
7. MyRule in MyRuleset 01-01-03 Circumstance by Property: .pyLabel = Yellow
8. MyRule in MyRuleset 01-01-02 Circumstance by Property: .pyLabel = Green
9. MyRule in MyRuleset 01-01-02 Circumstance by Property: .pyLabel = Red
10. MyRule in MyRuleset 01-01-01 Circumstance by Property: .pyLabel = Green
11. MyRule in MyRuleset 01-01-01
Circumstance rules outside of the matched ruleset
Circumstance rules are honored only if they are in the same ruleset as the matched non-circumstance rule. For example, if you have a rule stack as shown in the following example, and line 3 is the matched rule, only the circumstance rules for green and yellow are honored. All rules below line 3 are discarded even though their circumstancing matches.
1. MyRule in MyRuleset 01-01-01 Circumstance by Property: .pyLabel = Green
2. MyRule in MyRuleset 01-01-01 Circumstance by Property: .pyLabel = Yellow
3. MyRule in MyRuleset 01-01-01
4. MyRule in BusinessRules 01-01-03 Circumstance by Property: .pyLabel = Yellow
5. MyRule in BusinessRules 01-01-02 Circumstance by Property: .pyLabel = Green
6. MyRule in BusinessRules 01-01-02 Circumstance by Property: .pyLabel = Red
7. MyRule in BusinessRules 01-01-01 Circumstance by Property: .pyLabel = Green
8. MyRule in BusinessRules 01-01-01
Previous topic Specializing a case type Next topic Creating a rule specialized by a class or ruleset