[Bug 22008] Make it clear that there are syntax differences, add one about id attribute

https://www.w3.org/Bugs/Public/show_bug.cgi?id=22008

--- Comment #1 from Glenn Adams <glenn@skynav.com> ---
(In reply to comment #0)
> At the start of clause “2 Syntax”, the statement “HTML defines an HTML
> syntax that is compatible with HTML4 and XHTML1 documents published on the
> Web” should be less absolute, e.g. the word “mostly” could be added before
> “compatible”. In subclause 2.4, e.g. “Attributes have to be separated by at
> least one whitespace character” means that some valid and existing HTML 4.01
> documents are not valid HTML5.

Could you give an example of valid attributes in HTML 4.01 not separated by at
least one whitespace character?

Clearly this wouldn't work in the case of unquoted or valueless attributes, but
even in the case of quoted value attributes, whitespace separation is required
by [1]:

"Any number of (legal) attribute value pairs, separated by spaces, may appear
in an element's start tag."

[1] http://www.w3.org/TR/REC-html40/intro/sgmltut.html#h-3.2.2

> 
> The following information should be added to subclause 2.4:
> 
> The id attribute syntax now allows any nonempty string that does not contain
> space characters. This is much more liberal than the HTML 4 syntax, but on
> the other hand it disallows spaces at the start and at the end (id=" foo "
> is valid HTML 4 but not valid HTML5).

I also see that Bert Bos raised this point in [2]. AFAICT, reviewing the
current HTML 5.0 CR [3], I don't see that this has changed; i.e., HTML5 does
not prescribe attribute value normalization while HTML4 does (via SGML). This
seems to present a significant change in backward compatibility.

[2]
http://w3-org.9356.n7.nabble.com/html5-Attribute-value-normalization-is-not-backwards-compatible-td193859.html
[3] http://www.w3.org/TR/2012/CR-html5-20121217/

-- 
You are receiving this mail because:
You are the QA Contact for the bug.

Received on Saturday, 11 May 2013 17:40:35 UTC