如何合并来自两个XML文件的列表数据



File1.xml

<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<wordlist>
        <title>English</title>
        <writer>BASHKIM</writer>
        <word>Father</word> 
        <word>Mother</word>
        <word>Son</word>
</wordlist>

File2.xml

<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<wordlist>
        <title>Spanish</title>
        <writer>BASHKIM</writer>
        <word>Fakhts</word> 
        <word>Moghday</word>
        <word>Sonay</word>
</wordlist>

我有两个XML文件(上面发布的代码),我想合并它们的内容。如何从两个文件中创建包含//worldlist/word的输出?

我想要这样的输出:

For example:
Father-Fakhts
Mother-Moghday
Son-Sonay

在XPath 3.0中,您可以执行

for-each-pair(doc('file1.xml')//word, doc('file2.xml')//word, 
              concat(?, ' ', ?, '&#xa;'))

您可以从任何XQuery3.0或XSLT3.0处理器中使用它。

在XSLT1.0中,如果变量$v1和$v2中有两个列表,则可以执行

<xsl:for-each select="$v1">
  <xsl:variable name="this" select="."/>
  <xsl:variable name="p" select="position()"/>
  <xsl:variable name="that" select="$v2[$p]"/>
  <xsl:value-of select="concat($this, '-', $that, '&#xa;')"/>
</xsl:for-each>

相关内容

  • 没有找到相关文章

最新更新