[Brian Martinez wrote:]
<xsl:template match="/">
<textarea>
<xsl:copy-of select="*"/>
</textarea>
</xsl:template>
From: Lars Huttar
Just out of curiosity, and because I'm learning:
Wouldn't the above copy-of fail to copy any non-element
children of the
root node? E.g. comments and PI's...
(He did say "the entire XML document.")
No. If the comments and PIs (by that I assume you mean processing
instructions) are children of the root or context node,
xsl:copy-of will
write them to the result tree.
cheers,
b.
What I meant was that because your <xsl:copy-of> used select="*",
it would only operate on element children of the root node.
So comments/PIs would only be copied if they were descendants
of the document node, not if they were children of "/".
I tried this with a sample document, and sure enough, top-level
comments and processing instructions were lost. That may not
matter to the original poster but I just wanted to make sure I
was understanding right.
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="test-select.xsl"?>
<!-- This comment is lost. -->
<doc>The document node.
<child>A child node.</child>
</doc>
<!-- Another pesky comment. -->
<?pi r squared but we dont care?>
The output from your template:
<textarea><doc>The document node.
<child>A child node.</child>
</doc></textarea>
Regards,
Lars
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list