我想將兩個xml文件合併爲一個使用xslt。使用xslt合併兩個xml文件
file1:
<cut> <content1> .... </content1> </cut>
file1:
<cut> <content2> .... </content2> </cut>
merged:
<cut>
<content1> ... </content1>
<content2> ... </content2>
</cut>
我想將參數傳遞給包含要合併的文件的xslt。
xsltproc.exe 「--stringparam文件1 S:\ file1.xml --stringparam文件2 S:\ file2.xml S:\ merge.xslt
merge.xslt:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:exsl="http://exslt.org/common"
extension-element-prefixes="exsl">
<xsl:output indent="yes" omit-xml-declaration="yes"/>
<xsl:strip-space elements="*"/>
<xsl:param name="file1"/>
<xsl:param name="file2"/>
<xsl:variable name="big-doc-rtf">
<xsl:copy-of select="document($file1)"/>
<xsl:copy-of select="document($file2)"/>
</xsl:variable>
<xsl:variable name="big-doc" select="exsl:node-set($big-doc-rtf)"/>
<xsl:template match="/">
<cut>
<xsl:apply-templates select="$big-doc/cut/*"/>
</cut>
</xsl:template>
<xsl:template match="*">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="@*|text()|comment()|processing-instruction()">
<xsl:copy-of select="."/>
</xsl:template>
</xsl:stylesheet>
我只得到一個空的」 腰斬「標籤有什麼不對