[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: SAX/Java Proposed Changes


sax java filter
Karl Waclawek wrote:

>>As for filters and handlers, they should always initialize their state 
>>on startDocument(). That will prevent any errors due to reuse after 
>>attempting to parse a bad document.
>>    
>>
>
>I think the problem is not initialization, but rather
>"finalization) - i.e. cleanup. If a filter acquired
>resources, then it would not release them until (if ever)
>startDocument() is called again.
>
>  
>
I understand, but it's possible to code around that for cases where this 
is really a concern. I find it more of an issue if a chain of filters 
doesn't reinitialize properly after an error termination, and 
initializing state on startDocument() at least takes care of that case.

As we've discussed, the alternative being considered is to *always* call 
endDocument(), even when the parse is being terminated by an exception. 
This seems counter-intuitive to me, and to at least some others on this 
list. If this method were called "parsingDone()" or something of the 
sort I wouldn't see it as a problem; it's the actual method name and the 
perceived similarity between startElement()/endElement() and 
startDocument()/endDocument() that makes it feel wrong to me.

BTW, I think this is another example of how pull APIs offer a cleaner 
structure than push APIs. With a pull API you link filters by passing 
through calls to the next filter in the list. It's easy to use a try { } 
finally { } structure to handle exception terminations in this case.

  - Dennis


PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
 

Stylus Studio has published XML-DEV in RSS and ATOM formats, enabling users to easily subcribe to the list from their preferred news reader application.


Stylus Studio Sponsored Links are added links designed to provide related and additional information to the visitors of this website. they were not included by the author in the initial post. To view the content without the Sponsor Links please click here.

Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.