Profiling with a Subject Scheme Map

A subject scheme map allows you to create custom profiling values and to manage the profiling attribute values used in the DITA topics without having to write a DITA specialization.

Subject scheme maps use key definitions to define a collection of profiling values. A map that uses the set of profiling values must reference the subject scheme map in which the profiling values are defined at its highest level. To do this, you must add the type="subjectScheme" attribute on the topicref that references the subject scheme map, as in the following example:

<topicref href="test.ditamap" format="ditamap" type="subjectScheme"/>

A profiled value should be a short and readable keyword that identifies a metadata attribute. For example, the audience metadata attribute may take a value that identifies the user group associated with a particular content unit. Typical user values for a medical-equipment product line might include therapist, oncologist, physicist, radiologist, surgeon, and so on. A subject scheme map can define a list of these audience values.

EXAMPLE:

The following is an example of content from a subject scheme:

<subjectScheme>
  <!-- Pull in a scheme that defines audience user values -->
  <subjectdef keys="users">
    <subjectdef keys="therapist"/>
    <subjectdef keys="oncologist"/>
    <subjectdef keys="physicist"/>
    <subjectdef keys="radiologist"/>
    <subjectdef keys="surgeon">
      <subjectdef keys="neuro-surgeon"/>
      <subjectdef keys="plastic-surgeon"/>
    </subjectdef>
  </subjectdef>
  <!-- Define an enumeration of the audience attribute, equal to
       each value in the users subject. This makes the following values
       valid for the audience attribute: therapist, oncologist, physicist,
       radiologist, surgeon, neuro-surgeon and plastic-surgeon. -->
  <enumerationdef>
    <attributedef name="audience"/>
    <subjectdef keyref="users"/>
  </enumerationdef>
</subjectScheme>

Where the Profiling Attributes are Available in Oxygen XML Editor plugin

When you edit a DITA topic in the Text or Author mode, Oxygen XML Editor plugin collects all the profiling values from the subject scheme map that is referenced in the map that is currently opened in the DITA Maps Manager (or set as the root map). The values of profiling attribute defined in a Subject Scheme Map are available in the Edit Profiling Attribute dialog box, regardless of their mapping in the Profiling/Conditional Text preferences page. They are also available as proposals for values in the Content Completion Assistant.

Note

In the example above, the values therapist, oncologist, physicist, and so on, are displayed in the Content Completion Assistant as values for the audience attribute.

Filtering Attribute Values

By defining controlled values and using hierarchical levels in the subject scheme, you can classify content for filtering and flagging when the map is transformed. You can also filter attribute values by using a DITAVAL filter file.

For more details about how hierarchical filtering, defining controlled values, and using subject scheme maps, refer to the following resources:

Was this helpful?