Re: Null change proposal for ISSUE-88 (mark II)

Anne van Kesteren, Sun, 04 Apr 2010 21:31:25 +0200:
> On Sun, 04 Apr 2010 19:07:19 +0200, Leif Halvard Silli wrote:
>> Anne van Kesteren, Sun, 04 Apr 2010 11:55:21 +0200:
>>> On Sun, 04 Apr 2010 04:37:55 +0200, Leif Halvard Silli wrote:
>>>> Ian Hickson, Sat, 3 Apr 2010 22:38:12 +0000 (UTC):
>>>>> Browsers _do_ implement it, contrary to HTML4, which intends it for
>>>>> servers, who don't implement it. You may wish to recheck your facts.
>>>> Incorrect: Browsers implement it *because* HTML4 say that can do it. It
>>>> is not against HTML4 to do so. See
>>> Actually, that does not talk about <meta http-equiv>, just about HTTP.
>> The point which you need to understand is that to HTML4, the wording
>> "http header" relates to both the content of <meta> http-equiv elements
>> as well as to the "proper" http headers which originate from the
>> server. Both are http headers.
> Maybe that is so (I have not seen it). However, that would only be 
> because HTML4 assumes servers will interpret <meta http-equiv> 
> elements and serve up the content with the headers specified with 
> those elements.

Counter example, from HTML4:

<META http-equiv="Default-Style" content="compact">

HTML4 describes how the User Agent can take the HTTP header 
"Default-Style" EITHER from the server OR from the <meta> http-equiv 
element. It also says that if both a server header and the http-equiv 
element is present, then the user agent should (contrary to what I have 
claimed as the golden rule!) give precedence to the http-equiv element: 

   If two or more META declarations or HTTP headers specify the 
   style sheet, the last one takes precedence. HTTP headers are
   considered to occur earlier than the document HEAD for this purpose.

This is directly analogous to how user agents give precedence to the 
<meta> content-language of the document, rather than to the server. It 
is also contrary to the order of precedence that Ian suggests. (His 
zero proposal makes the first, rather than the last <meta> c-l taking 

> However, servers do not do this, so the two are not 
> equivalent in practice. And therefore you are wrong.

The 'default-style' example directly contradicts this: it doesn't seem 
to be true that server consumption has always been considered <meta> 
http-equiv's sole purpose. Where do you take it from that http-equiv is 
*only* meant for server consumption?

Of course, if servers did sniff the <meta> content-language, and if 
they did serve it back to the user agents, then we could be certain 
that both the HTTP originated header as well as the HTML <meta> c-l 
element, would be literally equal in content. But in a such, ideal 
case, it would also not matter whether the user agents gave precedence 
to the server or to the page, since they would be equal.

leif halvard silli

Received on Sunday, 4 April 2010 21:39:22 UTC