[
Lists Home |
Date Index |
Thread Index
]
At 17:38 28.2.2004, you wrote:
> > I decided not to call startDocument/endDocument-pair when BOM or XML
> > declaration or setting forced encoding fails. Reason for this was I wanted
> > document's actual encoding to be known at the startDocument stage (as
> there
> > isn't necessarily xml declaration present of course). Then again I'm
> > talking about my SAX C library Parsifal which is far away from "official"
> > SAX java implementations.
>
>Good point. However, the docs say this:
>
><quote>
>Note that the locator will return correct information only during the
>invocation
>SAX event callbacks after startDocument returns and before endDocument is
>called.
>The application should not attempt to use it at any other time.
></quote>
>Karl
Ok. This is something I've missed (Parsifal doesn't actually implement
locator but
provides similar info). So locator2's getEncoding isn't
available at startDocument stage 'cos startDocument is the first thing that
should be called even before checking any boms etc.
If getEncoding isn't available at startDocument, this means that if one for
some reason wants to roundtrip
input document to output (doing some modifications for example) using original
encoding, he/she has to "poll" getEncoding in some other callback (in
startElement perhaps?).
This might be an exceptional case, but I think somebody might want to do
this (?). OTOH there isn't necessarily byte order information available for
this either.
with respect,
Toni Uusitalo
|