将2 xml docs与xslt一起使用

时间:2017-01-08 23:08:59

标签: xml xslt

我有一个XML文件,我希望在我的xslt文件应处理哪些内容之间切换。例如:

<code>
    <manual>
        <use>1</use>
    </manual>
    <generated>
        <use>0</use>
    </generated>
    <doc>
        <localpath>content.xml</localpath>
    </doc>
</code>

然后content.xml具有相同的标签,即生成和手动,其中要解释的数据是。我四处搜索并找到了这个片段:

<xsl:variable name="messages" select="doc"/>
<xsl:apply-templates select="document('$messages')"/>

变量messages已正确填充,但似乎未加载文档。或者,如果将content.xml加载到<doc>标记中,我会看到错误,以便导航从那里开始并向前移动?

我对XSLT很陌生,所以如果这很明显,请耐心等待。

1 个答案:

答案 0 :(得分:2)

那应该是document($messages)而不是document('$messages')。我也希望

<xsl:variable name="messages" select="doc/localpath"/>

这留下了一个关于什么&#34; content.xml&#34;是相对于:它是相对于源文档,还是相对于样式表?

关于你的问题&#34;或者我看错了应该看到content.xml被加载到标签中,所以导航从那里开始并向前移动?&#34; - 你在这里使用的术语在XSLT中没有任何意义(例如&#34;将字符串加载到标签&#34;以及&#34;导航向前移动&#34;)。所以在我看来,好像你正在尝试构建一个关于XSLT如何工作的心理模型,而这个模型在现实中没有什么基础,如果是这样的话,我强烈建议你在编写更多代码之前做更多的阅读。 / p>