[xsl] SAX startDocument and endDocument when there's only a document fragment

Subject: [xsl] SAX startDocument and endDocument when there's only a document fragment
From: Elliotte Rusty Harold <elharo@xxxxxxxxxxxxxxx>
Date: Sun, 24 Nov 2002 09:56:37 -0500
Apologies in advance for the cross-posting, but this is one of those nasty problems that crosses the usual boundaries.

1. Consider an XSLT transform that generates a document fragment rather than a complete document; that is, there is no single root element.

2. Suppose TrAX is used to apply this transform and generate a result.

3. Suppose the result is a JAXP SAXResult object; that is, it fires the contents of the result into a user-specified ContentHandler.

Question: should the the transformer fire startDocument() and endDocument() events? even though this isn't a complete document, only a document fragment?


The SAX API doc is not absolutely clear on this point. However, my interpretation is that yes, it should call startDocument() and endDocument().


The JAXP spec does not appear to have anything relevant to say about this.

In the course of adding XSLT support to JDOM, Laurent Bihanic has discovered that different engines behave differently. In particular, the Oracle XML Parser for Java does not call startDocument and endDocument. This is a roadblock in adding full XSLT support to JDOM, so some clarification would be appreciated.
--


+-----------------------+------------------------+-------------------+
| Elliotte Rusty Harold | elharo@xxxxxxxxxxxxxxx | Writer/Programmer |
+-----------------------+------------------------+-------------------+
|          XML in a  Nutshell, 2nd Edition (O'Reilly, 2002)          |
|              http://www.cafeconleche.org/books/xian2/              |
|  http://www.amazon.com/exec/obidos/ISBN%3D0596002920/cafeaulaitA/  |
+----------------------------------+---------------------------------+
|  Read Cafe au Lait for Java News:  http://www.cafeaulait.org/      |
|  Read Cafe con Leche for XML News: http://www.cafeconleche.org/    |
+----------------------------------+---------------------------------+

XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list


Current Thread