[
Lists Home |
Date Index |
Thread Index
]
> > The normal way is: If *I* make a function call that throws an exception
> > then *I* have to write the "finally" clause to do the clean up.
> > A library that provides an implicit finally does the unexpected thing.
>
> Considering this position, I came to the same conclusion. However, when
> considering the SAX universe on whole it makes absolute sense that
> endDocument be guaranteed. Many developers simply write pass-through filters
> based on ContentHandler. In these black-box pipeline classes there is no
> call to parse around which one should place a finally-- they must be
> autonomous in there intialization and finalization.
Personally I would not trust a library to provide me with a clean-up
call-back unless this is strongly documented as an absolute guarantee
in bold face and double underlined.
But my main point is not that such behaviour is always wrong, only that
it should be clearly documented as it is not "standard".
> For this reason I feel that the Xerces implementation is in error. I ran a
> quick survey to see how the major parsers break down-- I haven't had a
> chance to test MSXMLs SAX implementation yet.
>
> AElfred2 : fires endDocument
> XP : fires endDocument
> Oracle V2 XML Parser: does not fire endDocument
> crimson : does not fire endDocument
>
> Expat : fires endDocument
Only SAXExpat, as Expat itself does not have an endDocument call-back.
Karl
|