1

我在 DITA 使用开放工具包获取我想要的结构时遇到问题。

我的书图包含参考 DITA 映射的章节。

<chapter class="- map/topicref bookmap/chapter " format="ditamap" href="001.1_X00344819.ditamap" navtitle="Introduction"/>

然后这些地图引用其他地图或主题。

<topicref class="- map/topicref " format="dita" href="002.1_X00176947.dita"
    navtitle="Measurements" type="concept"/>
<topicref class="- map/topicref " format="ditamap" href="002.1_X00310578.ditamap"
    navtitle="Symbols and iconography"/>

在 Oxygen 地图编辑器中打开带有已解决主题的书图,我得到了我想要的结构:

  • 地图
    • 话题
    • 地图
      • 话题
      • 话题

但是,如果我使用开放工具包(Oxygen 中的 3.4.1,或 3.5.4-external),我只会得到没有层次结构的主题。

  • 话题
  • 话题
  • 话题

在 normalized-DITA 的输出中,章节和地图的内容被复制(不包括标题),并且 topicrefs(到主题)已成为章节:

<chapter format="dita" navtitle="Measurements" type="concept" href="002.1_X00176947.dita">
    <topicmeta>
        <navtitle>Measurements</navtitle>
        <linktext>Measurements</linktext>
    </topicmeta>
</chapter>
<chapter format="dita" navtitle="Mandatory action signs" type="reference"
    href="002.1_X00310580.dita">
    <topicmeta>
        <navtitle>Mandatory action signs</navtitle>
        <linktext>Mandatory action signs</linktext>
    </topicmeta>
</chapter>
<chapter format="dita" navtitle="Warning signs" type="reference" href="002.1_X00313315.dita">
    <topicmeta>
        <navtitle>Warning signs</navtitle>
        <linktext>Warning signs</linktext>
    </topicmeta>
</chapter>

鉴于它发生在两个版本的 OT 中,我假设这是我做错的事情,但是什么?

4

1 回答 1

3

问题在于您的标记。DITA 映射对层次结构没有贡献;只有元素和元素的特殊化有助于层次结构。

如果您希望 DITA 映射生成标题为“介绍”的章节,其中包含子主题,则需要使用以下标记:

<map><title>Introduction</title>
<topichead>
  <topicmeta>
    <navtitle>Introduction</navtitle>
  </topicmeta>
  <topicref .../>
  <topicref .../>
</topichead>
</map>
于 2020-10-03T13:36:51.410 回答