替换节点下的所有标签

Replace all tags below a node

我需要在转换中更改节点下的所有标签。 来源 XML 看起来像这样:

<Address>
<s:name>name</s:name>
<s:lastName>last name <a:lastName>
<s:address1>Address Line 1</s:address1>
<s:address2>Address Line 2</s:address2>

必填O/p:

<Address>

<name>name</name>

<lastName>last name <lastName>

<address1>Address Line 1</address1>

<address2>Address Line 2</address2>

有千个tags.So,无法全部匹配。有没有一种方法可以获取顶级节点并处理下面的所有标签?

如果您使用 match="/*//*",那么您匹配根元素的所有后代元素。然后你可以使用

构造一个新元素

<xsl:template match="/*//*"><xsl:element name="local-name()"><xsl:apply-templates select="@* | node ()"/></xsl:element></xsl:template>

然后将身份转换模板添加到您的代码中,您就完成了。