2.2 Undefined Tag and Attribute Names
An accepted networking principle is to be conservative
in that which one produces, and liberal in that which
one accepts. HTML user agents should be liberal except
when verifying code. HTML generators should generate
strictly conforming HTML.
The behavior of HTML user agents reading HTML documents
and discovering tag or attribute names which they do not
understand should be to behave as though, in the case of
a tag, the whole tag had not been there but its content
had, or in the case of an attribute, that the attribute
had not been present.
One thing that worries me about it, is that some people seem to take
the second paragraph as a carte blanche to extend HTML with arbitrary
tags the way they want to, without having consulting with anybody
else.
They also take this to mean "all web browsers will ignore all unknown
tags and attributes".
I don't think this was the intention, so maybe a clarification is in
order? I know it says *should* rather than *must*, but this hasn't
stopped people from interpreting it in the ways stated above.
Could someone point to this draft, and say that an HTML parser based
on a full SGML parser and the HTML 2.0 DTD, that didn't follow
paragraph 2, wasn't a real HTML parser according to the draft?
- Steinar
[1] ftp://ds.internic.net/internet-drafts/draft-ietf-html-spec-01.txt