Re: Choosing namespaces syntax for MathML

White Lynx
> Well, there is a bug in MSIE's XML parser that breaks all pages that
> declare default attribute value in DTD, so if there were
> recommendations against using attlist declarations they were probably
> motivated by this bug.  

It doesn't apply to _all_ attribute defaults, just defaulting of
namespace declarations. Also it's not really a "bug" as in an unintended
mistake in the code, it's a documented, intentional, non-conforming
behaviour (Not that that makes it any better).

Paul
> I think it is fundamentally wrong to believe that a non-validating XML 
> parser will not read a DTD if referenced.

It's wrong to assume that it won't be read but it's just as wrong to
assume it will be read, as the XML spec makes this optional (and as far
as I know IE is the only common browser which _does_ read external DTD
files in its default configuration).

> The bug you are alluding to in MSIE/MS-XML is scary and requires a 
> workaround I'm afraid, but it doesn't mean authors should be authoring 
> with it, or ?

I think that one should try to avoid putting non conforming documents
anywhere, but if you have a choice between two conformant ways of
marking up a document, and one works on the browser that's used by some
significant percentage of your potential audience, and one does not,
then it might make sense to avoid problems with that browser, it's a
personal judgement call, with pros and cons both ways.

Actually in the case of MathML if you don't use the XSL stylesheet and
instead use MathPlayer's auto-detection of XHTML+MathML I don't think
the issue arises as the document is not parsed by msxml in that case,
but otherwise if the dcument is sent with an XML mime type to IE, it
will be parsed by MSXML3 and you will be hit by this. (This is why IE
can't read the XHTML DTD for example, the XHTML+MathML DTD does not
default the namespaces for this reason).

David

Received on Thursday, 14 December 2006 12:18:36 UTC