[Python-Dev] PEP html display in IE
Mon, 11 Nov 2002 20:48:31 -0500
Thomas Heller wrote:
> Some PEPs, probably those formatted with reST, do not display any more
> in my IE 6 (Version 6.0.2600.0000), for example
> It says:
> Use of default namespace declaration attribute in DTD not
> supported. Error processing resource
> 'http://www.python.org/peps/pep-0258.html'. Line 8, Position 17
> <html lang="en">
I've put (truncated) variations of PEP 258 on the web with DOCTYPE,
comment, and/or "<?xml?>" removed. Please take a look at each
variation and tell me the results (any errors or differences seen):
G) http://docutils.sf.net/spec/pep-0258.html (to compare servers)
I don't have MSIE6 at home, and MacOS/MSIE5.1 has no problem with the
HTML, so I'm depending on reports.
The only thing I've done recently is to add an "AUTO-GENERATED HTML;
DO NOT EDIT!" comment to PEPs. I did the same thing to plaintext PEPs
though (PEP 0, PEP 1). Plaintext PEPs don't have the "<?xml?>"
processing instruction at the top, so it may be an interaction.
When I look at the PEP from the web (Win2K, MSIE 5.00.3315.1000), I'm
shown the XHTML source (*not* the rendered page), but no error. When
I look at the exact same HTML & stylesheet from my local HD, there's
no problem at all; I get the page rendered properly.
I ran http://www.python.org/peps/pep-0258.html through the XML
validator at http://www.stg.brown.edu/service/xmlvalid/ and it spewed
out a bunch of errors related to the XHTML DTD, and a couple for
pep-0258.html itself. The latter (marginwidth and marginheight
attributes not allowed on <body>) were easy to fix on both reST and
plaintext PEPs. The W3C XHTML DTD errors are not so easy to fix ;).
ReStructuredText PEPs use the following DOCTYPE line:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
Then I tried http://www.python.org/peps/pep-0001.html, a plaintext
PEP, and the results from XML validator were even worse. The DOCTYPE
for plaintext PEPs is:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
That's an SGML-based DTD though, not XML, so I'd expect the XML
validator to barf.
The W3C validator, http://validator.w3.org/, reported only the
document errors, no DTD errors. From all this I'm doubtful that the
DTD errors (or validator bugs and/or over-strictness) are the culprit.
I did a Google search for "Use of default namespace declaration
attribute in DTD not supported" and got a bunch of hits. Short form:
this appears to be an MSIE/MSXML bug. Highlights:
From: Dimitre Novatchev
In case you use msxml.dll version 8.0.5226.0 (from W2K SP1), then
you'll get the error message "Use of default namespace declaration
attribute in DTD not supported".
Subject: IE5 xmlns DTD attribute BUG was Re: Use of default
From: "Jonathan Borden" <email@example.com>
Date: Mon, 6 Nov 2000 15:10:40 -0500
Joshua Allen <firstname.lastname@example.org> wrote:
> I think this was lax conformance on part of the earlier parser,
> and has since been tightened. See
Err... no. This is a BUG. Explicitly an xmlns attribute can be
defaulted in a DTD (see section 4.3 in the article you quote
above.) This error message from IE5 is a non-conformance. See
http://www.w3.org/TR/REC-xml-names Namespace Constraint: Prefix
Declared if a question remains.
Another BUG in IE5s handling of DTDs ... parsing of DTDs (using
the Sept MSXML3) hangs the browser when the SYSTEM ID is a URI of
the form http://... but not when the same DTD file is located on
the local disc. (This behavior is not constant but reproducable
across multiple installations and people in multiple organizations
... i.e. I am not the only one having this problem).
So what's the solution? Ignore the browser bug or work around it?
-- David Goodger <email@example.com> http://www.python.org/peps/
Python Enhancement Proposal (PEP) Editor
(Please cc: all PEP correspondence to <firstname.lastname@example.org>.)