【发布时间】:2012-05-02 19:37:05
【问题描述】:
好的,对不起。我有这两个 xml 文件。 ProvlaLingua1.xml
<VENDOR>
<IMMAGINI_SITO>True</IMMAGINI_SITO>
<VERSIONE_SKYWALKER>1</VERSIONE_SKYWALKER>
<CDLINGUA>IT</CDLINGUA>
</VENDOR>
还有这第二个 ProvaLingua2.xml
<LINGUA>
<EN>
<TAG1>The book is on the table</TAG1>
<TAG2>The cat is on the table</TAG2>
</EN>
<IT>
<TAG1>Il libro è sul tavolo</TAG1>
<TAG2>Finche la barca va lasciala andare</TAG2>
</IT>
</LINGUA>
所以我需要检查 ProvaLingua1 以获取 CDLINGUA valor,然后从 ProvaLingua2 中提取 valor。 我需要类似的东西
<xsl:variable name="LANGUAGE" select="document('ProvaLingua1.xml')VENDOR/CDLINGUA"/>
<xsl:value-of select="document('ProvaLingua2.xml')/LINGUA/A VARIABLE HERE/TAG2" />
我需要输入变量“LANGUAGE”来提取,我不能这样做:
<xsl:choose>
<xsl:when test="$language='IT'">
<xsl:value-of select="document('ProvaLingua2.xml')/LINGUA/IT/TAG1" /><br />
<xsl:value-of select="document('ProvaLingua.xml')/LINGUA/IT/TAG2" /><br />
</xsl:when>
</xsl:choose>
因为否则我需要为任何语言编写太多行。 感谢您的帮助
【问题讨论】:
-
考虑发布足够的信息让我们重现问题。您的第一个带有
document(ProvaLingua1.xml)的示例需要为document('ProvaLingua1.xml'),因此很难判断剩余的代码。您当然可以像在document('ProvaLingua2.xml')/MYFILE/*[name()=$lingua]/TAG2中那样在 XPath 表达式中使用变量,以帮助我们帮助您为什么找不到您要查找的节点,我们需要查看相关文档示例。 -
这两个答案是否解决了您的问题?请善意并将它们标记为已回答:stackoverflow.com/faq#howtoask。
标签: xml xslt variables document