[jdom-interest] SAX startDocument and endDocument when there's only a document fragment

Elliotte Rusty Harold elharo at metalab.unc.edu
Sun Nov 24 06:56:37 PST 2002

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 

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 

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 at metalab.unc.edu | 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/    |

More information about the jdom-interest mailing list