Lists Home |
Date Index |
At 11:35 PM -0500 11/8/03, Alessandro Triglia wrote:
>Who has made such a proposal??
Go back to the very first post in this thread
Bob Wyman wrote:
SAX assumes that the data it is reading is all of "character"
type. SAX has no access to a schema file and thus has no idea of the
real type of the characters it reads. However, a binary encoding will
typically pass data in a form more appropriate for its type. Thus, an
integer will be passed as something like a 32-bit value, not a string
of characters. So, to build a "pure SAX" interface to a binary
encoding, you would have to convert all the binary values to
characters before passing them to the SAX event handlers. Of course,
the first thing a lot of event handlers will do is convert the strings
back into binary types like integers. The result is, of course, often
wasteful silliness. It causes performance problems, memory
fragmentation due to all the string allocations, etc.
I read this paragraph as saying there's already binary data in the
stream, and he just wants to convert that to the local type rather
than converting it to a string and then converting that to the local
Later in the thread Liam Quin is even clearer:
If you choose to pass the typed value "integer: 7" then any
interchange encoding worth its salt will transmit that value,
possibly using as few as 3 or 4 bits.
If I have misinterpreted their language, I welcome clarification. If
they really do believe that all XML data should be passed as strings,
possibly encoded as binary but still able to be losslessly decoded
into strings, then please say so. HOweever, I don't think that's the
case, and even if it is for Liam and Bob, there have still been many
proposals over the years for doing exactly this. Therefore I remain
convinced that if this goes forward it will be inundated with the
<sarcasm>obvious</sarcasm> extension of passing binary data rather
these <sarcasm>horribly inefficient</sarcasm> strings.
Elliotte Rusty Harold
Effective XML (Addison-Wesley, 2003)