[
Lists Home |
Date Index |
Thread Index
]
"Thomas B. Passin" wrote:
>
> [Elliotte Rusty Harold]
> >...
> > According to the SAX JavaDoc,
> >
> <http://www.saxproject.org/apidoc/org/xml/sax/ContentHandler.html#startPrefi
> xMapping(java.lang.String,%20java.lang.String)>
> >
> > There should never be start/endPrefixMapping events for the "xml"
> > prefix, since it is predeclared and immutable.
> >
> > Thus Piccolo is wrong. You should report a bug to Piccolo's maintainer.
> >
>
> This conclusion is not clear to me. If the "xml" prefix is by definition
> bound to that one namespace, seems to me that it __should__ be reported
> whether or not a namespace declaration exists for it in a document.
This quandry is an unfortunate artifact of the SAX interface.
Isn't it better to try to report as closely as possible those things which were encoded?
If one neglects this principle, what happens when one reserializes a document
which did not contain an encoding feature for which an event was fabricated? for
example the xmlns:xml='xxx' declaration. Perhaps the serialization code would
suppress the encoding.
> If the
> prefix is used and there is no declaration, the namespace should be reported
> anyway.
Wouldn't the better behaviour be to report the respective names as if the
namespace had been declared.
> If an incorrect namespace were used, what would be the right error
> behavior?
Is there actually anything in the spec which precludes rebinding "xml"?
> Report the right namespace and continue?
>
> I do not know how most parsers handle it, though. I remember hacking 4xslt
> or 4xpath (I think it was) once because it insisted on having the namespace
> supplied and generally it is not supplied that in practice.
>
...
|