Vic S. wrote:

I have a large set of Dita machinery tasks which frequently have xref to
other tasks (as pre conditions or from within the tasks).  As many of
the linked tasks have not yet been written there is a danger that I will
have to edit references in a large number of tasks when these later
files are produced.  I want to avoid that by using keyrefs so I only
have to edit the link once in a ditamap when the target task is finally
completed.  This works but I want to tidy things up by using a
relationship table.



I have a separate mapref file with all my references.   That mapref
contains all my Keydefs and the reltable.   If I use a KeyRef inside a
topicref in the Reltable XMLMind is unable to resolve the link.

Keyrefs are resolved by XMLmind DITA Converter exactly the same way whether they are found inside a reltable or inside a topicref hierarchy.

So my guess is that your problem is not really about "resolving the link".








My XML looks like this:



<map>

  <title>References</title>



  <keydef href="../RefNotDrafted.dita" keys="Ref001"/>



  <reltable>

    <relrow>

      <relcell>

        <topicref href="task001.dita"/>

      </relcell>



      <relcell>

        <topicref keyref="Ref001"/>

      </relcell>

    </relrow>

  </reltable>

</map>





Is this a bug or is it part of the Dita standard?



Running "Map|Check Map" on the above "utility map" gives me the following error messages:

---
[1] Inconsistent chunk specification which leads to no file at all.
[2] Document "/home/hussein/tmp/test/test.ditamap" has 1 errors or warnings. Some of them are fatal errors.
---

which I expected because topicrefs inside a reltable do not "pull" the corresponding topics.

====================================================================
With XMLmind DITA Converter, a reltable is just used to define links between topics which are already part of the deliverable. A reltable cannot be used to add some content to a deliverable.
====================================================================

This behavior is certainly not part of the DITA standard, but is not really a bug of XMLmind DITA Converter. It's a more like a minor limitation, which we unfortunately forgot to document.

For your use case, the workaround is probably to use a hierarchy of topicrefs in addition to a reltable, may be something like:

---
<map>
  <title>References</title>

  <keydef href="../RefNotDrafted.dita" keys="Ref001"/>

  <topicref href="task001.dita"/>

  <topicref keyref="Ref001"/>

  <reltable>
    <relrow>
      <relcell>
        <topicref href="task001.dita"/>
      </relcell>

      <relcell>
        <topicref keyref="Ref001"/>
      </relcell>
    </relrow>
  </reltable>
</map>
---




--
XMLmind DITA Converter Support List
ditac-support@xmlmind.com
http://www.xmlmind.com/mailman/listinfo/ditac-support

Reply via email to