Re: [Sax-devel] SAX - endDocument() confusion again
At 2:07 PM -0500 2/27/04, Karl Waclawek wrote: ><quote> >The application must assume that the document is unusable after the parser >has invoked this method, and should continue (if at all) only for the sake >of collecting additional error messages: in fact, SAX parsers are free to >stop reporting any other events once this method has been invoked. ></quote> Yuck. That is nasty. This is why specs need a normative test suite. However, I think the text under endDocument() is more important: The SAX parser will invoke this method only once, and it will be the last method invoked during the parse. The parser shall not invoke this method until it has either abandoned parsing (because of an unrecoverable error) or reached the end of input. Clearly it's OK to call endDocument after a fatalError. Is it required? I think so, but it's arguable. David Brownell claims it's required <http://www.geocrawler.com/mail/msg.php3?msg_id=8561128&list=13179> and it's certainly useful to be able to depend on this. In practice, the only two actively developed SAX parsers for Java (Xerces-J and Oracle) do not call endDocument. Neither does Crimson. Some lesser known parsers like the various AElfred derivatives do. -- Elliotte Rusty Harold elharo@m... Effective XML (Addison-Wesley, 2003) http://www.cafeconleche.org/books/effectivexml http://www.amazon.com/exec/obidos/ISBN%3D0321150406/ref%3Dnosim/cafeaulaitA
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