Conditional Profiling Attribute Groups
Overview
Conditional processing attributes can be specified using grouped values. Groups organize the attributes into
        subcategories. This is intended to support situations where an attribute applies to multiple
        specialized subcategories. For example, suppose a company needs to filter content for
        several internal teams (operations and support) and they use the
          @audience attribute with the values ops and
          support, but the Support team has several levels of personnel (L1, L2,
        and L3). They could use a group to define the levels (L1, L2, and L3)
        as subcategories for the support value. Using groups for these
        subcategories allows each category to be processed independently.
A major advantage is that you do not need to add new profiling attributes using a DTD
        specialization. You can re-use existing DITA profiling attributes (such as
          @product, @audience, @otherprops) and
        specify multiple attribute subcategories.
Creating a Conditional Profiling Attribute Group
- Open the Preferences dialog box and go to .
- 
            To add new attributes and values, click the  New button at the bottom of the
              Profiling Attributes table. To customize existing attributes
            and their values, select an attribute and click the New button at the bottom of the
              Profiling Attributes table. To customize existing attributes
            and their values, select an attribute and click the Edit button. Edit button.Step Result: In either case, this opens a Profiling Attribute configuration dialog box where you can define attributes that exist in your schema. 
- 
            Specify the appropriate values for the Document type, Attribute name, and Display name. For information about the Profiling Attribute configuration dialog box, see Defining Profiling Attributes for DITA Content. 
- Click the  New button at the bottom of the attribute values
            table. New button at the bottom of the attribute values
            table.
- In the Value field of the resulting dialog box, define groups
            using the following format: ParentAttrValue(SubAttrValue1 SubAttrValue2). For example:support(L1 L2 L3)
- Click OK and Apply to save and apply the changes.
Using Conditional Profiling Attribute Groups in Conjunction with a DITAVAL File
<val>
     <prop action="include" att="support" val="L1"/>
     <prop action="include" att="support" val="L2"/>
     <prop action="exclude" att="support" val="L3"/>
</val>That DITAVAL file could then be used for a condition
          set to filter content in Author mode or during the
        transformation stage to filter
          content in the output and content profiled with the L1 and
          L2 values would be included while content with the L3
        value would be excluded.
L1, L2,
          L3) by simply excluding the support value (since
          L1, L2, and L3 are subcategories of
        it).<val>
     <prop action="exclude" att="support"/>
</val>Defining Conditional Profiling Attribute Groups in a Subject Scheme Map
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE subjectScheme PUBLIC "-//OASIS//DTD DITA Subject Scheme Map//EN" "subjectScheme.dtd">
  <subjectScheme>
    <enumerationdef>
        <attributedef name="product"/>
        <subjectdef keys="productKeys">
            <subjectdef keys="myGroup1(gr1v1)"/>
            <subjectdef keys="myGroup1(gr1v2)"/>
            <subjectdef keys="product1"/>
        </subjectdef>
    </enumerationdef>
  </subjectScheme>In the above example, myGroup1 is the profiling
        attribute group for the @product attribute and gr1v1
        and gr1v2 in parentheses are the values.
Resources
For more information about advanced DITA profiling concepts, watch our Webinar: Working with DITA in Oxygen - Advanced Profiling and Reuse Strategies.
