1
我的一些样式表有点大,其中一些部分重复。我想为它们使用XInclude,这将允许我将它们分开放在整个样式表中。我不能在这里使用xsl:import
或xsl:include
,因为我需要将它们注入到用于生成书签和活动链接(用于XSL-FO)的特定位置。XSLT样式表(eXist-db)中的XInclude
如果我使用:
<xi:include href="/db/apps/tested-bunny/resources/xsl-fo/common/bookmark-tree.xml/>
...真的产生的.fo
文件包含的部分。然而,这部分是未翻译的,这意味着它就像源代码那样。 XSL-FO处理器因此忽略它,而pdf结果没有书签。
至于分离的部分,我的根元素声明两个命名它保存为一个普通的XML文件:
<fo:bookmark-tree xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format">
<xsl:if test="$head-level ge '1'">
...
如果我尝试包括在XSL样式表的形式相同的代码片断,它是相同的 - 它在那里被正确地注入,但是它没有将它的功能添加到整个样式表中,它仍然没有被翻译。
有没有我不知道的具体做法或限制?如何正确地做到这一点?