XSLT - 将节点移动到父节点



我需要一个XSLT将"节点"从目录/节点/节点[ 1 ]移动到目录/节点/节点[ 0]。我尝试了一切,但没有任何效果:(

我的 XML 文件:

<CATALOG>
<NODES>
<NODE>
<NODES/>
<NODES/>
</NODE>
<NODE>
<NODES/>
<NODES/>
<NODES/>
</NODE>
</NODES>
</CATALOG>

应该是这样的:

<CATALOG>
<NODES>
<NODE>
<NODES/>
<NODES/>
<NODES/>
<NODES/>
<NODES/>
</NODE>
</NODES>
</CATALOG>

图片上我的XML的详细信息!

向上移动节点

这个问题相当模棱两可。AFAICT,以下样式表:

XSLT 1.0

<xsl:stylesheet version="1.0" 
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:strip-space elements="*"/>
<!-- identity transform -->
<xsl:template match="@*|node()">
    <xsl:copy>
        <xsl:apply-templates select="@*|node()"/>
    </xsl:copy>
</xsl:template>
<xsl:template match="/CATALOG/NODES">
    <xsl:copy>
        <NODE>
            <xsl:apply-templates select="NODE/NODES"/>
        </NODE>
    </xsl:copy>
</xsl:template>
</xsl:stylesheet>

将生成预期的输出,当应用于您的输入时。但这可能只是一个巧合。

相关内容

  • 没有找到相关文章