ditavalref ditaval file not recognized and excluded during processing


Dan Vint
 

I'm not sure what is going on. I'm trying to setup a map that will have different sections that have the same content but will be filtered with with ditvals for different results. My main map references several other maps for those sections and each section/submap uses a different ditaval.

The setup and content of these objects are correct and validate. But when I run them through the DITA-OT version = 3.4.1 OT, it looks like the dtaval files are not being recognized as ditaval files and they are being stripped out. End result is that my content is not being filtered. Here are the OT messages

gen-list:
[gen-list] Using Xerces grammar pool for DTD and schema caching.
[gen-list] Processing file:/Users/danvint/Desktop/_multi-ditaval/_fkn1599574223928.ditamap
[gen-list] Processing file:/Users/danvint/Desktop/_multi-ditaval/dyr1599584459162.ditaval
[gen-list] [DOTJ030I][INFO] No 'class' attribute for was found for element '<val>'. The element will be processed as an unknown or non-DITA element.
[gen-list] [DOTJ030I][INFO] No 'class' attribute for was found for element '<prop>'. The element will be processed as an unknown or non-DITA element.
[gen-list] [DOTJ030I][INFO] No 'class' attribute for was found for element '<prop>'. The element will be processed as an unknown or non-DITA element.
[gen-list] [DOTJ030I][INFO] No 'class' attribute for was found for element '<prop>'. The element will be processed as an unknown or non-DITA element.
[gen-list] [DOTJ030I][INFO] No 'class' attribute for was found for element '<prop>'. The element will be processed as an unknown or non-DITA element.
[gen-list] [DOTJ030I][INFO] No 'class' attribute for was found for element '<prop>'. The element will be processed as an unknown or non-DITA element.
[gen-list] [DOTJ021E][ERROR] File 'file:/Users/danvint/Desktop/_multi-ditaval/dyr1599584459162.ditaval' will not generate output because because all content has been filtered out by DITAVAL "exclude" conditions, or because the file is not valid DITA.

That ditaval file looks like this

<?xml version="1.0" encoding="UTF-8"?>
<val>
<prop action="include"/>
<prop action="include" att="platform"/>
<prop action="include" att="audience"/>
<prop action="include" att="rev"/>
<prop action="include" att="otherprops"/>
<prop action="include" att="deliveryTarget"/>
<prop action="include" att="product"/>
<prop action="exclude" att="product" val="prod_b"/>
<prop action="include" att="product" val="prod_a"/>
</val>


My root map has this

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE map PUBLIC "-//PINGIDENTITY//DTD DITA Map//EN" "PingIdentityMap.dtd">
<map id="fkn1599574223928" xml:lang="en-us">
<title>FORMAT: multiditaval - ditavalref testing</title>
<topicmeta> </topicmeta>


<keydef href="dyr1599584459162.ditaval" keys="dyr1599584459162" xtrc="ixiasoft.drm.remove"/>
<keydef href="msz1599584786347.ditaval" keys="msz1599584786347" xtrc="ixiasoft.drm.remove"/>
<keydef href="kgo1599578351118.ditamap" keys="kgo1599578351118" xtrc="ixiasoft.drm.remove"/>
<keydef href="vva1599578551353.dita" keys="vva1599578551353" xtrc="ixiasoft.drm.remove"/>
<keydef href="sfq1599578470970.dita" keys="sfq1599578470970" xtrc="ixiasoft.drm.remove"/>
<keydef href="wkc1599578503581.dita" keys="wkc1599578503581" xtrc="ixiasoft.drm.remove"/>
<keydef href="cjq1599588363521.ditamap" keys="cjq1599588363521" xtrc="ixiasoft.drm.remove"/>
<keydef href="tur1599578307311.ditamap" keys="tur1599578307311" xtrc="ixiasoft.drm.remove"/>
<keydef href="vln1599578426163.dita" keys="vln1599578426163" xtrc="ixiasoft.drm.remove"/>
<keydef href="fjg1599584933747.ditaval" keys="fjg1599584933747" xtrc="ixiasoft.drm.remove"/>
<keydef href="liz1599578247043.ditamap" keys="liz1599578247043" xtrc="ixiasoft.drm.remove"/>
<topichead navtitle="All content no filters">
<mapref format="ditamap" keyref="cjq1599588363521"/>
</topichead>

<topichead navtitle="Common Content only - Exclude A and B ">
<mapref format="ditamap" keyref="liz1599578247043"/>
</topichead>

<topichead navtitle="Product A - Exclude B">
<mapref format="ditamap" keyref="tur1599578307311"/>
</topichead>
<topichead navtitle="Product B - Exclude A">
<mapref format="ditamap" keyref="kgo1599578351118"/>
</topichead>


</map>

The map using that particular ditaval is structured this way

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE map PUBLIC "-//PINGIDENTITY//DTD DITA Map//EN" "PingIdentityMap.dtd">
<map id="tur1599578307311" xml:lang="en-us">
<title>FORMAT: Product A content only</title>
<topicmeta> </topicmeta>

<ditavalref keyref="dyr1599584459162" processing-role="resource-only"/>
<topicref keyref="vln1599578426163"/> <!-- topic with ditavals -->
<topicref keyref="sfq1599578470970"/> <!-- topic product A -->
<topicref keyref="wkc1599578503581"/> <!-- topic product B -->
<topicref keyref="vva1599578551353"/> <!-- topic all -->

</map>

I've attached a zipfile of the complete fileset.

I looked to see if there was any other setup required. I thought maybe a processing-role was required, but I see that ditavalref defaults to resource only.

..dan

Join main@dita-users.groups.io to automatically receive all group messages.