[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: how to insert the *complete* content of a node
Hi Robert, >> Use <xsl:copy-of> and select all the children of the <mytag> >> element using the node() node test (which matches any node, >> including elements and attributes): >> >> <xsl:copy-of select="mytag/node()" /> >> >> <xsl:copy-of> gives you an exact copy of the nodes. > > uh oh ... i'm confused again. i thought "node()" explicitly > did *not* match attribute nodes, but only The node test "node()" matches attribute nodes, but the child axis can only select the node types that you mention: > 1) elements > 2) text > 3) comments > 4) processing instructions When you do: <xsl:copy-of select="mytag/node()" /> this is expanded to: <xsl:copy-of select="child::mytag/child::node()" /> and you get the child nodes (which cannot include attributes since attributes aren't children) of the child <mytag> element of the context node. You can tell that the node() node test matches attributes because the expression ".", which expands to the expression "self::node()", can be used to select attributes. Unlike the child axis, the self axis selects the context node no matter what its type. Cheers, Jeni --- Jeni Tennison http://www.jenitennison.com/ XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|