OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   Re: [xml-dev] Fast text output from SAX?

[ Lists Home | Date Index | Thread Index ]

At 9:00 AM -0400 4/16/04, Stephen D. Williams wrote:

>Binary doesn't imply there isn't any well-formedness checking, obviously.

For once I agree. Obviously, binary doesn't imply that. However, in 
practice, the binary formats I do see rarely do as much 
well-formedness checking as a parser does, either in the XML domain 
or elsewhere. Speed gains that come from eliminating well-formedness 
checking should not be attributed to a binary format. Similar gains 
can be had by eliminating well-formedness checking when processing 
real XML (Not that I recommend doing that of course).

>Incremental, or lazy evaluation, well-formedness is useful and 
>potentially protects applications just as well as full 
>well-formedness with better efficiency.

Simply not true. It doesn't come close to protecting applications as 
well as full checking.

>Allowing the application the option of avoiding repetitive or 
>unncessary well-formedness checking is a valid strategy.  Your 
>argument that data that a 'program' receives must always be fully 
>validated in any situation could just as easily be extended to 
>libraries and modules receiving DOM references or similar.  What one 
>system may do with libraries or software modules, another may do 
>with plugins and another may do with n-tier processing steps.  Does 
>the granularity of the implementation somehow necessarily change the 
>fundamental likelihood of corruption?

All published interfaces should verify their preconditions. Libraries 
should (and indeed the ones I write do) verify that input passed to 
them from outside the library is correct. For instance, if I publish 
an interface that expects a DOM object that can be serialized as 
namespace well-formed XML, and you pass me a DOM object that can't 
be, then the precondition is violated. The method should detect this 
and throw an exception. And indeed this is exactly what I do:

http://www.cafeconleche.org/XOM/apidocs/nu/xom/converters/DOMConverter.html#convert(org.w3c.dom.Document)

Cowboy coding like you suggest scares me. I certainly wouldn't want 
to have to trust any software written to such standards. Regrettably 
I know there's a lot of such software out there, which is more reason 
than ever for my software to be very careful about what it receives 
from your software.
-- 

   Elliotte Rusty Harold
   elharo@metalab.unc.edu
   Effective XML (Addison-Wesley, 2003)
   http://www.cafeconleche.org/books/effectivexml            
   http://www.amazon.com/exec/obidos/ISBN%3D0321150406/ref%3Dnosim/cafeaulaitA 




 

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS