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
答案 0 :(得分:2)
在XPath 3.0中,你可以做到
for-each-pair(doc('file1.xml')//word, doc('file2.xml')//word,
concat(?, ' ', ?, '
'))
您可以在任何XQuery 3.0或XSLT 3.0处理器中使用它。
答案 1 :(得分:1)
在XSLT 1.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, '
')"/>
</xsl:for-each>