Re: Unusual validation errors on <link>

On Sun, 10 Oct 2004, Edmund Rhudy wrote:

> I've been trying to press an XHTML 1.1 strict page,

There's no such thing as XHTML 1.1 strict, since XHTML 1.1 defines only
one version and only one DTD (that corresponds to XHTML 1.0 more or less
but does _not_ have the word "strict" in its name).

>   	1.  	Line 5, column 65: character data is not allowed here
> 		...shortcut icon" href="favicon.png" type="image/png" />

This normally indicates that a classic HTML (non-XHTML) DOCTYPE is used.
It seems that the validator silently assumes HTML 4.01 Transitional,
because your DOCTYPE is not of a correct kind. If you check your DOCTYPE,
you'll note that is

<!doctype html public "-//W3C//DTD XHTML 1.1 Strict//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

but the one specified in the XHTML 1.1 specification is

<!DOCTYPE
 html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
 "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

and although some variaton is allowed by XML rules, the first quoted
string must be exactly as written - the specification explicitly says:
"If present, the public identifier included in the DOCTYPE declaration
must reference the DTD found in Appendix C using its Formal Public
Identifier."

Why doesn't the validator report an unrecognized public identifier, then?
Beats me. I think there have been various explanations in this list
that have said that the validator intentionally suppresses some errors
in things related to DTD processing. And this is not the only confusion
caused by such suppression.

> it would be nice to be
> able to display the valid XHTML image on the page without it producing
> any errors in the validator, even superfluous ones.  :)

Would it, really? In addition to spoiling your page with something that
has nothing to do with its content and purpose (cf. to the explanation at
http://www.cs.tut.fi/~jkorpela/html/validation.html#icon )
you would also be promoting a service that you have yourself found most
confusing.

(Actually, although it is the Right Thing to fix the DOCTYPE declaration,
the fixing does not, in fact, affect the page's rendering.
The DOCTYPE you have now is not recognized by browsers either, and
most DOCTYPE sniffers treat an unrecognized DOCTYPE the same way as
"standard" DOCTYPEs, i.e. select "standards" and not "quirks" mode.)

-- 
Jukka "Yucca" Korpela, http://www.cs.tut.fi/~jkorpela/

Received on Sunday, 10 October 2004 07:46:02 UTC