---
schema_version: "1"
id: e79505d3448ce8186d8d1c4723b70fbb68adb653a11a8299ff6f733c1636f74d
title: Create Rule Sets
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/ind/264-0-0/comms_create_rule_sets.md
canonical_url: https://help.salesforce.com/s/articleView?id=ind.comms_create_rule_sets.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: 609c2a7f31eeb56706c9b66079f096291515137cbe7a8a1f2a2ba018a2ae4779
description: A rule set is a logical grouping of one or more context rules. A rule set enables you to designate how the grouped context rules are expressed in a logical expression and how they are used in Industries Cart. To create a rule set, you define general properties and then specify one or more context rules as child rules.
products:
  - Communications
  - Media
  - Energy and Utilities
release: "264"
---
# Create Rule Sets

A rule set is a logical grouping of one or more context rules. A rule set enables you to designate how the grouped context rules are expressed in a logical expression and how they are used in Industries Cart. To create a rule set, you define general properties and then specify one or more context rules as child rules.

Context rules, rule sets and rule conditions are cached in the org cache of the CPQPartition. In order to see your changes reflected at runtime, run the **Clear Managed Platform Cache** job in the CMT Administration Maintenance jobs page.

1. In Vlocity Product Console, in the **Rules** list, next to Rule Set, click **Create** ![The plus icon for Create](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-ind-comms_media_energy_managed-264-0-0-production-enus/ff4079f6-a384-475c-b863-578bbbb0ef9b/resources-product/images/productconsole_create.jpg).
2. On the **New Rule Set** tab, enter the following information.
    
    <table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
            <colgroup>
              <col>
              <col>
              <col>
            </colgroup>
            <thead class="slds-text-title_caps ">
              <tr class="">
                <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d363101e70">
                  <p style="margin-bottom:0;">Property</p>
                </th>
                <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d363101e76">
                  <p style="margin-bottom:0;">Value</p>
                </th>
                <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d363101e82">
                  <p style="margin-bottom:0;">Description</p>
                </th>
              </tr>
            </thead>
            <tbody>
              <tr class="">
                <td data-label="Property" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e70 ">
                  <p style="margin-bottom:0;">Name</p>
                </td>

                <td data-label="Value" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e76 ">
                  <p style="margin-bottom:0;">String value</p>
                </td>

                <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e82 ">
                  <p style="margin-bottom:0;">The rule set name. This name is displayed in rule selection dialog boxes and in related lists when assigned to products, promotions, price lists, and price list entries.</p>
                </td>

              </tr>
              <tr class="">
                <td data-label="Property" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e70 ">
                  <p style="margin-bottom:0;">Rule Type</p>
                </td>

                <td data-label="Value" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e76 ">
                  <ul>
                    <li>
                      <p>
                        <strong class="uicontrol">Qualification</strong>
                      </p>
                    </li>

                    <li>
                      <p>
                        <strong class="uicontrol">Penalty</strong>
                      </p>
                    </li>

                    <li>
                      <p>
                        <strong class="uicontrol">Evaluation</strong>
                      </p>
                    </li>

                  </ul>
                </td>

                <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e82 ">
                  <p style="margin-bottom:0;">The rule type property controls how the rules are used in Industries Cart. See <a href="https://help.salesforce.com/s/articleView?id=ind.comms_types_of_context_rules.htm&amp;release=264.0.0&amp;type=5" title="In the Vlocity Product Console, you can create the following types of context rules: Qulification rules and Penalty Rules.">Types of Context Rules</a>.</p>
                </td>

              </tr>
              <tr class="">
                <td data-label="Property" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e70 ">
                  <p style="margin-bottom:0;">Rule Purpose</p>
                </td>

                <td data-label="Value" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e76 ">
                  <p style="margin-bottom:0;">n/a</p>
                </td>

                <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e82 ">
                  <p style="margin-bottom:0;">The rules engine does not currently use this field.</p>
                </td>

              </tr>
              <tr class="">
                <td data-label="Property" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e70 ">
                  <p style="margin-bottom:0;">Expression Mode</p>
                </td>

                <td data-label="Value" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e76 ">
                  <ul>
                    <li>
                      <p>
                        <strong class="uicontrol">AND</strong>
                      </p>
                    </li>

                    <li>
                      <p>
                        <strong class="uicontrol">OR </strong>
                      </p>
                    </li>

                    <li>
                      <p>
                        <strong class="uicontrol">Custom </strong>
                      </p>
                    </li>

                    <li>
                      <p>
                        <strong class="uicontrol">If Else If </strong>
                      </p>
                    </li>

                    <li>
                      <p>
                        <strong class="uicontrol">If</strong>
                      </p>
                    </li>

                  </ul>
                </td>

                <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e82 ">
                  <p style="margin-bottom:0;">Use expression mode when there are multiple context rules contained in the rule set. It describes how the rules engine compiles the child context rules into a logical expression. See <a href="https://help.salesforce.com/s/articleView?id=ind.comms_expression_modes_and_custom_expressions.htm&amp;release=264.0.0&amp;type=5" title="When a rule set contains more than one child context rule, you must use the expression mode to specify how the rules engine combines the child rules into a logical expression.">Expression Modes and Custom Expressions</a>.</p>
                </td>

              </tr>
              <tr class="">
                <td data-label="Property" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e70 ">
                  <p style="margin-bottom:0;">Expression</p>
                </td>

                <td data-label="Value" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e76 ">
                  <ul>
                    <li>
                      <p>Use AND and OR operators to create custom expression.</p>
                    </li>

                    <li>
                      <p>Refer to child context rules using rule codes.</p>
                    </li>

                    <li>
                      <p>Use spaces to delimit each rule code.</p>
                    </li>

                    <li>
                      <p>Use parentheses to sequence order of operations for the expression.</p>
                    </li>

                    <li>
                      <p>Expressions are case-sensitive.</p>
                    </li>

                  </ul>
                </td>

                <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e82 ">
                  <p style="margin-bottom:0;">Specifies a custom logical expression. Used when Expression Mode is set to <strong class="uicontrol">Custom</strong>. See <a href="https://help.salesforce.com/s/articleView?id=ind.comms_expression_modes_and_custom_expressions.htm&amp;release=264.0.0&amp;type=5" title="When a rule set contains more than one child context rule, you must use the expression mode to specify how the rules engine combines the child rules into a logical expression.">Expression Modes and Custom Expressions</a>.</p>
                </td>

              </tr>
              <tr class="">
                <td data-label="Property" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e70 ">
                  <p style="margin-bottom:0;">Failure Message</p>
                </td>

                <td data-label="Value" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e76 ">
                  <p style="margin-bottom:0;">String value</p>
                </td>

                <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e82 ">
                  <p style="margin-bottom:0;">Text specified in this property appears in the Disqualified subtab of Industries Cart when the rule set is applied to a product or a promotion. It is not used when applied to a price list or price list entry. See <a href="https://help.salesforce.com/s/articleView?id=ind.comms_failure_messages.htm&amp;release=264.0.0&amp;type=5" title="When creating context rules, you can create failure messages for the following entities: rule sets, context rules, and rule conditions.">Failure Messages</a>.</p>
                </td>

              </tr>
              <tr class="">
                <td data-label="Property" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e70 ">
                  <p style="margin-bottom:0;">Header Rule</p>
                </td>

                <td data-label="Value" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e76 ">
                  <p style="margin-bottom:0;">Select a context rule using the <strong class="uicontrol">Header Rule Lookup</strong> dialog box.</p>
                </td>

                <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e82 ">
                  <p style="margin-bottom:0;">Specify a header rule for the rule set. See <a href="https://help.salesforce.com/s/articleView?id=ind.comms_header_rule.htm&amp;release=264.0.0&amp;type=5" title="To configure which rule is executed first when you have multiple children rules in a rule set, you can specify one of the rules as the header rule. If the header rule does not pass, processing stops on the entire rule set. Using header rules enables you to optimize rule set evaluation.">Header Rule</a>.</p>
                </td>

              </tr>
              <tr class="">
                <td data-label="Property" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e70 ">
                  <p style="margin-bottom:0;">Active</p>
                </td>

                <td data-label="Value" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e76 ">
                  <p style="margin-bottom:0;">Click to select</p>
                </td>

                <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e82 ">
                  <p style="margin-bottom:0;">The context rule service evaluates only active rule sets.</p>
                </td>

              </tr>
              <tr class="">
                <td data-label="Property" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e70 ">
                  <p style="margin-bottom:0;">Effective Start Date</p>
                </td>

                <td data-label="Value" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e76 ">
                  <p style="margin-bottom:0;">Select a date</p>
                </td>

                <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e82 ">
                  <p style="margin-bottom:0;">The start date of the period during which the object-level rule is effective.</p>
                </td>

              </tr>
              <tr class="">
                <td data-label="Property" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e70 ">
                  <p style="margin-bottom:0;">Effective End Date</p>
                </td>

                <td data-label="Value" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e76 ">
                  <p style="margin-bottom:0;">Select a date</p>
                </td>

                <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e82 ">
                  <p style="margin-bottom:0;">The end date of the period during which the object-level rule is effective.</p>
                </td>

              </tr>
            </tbody>
          </table>
3. Click **Save**.
4. Specify one or more context rules as child rules of the rule set.
    1. In the sidebar, click **Children Rules**.
    2. In the **Children Rules** facet, click **New Child Rule**.
        
        <table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
                <colgroup>
                  <col>
                  <col>
                  <col>
                </colgroup>
                <thead class="slds-text-title_caps ">
                  <tr class="">
                    <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d363101e500">
                      <p style="margin-bottom:0;">Property</p>
                    </th>
                    <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d363101e506">
                      <p style="margin-bottom:0;">Value</p>
                    </th>
                    <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d363101e512">
                      <p style="margin-bottom:0;">Description</p>
                    </th>
                  </tr>
                </thead>
                <tbody>
                  <tr class="">
                    <td data-label="Property" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e500 ">
                      <p style="margin-bottom:0;">Rule</p>
                    </td>

                    <td data-label="Value" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e506 ">
                      <p style="margin-bottom:0;">Select a context rule using the <strong class="uicontrol">Entity Filter Lookup</strong> dialog box.</p>
                    </td>

                    <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e512 ">
                      <p style="margin-bottom:0;">Specifies the child context rule to include in the rule set.</p>
                    </td>

                  </tr>
                  <tr class="">
                    <td data-label="Property" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e500 ">
                      <p style="margin-bottom:0;">Sequence</p>
                    </td>

                    <td data-label="Value" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e506 ">
                      <p style="margin-bottom:0;">Numeric value</p>
                    </td>

                    <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e512 ">
                      <p style="margin-bottom:0;">Specifies the child rule sequence. Use a sequence of 10, 20, 30, and so on to allow for easier sequence changes in the future.</p>
                    </td>

                  </tr>
                  <tr class="">
                    <td data-label="Property" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e500 ">
                      <p style="margin-bottom:0;">Action Taken</p>
                    </td>

                    <td data-label="Value" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e506 ">
                      <ul>
                        <li>
                          <p>
                            <strong class="uicontrol">Policy Action</strong>
                          </p>
                        </li>

                        <li>
                          <p>
                            <strong class="uicontrol">No Action</strong>
                          </p>
                        </li>

                        <li>
                          <p>
                            <strong class="uicontrol">Qualify</strong>
                          </p>
                        </li>

                        <li>
                          <p>
                            <strong class="uicontrol">Do Not Qualify</strong>
                          </p>
                        </li>

                      </ul>
                    </td>

                    <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e512 ">
                      <p>Specifies the action to take when the child context rule passes or evaluates to true.</p>
                      <p>For penalty rules, select <strong class="uicontrol">Policy Action</strong> or <strong class="uicontrol">No Action</strong>. If you select <strong class="uicontrol">Policy Action</strong>, specify a <strong class="uicontrol">Context Action</strong> in the next property.</p>
                      <p style="margin-bottom:0;">For qualification rules, select <strong class="uicontrol">Qualify</strong> or <strong class="uicontrol">Do Not Qualify</strong>. When used with products or promotions, these actions correspond to the Qualified and Disqualified tabs in the Products and Promotions lists in Industries Cart.</p>
                    </td>

                  </tr>
                  <tr class="">
                    <td data-label="Property" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e500 ">
                      <p style="margin-bottom:0;">Context Action</p>
                    </td>

                    <td data-label="Value" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e506 ">
                      <p style="margin-bottom:0;">Select a context action using the <strong class="uicontrol">Context Action Lookup</strong> dialog box.</p>
                    </td>

                    <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d363101e512 ">
                      <p style="margin-bottom:0;">Specifies a Context Action. Used when Action Taken property is set to <strong class="uicontrol">Policy Action</strong>. See <a href="https://help.salesforce.com/s/articleView?id=ind.comms_create_context_actions.htm&amp;release=264.0.0&amp;type=5" title="Use context actions with penalty rules to apply a fee when a promotion or contract is canceled. Context actions enable you to specify a flat fee using a pricing element on a price list.">Creating Context Actions</a>.</p>
                    </td>

                  </tr>
                </tbody>
              </table>
5. Click **Save**.