Attribute-Dependent Exclusion
Prove that an attribute value excludes a child product from the configuration.
What it proves
When a trigger attribute is set to a specific value, a child product is excluded (Salesforce exclude() / hide treatment, or a custom message() rule). Attempting to add that child while the attribute is set should fail the expected assertion.
Example
Map these Meridian product names to equivalents in your org. Pick a valid base quote that already reflects the rule, then select the matching products in Scenario Builder.
Named Platinum coverage is not sold on shared multi-tenant deployments: it creates over-entitlement and incorrect SLA expectations.
Bundle: Meridian Enterprise Pack (Support group)
Attribute: Deployment Model
Trigger value: Multi-tenant
Excluded child: Platinum Support
With Deployment Model set to Multi-tenant, adding Platinum Support should be rejected. Salesforce may surface this as an exclude / hide treatment, or as a message such as:
Platinum Support is not available for Multi-tenant deployments. Choose Standard or Premium Support.
What Revsnap does at runtime
- Starts from your valid base quote
- Sets the trigger attribute to the excluding value (Multi-tenant)
- Attempts to add the excluded child product (Platinum Support)
- Asserts the expected configurator signal (default pattern
hide, severity error) - Corrects the transient invalid selection
- Saves the valid configuration
How to capture it
- Capture a Configurator → Scenario Builder snapshot with a valid base quote for the bundle that owns the attribute.
- On Rule Type, choose Attribute-Dependent Exclusion.
- In Scenario Builder, set:
- Trigger attribute: for example Deployment Model
- Trigger value: for example Multi-tenant
- Excluded child to add: for example Platinum Support
- On Review, confirm or edit the expected pattern and severity.
- Save the snapshot.
Review assertion tips
| Setting | Default / guidance |
|---|---|
| Expected pattern | hide: matches exclude() UI treatments from the Configurator API |
| Severity | error by default |
Custom message() orgs | If your org uses message() instead (for example Platinum Support is not available for Multi-tenant), replace the pattern with that text or a matching regex |
Related
- Configurator testing: message vs product-presence proofs
- Attribute-Dependent Inclusion: include / auto-add instead of exclude
- Mutual Exclusivity (Message Rule): product-vs-product exclusion via
message()