web site problem: 4.01 DTD not found at indicated URL...

The HTML 4.01 specification indicates specifies the following DTD to be used
in the <!DOCTYPE> specifier:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
   "http://www.w3.org/TR/html4/strict.dtd">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
   "http://www.w3.org/TR/html4/loose.dtd">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
   "http://www.w3.org/TR/html4/frameset.dtd">

However your web site does not publish the DTD at the indicated addresses,
because there is no "/TR/html4/" path, but instead the documents are in
"/TR/html40/".

I think that there's no need to change the specification, however your web
site should include a symbolic link in the "/TR/" folder from "html4/" to
"html40/", so that the DTD can be successfully described.

I think this is an issue with external HTML validators, which try to check
the reference to the DTD (to update its cached definition). But if the DTD
does not exist, many validators ignore the <!DOCTYPE> element, and figure
out its own "compatibility-mode" DTD, which does not enforce 4.01 rules.

You can see the problem when using the online HTML validator from
http://www.netmechanic.com/ (click on the "HTML Check & Repair" tool).
Most of time, NetMechanic does not validate attributes specified in HTML
4.01 like "id=", "hreflang=", ... and it signals an error in the DTD
specified for the document: this is because the 4.01 specification can not
be found, and then NetMechanic uses the previous 4.0 specification only !

http://www.w3.org/TR/REC-html40/strict.dtd
http://www.w3.org/TR/REC-html40/loose.dtd
http://www.w3.org/TR/REC-html40/frameset.dtd

Received on Saturday, 24 March 2001 08:32:25 UTC