Use xsl:copy
instead of xsl:copy-of
to copy just the selected node.
Use xsl:apply-templates
to gain control over how child elements are handled through the definition of templates matching the children.
If you want to copy the childNode
element along with its attributes and add some elements without going the (generally preferred) xsl:apply-templates
route, try:
<xsl:copy select="childNode">
<xsl:copy-of select="@*"/>
<!-- add further content here as needed -->
</xsl:copy>
Possibilities abound but you'll have to clarify your question if none of these answers meet your needs.