Copy element copies only the current node without children and attributes, while copy-of copies everything. : copy « XSLT stylesheet « XML Tutorial

Home
XML Tutorial
1.Introduction
2.Namespace
3.XML Schema
4.XPath
5.XSLT stylesheet
XML Tutorial » XSLT stylesheet » copy 
5.48.3.Copy element copies only the current node without children and attributes, while copy-of copies everything.
File: Data.xml
<?xml version="1.0" encoding="utf-8"?>
<p id="a12">
    Compare <B>these constructs</B>.
</p>

File: Transform.xslt

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet
      version="1.0"
      xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

    <xsl:template match="p">
      <DIV>
        <B>
          <xsl:text>copy-of : </xsl:text>
        </B>
        <xsl:copy-of select="."/>
      </DIV>
      <DIV>
        <B>
          <xsl:text>copy : </xsl:text>
        </B>
        <xsl:copy/>
      </DIV>
      <DIV>
        <B>
          <xsl:text>value-of : </xsl:text>
        </B>
        <xsl:value-of select="."/>
      </DIV>
    </xsl:template>
</xsl:stylesheet>

Output:

<?xml version="1.0" encoding="UTF-8"?><DIV><B>copy-of : </B><p id="a12">
    Compare <B>these constructs</B>.
</p></DIV><DIV><B>copy : </B><p/></DIV><DIV><B>value-of : </B>
    Compare these constructs.
</DIV>
5.48.copy
5.48.1.The Element copies a node to the result tree
5.48.2. and
5.48.3.Copy element copies only the current node without children and attributes, while copy-of copies everything.
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.