【问题标题】:Can you access dita map keydef variables from XSL in Dita-ot plugin你能在 Dita-ot 插件中从 XSL 访问 dita map keydef 变量吗
【发布时间】:2019-03-09 05:11:44
【问题描述】:

我知道可以访问 keydef

<map>
    <title>variables</title>
    <keydef keys="keyName"><topicmeta><keywords><keyword>Text API</keyword></keywords></topicmeta></keydef>
</map

带有 keyref 语句

<keyword keyref="keyName"/>

是否可以从 dita-ot 管道中的 xsl 文件访问 keydef

我尝试了以下

  <xsl:value-of select="//keydef[@keys eq 'keyName']/topicmeta/keywords/keyword/text()"/>

  <xsl:value-of select="keyword[@keyref eq 'copyright']"/>

但是这些都不起作用。

问候 联系方式

【问题讨论】:

    标签: xslt dita-ot


    【解决方案1】:

    我使用了以下内容:

    <xsl:value-of select="$map/*[contains(@class,' mapgroup-d/keydef ') and lower-case(@keys) = ''keyName'']/topicmeta/keywords/keyword/node()"/>
    

    $map 被定义为

    <xsl:variable name="map" select="//opentopic:map"/>
    

    【讨论】:

    • 那行得通.. 我必须添加第二个斜杠 $map//* 可能在 dita 2.0.1 版本中有所不同?
    • dita-ot 3.4.1:不起作用... $map 似乎根本不包含 keydef 元素。最终,我成功打开了原始 .ditamap:document(/*/@xtrf)//keydef[@keys='keyName']/topicmeta/...
    猜你喜欢
    • 2014-04-16
    • 2017-06-01
    • 2017-12-04
    • 2013-02-12
    • 1970-01-01
    • 2020-08-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多