Re: Error in validator?

Bjoern Hoehrmann wrote:

>See section 19.1 of HTML 4.01:
>  "Beware that such validation, although useful and highly recommended,
>  does not guarantee that a document fully conforms to the HTML 4
>  specification. This is because an SGML parser relies solely on the
>  given SGML DTD which does not express all aspects of a valid HTML 4
>  document. Specifically, an SGML parser ensures that the syntax, the
>  structure, the list of elements, and their attributes are valid. But 
>  for instance, it cannot catch errors such as setting the width
>  attribute of an IMG element to an invalid value (i.e., "foo" or
>  "12.5"). Although the specification restricts the value for this
>  attribute to an "integer representing a length in pixels," the DTD
>  only defines it to be CDATA, which actually allows any value. Only a
>  specialized program could capture the complete specification of HTML
>  4.
>  Nevertheless, this type of validation is still highly recommended
>  since it permits the detection of a large set of errors that make
>  documents invalid."
    You've almost made my point: the quoted text says quite clearly that 
plain SGML validation is not enough, and that a specialized validation 
is needed to fully handle HTML.  That could easily be read to say that 
HTML is not exactly SGML, and so any place where HTML diverges from 
standard SGML practice should be handled by an HTML validator.  After 
all, it's called the "HTML Validator," not the "SGML Validator using a 
sort-of-HTML DTD."  HTML 4 says very clearly that class and ID names are 
case-sensitive, and the validator needs to reflect what the 
specification states.  Otherwise we're just inviting confusion in and 
disgust from people who use the validator.

>>At any rate, either the specification needs to be clarified via an 
>>official errata so that IDs are made case-insensitive, or else the 
>>validator needs to fall in line with the language in the specification. 
>Not possible, as Masayusa already pointed out.
    Sorry to be dense, but what part of his post precludes an updating 
of the validator or errata to the specification?  If class and ID names 
are case-insensitive, then the specification needs to say that 
consistently.  If they are case-sensitive, then it needs to say that. 
 Whichever Working Group is most closely related to HTML could issue the 
errata, or at least a clarification.  Having the specification at odds 
with itself is a sure recipe for inconsistent implementations, wasted 
effort by implementors and authors, and the sort of general badness 
which has gotten standards compliance into the state it is today (and 
has been for the last few years).

>>At a bare minimum, there should be an "explanation..." link from this 
>>error message which points to the reasons behind it being given, so that 
>>authors can understand the error and make up their own minds about what 
>>they should do. This will at least remove the perception that the W3C is 
>>once again inconsistent in interpreting its own specifications.
>Agreed, that should be done.
    Excellent-- although, as people can probably tell from my points 
above, I regard doing this as a temporary fix at best.

Eric A. Meyer .........................
Standards Evangelist ..................
TE/DS Team, Netscape Communications ...
Try the new Netscape 6.1 Preview Release!

Received on Monday, 9 July 2001 12:23:19 UTC