尝试从根元素中移动直接子元素,然后将它们复制到新的根元素下。能够做到这一点一个子元素,但不知道如何应用or
with inselect
语句。
递归子元素的当前 XSLT:
<xsl:template match="Element1">
<Information>
<xsl:apply-templates select="*[name()!='Element1']"/>
</Information>
<xsl:apply-templates select="Element1"/>
</xsl:template>
<xsl:template match="Element1/Element1">
<Metadata>
<xsl:apply-templates/>
</Metadata>
</xsl:template>
我想对另一个子元素应用相同的内容并尝试过
<xsl:template match="Element1">
<Information>
<xsl:apply-templates select="*[name()!='Element1'] | *[name()!='Element2']"/>
</Information>
<xsl:apply-templates select="Element1"/>
</xsl:template>
<xsl:template match="Element1/Element1">
<Metadata>
<xsl:apply-templates/>
</Metadata>
</xsl:template>
<xsl:template match="Element1/Element2">
<Metadata2>
<xsl:apply-templates/>
</Metadata2>
</xsl:template>
但它没有用。请帮忙。