我有一个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很陌生,所以如果这很明显,请耐心等待。
答案 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>