1

XSLT:我是 XSLT 的新手。我必须复制 XML 的完整节点,不包括该节点的第一个子节点。例如:输入是

    <root id="123456789">
      <userid></userid>
      <fname></fname>
      <lname></lname>
      <age></age>
    </root>

    Output should be:
    <root id="123456789">
      <fname></fname>
      <lname></lname>
      <age></age>
    </root>

    Please suggest how to achieve this. Thanks in advance
4

1 回答 1

0

这种转变

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
 <xsl:output omit-xml-declaration="yes" indent="yes"/>
 <xsl:strip-space elements="*"/>

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

 <xsl:template match="/*/*[1]"/>
</xsl:stylesheet>

应用于提供的 XML 文档时

<root id="123456789">
    <userid></userid>
    <fname></fname>
    <lname></lname>
    <age></age>
</root>

产生想要的正确结果:

<root id="123456789">
      <fname/>
      <lname/>
      <age/>
</root>

说明

正确使用和覆盖身份规则

于 2012-09-07T03:57:02.880 回答