25.10.1.1. Utilisation de la valeur "-dita-use-conref-target"

La valeur "-dita-use-conref-target" est utilisable sur les attributs énumérés, et peut aussi être spécifiée manuellement sur d'autres attributs. Si l'élément utilise l'attribut conref pour tirer du contenu, elle indique que l'attribut avec une valeur de "-dita-use-conref-target" devrait aussi tirer sa valeur de la cible.

Ordinairement, lorsqu'un élément utilise l'attribut conref, tous les autres attributs spécifiés localement seront préservés. Cette caractéristiques peut servir à forcer les paramètres sur la cible de l'attribut conref qui ne seraient pas appropriés dans le nouveau contexte. Cela pose des problèmes lorsque les attributs sont obligatoires. Par exemple, l'élément <topichead> impose l'attribut navtitle. Comme l'attribut est obligatoire, tout élément <topichead> utilisant conref doit également fournir un attribut navtitle, même vide. Les règles de traitement DITA standard provoqueraient le remplacement de cette valeur par celle de l'attribut navtitle sur la cible, même si la valeur de navtitle de la cible est probablement souhaitée.

Cette exemple montre une carte dont l'élément <topichead> utilise l'attribut conref. Il spécifie l'attribut navtitle obligatoire ainsi que l'attribut toc. Dans l'élément résolu, le navtitle n'est pas conservé parce qu'il utilise la valeur "-dita-use-conref-target" ; l'attribut toc est conservé selon les règles normales.

Pré-résolution :
<map><title>Conref demonstration</title>
  <topichead id="heading"
             navtitle="This is a heading"
             toc="yes"
             print="yes">
    <topicref href="topic.dita" navtitle="content"/>
  </topichead>
  <topichead conref="#heading"
             navtitle="-dita-use-conref-target"
             toc="no">
  </topichead>
</map>
Post-résolution :
<map><title>Conref demonstration</title>
  <topichead id="heading"
             navtitle="This is a heading"
             toc="yes"
             print="yes">
    <topicref href="topic.dita" navtitle="content"/>
  </topichead>
  <topichead navtitle="This is a heading"
             toc="no"
             print="yes">
    <topicref href="topic.dita" navtitle="content"/>
  </topichead>
</map>

On trouvera plus d'explications à ce propos et sur les autres règles de conref dans la spécification architecturale DITA.