0

我可以在不发生内存溢出的情况下解决这个问题(至少使用 altova mapforce),并希望对其他人有所帮助。

我有 2 个 xml 文件:

第一个:

<item>
  <id>100</id>
  <title>some title</title>
  <subtitle>some subtitle</subtitle>
</item>
...

第二:

<item>
  <id>100</id>
<item>
...

我想通过使用 XSLT匹配(输出 XML)每个匹配 2nd XML<id>和 1st XML的项目。<id>我想从匹配的第一个 XML 文件中获取所有元素。我希望这对于那些了解 XSL 的人来说很容易,或者我希望我的方法是错误的

我猜第二个 XML 文件将被引用为 XSL 参数,但我不知道如何引用它的元素

4

1 回答 1

0

是这样的:

<xsl:variable name="first" select="document('first.xml')/root" />
. . .
<xsl:template match="item">
  <xsl:variable name="id" select="id" />
  <span>title of item <xsl:value-of select="$id" /> is <xsl:value-of select="$first/item[id=$id]/title" /></span>
</xsl:template>
于 2012-10-12T13:06:40.230 回答