The <val>
element is the root element of a DITAVAL
document.
Processing expectations
For information about processing DITAVAL documents , including how to filter or flag elements with
multiple property attributes or multiple properties within a single
attribute, see Conditional processing .
Example This section is non-normative.
This section contains examples of DITAVAL documents and how they
can be used.
Example 1. Sample DITAVAL document
The following code sample shows a DITAVAL document that
excludes certain content, flags certain content, flags
certain revisions, and provides a background color for when there
are style conflicts:
<val>
<style-conflict background-conflict-color="red"/>
<prop action="exclude" att="audience" val="internal-test" />
<prop action="flag" att="product" val="YourProd" backcolor="purple"/>
<prop action="flag" att="product" backcolor="blue"
color="yellow" style="underline" val="MyProd">
<startflag imageref="startflag.jpg">
<alt-text>This is the start of my product info</alt-text>
</startflag>
<endflag imageref="endflag.jpg">
<alt-text>This is the end of my product info</alt-text>
</endflag>
</prop>
<revprop action="flag" val="1.2"/>
</val>
This sample DITAVAL document performs the following actions:
Elements that specify audience="internal-test"
are excluded .
Elements that specify product="YourProd"
are rendered with a background color of purple.
Elements with product="MyProd"
get the
following actions:
The image startflag.jpg is placed
at the start of the element.
The image endflag.jpg is placed at
the end of the element.
The element is rendered with a background color of
blue.
The text in the element is rendered in yellow, and the
text is underlined.
Elements marked with rev="1.2"
are flagged
with the default revision flags, which are implementation
dependent.
When there are conflicts, for example, if an element is
marked with product="MyProd YourProd"
, it
will be flagged with a background color of red.
Example 2. DITAVAL document that overrides the default
include action
The following code sample shows a DITAVAL document that sets a
default value of exclude for every
conditional-processing attribute. That default value is then
overriden by the <prop>
elements with a
value of include.
<val>
<prop action="exclude"/>
<prop action="include" att="audience" val="everybody"/>
<prop action="include" att="audience" val="novice"/>
<prop action="include" att="product" val="productA"/>
<prop action="include" att="product" val="productB"/>
</val>
This DITAVAL document performs the following actions:
The first <prop>
element does not
specify an attribute, which sets a default action of
exclude for every conditional-processing
attribute. This means that, by default, any property value
not otherwise defined in this document evaluates to
exclude . Note that this same behavior
can be limited to a single attribute. The following
<prop>
element sets a default action
of exclude for all properties specified on
the @platform
attribute: <prop
action="exclude" att="platform"/>
The second and third <prop>
elements
set an action of include for two values on
the @audience
attribute. All other values on
the @audience
attribute still evaluate to
exclude .
The fourth and fifth <prop>
elements
set an action of include for two values on
the @product
attribute. All other values on
the @product
attribute still evaluate to
exclude .