That's surely the whole point. The guy who writes the
application and the guy who chooses the parser are not the
same person, so the former wants to check at run-time that
the latter hasn't screwed him up.
Incidentally, the thing that's most likely to go wrong when
you switch parsers, in my experience, is that character data
is split up differently. Every time I use SAX, I forget that
the parser is allowed to hand me data one character at a
time if it chooses. Perhaps someone should write a SAX
parser that does just that, so I can test that my
application would cope with it.
Mike Kay