【发布时间】:2012-12-13 11:16:15
【问题描述】:
我对 XSLT 完全陌生,所以请多多包涵。
我尝试使用 XSLT 将两个 xml 文件连接在一起。我想组合这些文件,以便第二个文件中指定的任何值都覆盖第一个。例如
firstFile.xml
<person>
<person-name>Sandy</person-name>
<person-age>21</person-age>
</person>
<person>
<person-name>Bob</person-name>
<person-age>15</person-age>
</person>
override.xml
<person>
<person-name>Bob</person-name>
<person-age>21</person-age>
</person>
结果:
<person>
<person-name>Sandy</person-name>
<person-age>21</person-age>
</person>
<person>
<person-name>Bob</person-name>
<person-age>21</person-age>
</person>
我的连接两个文件的模板如下:
<xsl:template match="/">
<!-- MainFile -->
<xsl:copy-of select="/*"/>
<!-- Overrides-->
<xsl:copy-of select="document($overrideFile)/*"/>
</xsl:template>
我试图设置一个 for-each 循环,以便在复制 firstFile.xml 中的每个人之前检查 override.xml 中是否有相应的节点,但不成功。
任何提示将不胜感激
【问题讨论】: