[XSL-LIST Mailing List Archive Home]
[By Thread]
[By Date]
Brian,
At 07:03 PM 3/3/2003, you wrote:
That's only partly so: IIUC the existence of the root node (as distinguished from the document element or "root element", which you shouldn't call it in an XSLT context ;-) is in part so that non-element siblings of the document element (such as, for example, stylesheet PIs, that commonly live at the top of the document before the document element) have a place in the model. They are not removed by the parser.
Given the root node / as context, <xsl:copy-of select="*"/> fails to copy these nodes (comments and PIs) since it only selects elements (of which, you are correct, there will be exactly one). But select="node()" picks up these other nodes. <xsl:copy-of select="*"/> will of course pick up PIs and comments that are *inside* the document element (since it's a deep copy), which may be part of the confusion.
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
RE: [xsl] Select entire XML doc
Subject: RE: [xsl] Select entire XML doc From: Wendell Piez <wapiez@xxxxxxxxxxxxxxxx> Date: Tue, 04 Mar 2003 11:53:15 -0500 |
Brian,
At 07:03 PM 3/3/2003, you wrote:
Remember that the transformation works on a parsed XML input tree--not the raw document. So any child of the root node that isn't an element is removed, and if there is more than one child element of the root node, the document is rejected by the parser as being malformed XML.
That's only partly so: IIUC the existence of the root node (as distinguished from the document element or "root element", which you shouldn't call it in an XSLT context ;-) is in part so that non-element siblings of the document element (such as, for example, stylesheet PIs, that commonly live at the top of the document before the document element) have a place in the model. They are not removed by the parser.
Given the root node / as context, <xsl:copy-of select="*"/> fails to copy these nodes (comments and PIs) since it only selects elements (of which, you are correct, there will be exactly one). But select="node()" picks up these other nodes. <xsl:copy-of select="*"/> will of course pick up PIs and comments that are *inside* the document element (since it's a deep copy), which may be part of the confusion.
Cheers, Wendell
====================================================================== Wendell Piez mailto:wapiez@xxxxxxxxxxxxxxxx Mulberry Technologies, Inc. http://www.mulberrytech.com 17 West Jefferson Street Direct Phone: 301/315-9635 Suite 207 Phone: 301/315-9631 Rockville, MD 20850 Fax: 301/315-8285 ---------------------------------------------------------------------- Mulberry Technologies: A Consultancy Specializing in SGML and XML ======================================================================
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] Select entire XML doc, Lars Huttar | Thread | RE: [xsl] Select entire XML doc, Martinez, Brian |
RE: [xsl] thoroughly confused about, Passin, Tom | Date | [xsl] Generating XML validatable by, SORENS,MICHAEL (HP-B |
Month |