Thanks to Eric Bohlman and Richard Lander for their replies on this thread.
I also corresponded with the MSXML parser's lead developer, who confirmed
that this behavior is by design, and fully compliant with the XML Rec ("2nd
edition"). I'll get in touch with the other parsers' authors and see if
they've got an opinion one way or the other (and of course, report back if so).
There's an interesting little wrinkle here (I'm sure I'm not the first to
comment on it). Roughly expressed, that is: A validating parser (which
MSXML is, by default) must validate EVERYTHING, even in contexts where it
doesn't necessarily make "sense" to do so. For example, the documents in
this case are all being transformed to HTML, which doesn't have a direct
analogue to SGML's NOTATION mechanism; hence the need to validate on that
portion of the DTD seems academic *in this context*.
Ah, well. Will let you know if I turn up anything from the other parsers.
John E. Simpson | "He asked me if I knew what
http://www.flixml.org | time it was. I said, 'Yes, but
XML Q&A: http://www.xml.com | not right now.'" (Steven Wright)