Re: ISSUE-4: Versioning, namespace URIs and MIME types

Ian Hickson wrote:
> 
> (Have no versions: CSS, all the DOM APIs, JS, URI, IRI, Unicode, MIME; 
> have versions that have no effect: SVG, HTML, MathML, XML; have versions 
> that have limited effect: HTTP. I'm not familiar enough with the GIF, PNG, 
> and JPEG formats to comment on them.)

RSS is an example of a family of formats[1] that has a version attribute 
that isn't even treated like a hint by most consumers.  RSS 1.0 and RSS 
2.0 barely even share common element names.  Yet people commonly copy 
and paste between them blithely unaware of the differences.

Some of the differences are fundamental: description is plain text in 
RSS 1.0, in RSS 2.0 per the spec it may be plain text or it may be 
entity encoded HTML with no way to distinguish in between.  No matter 
what the spec may say, effectively today all descriptions are uniformly 
treated as entity encoded HTML by virtually all producers and consumers. 
  Even in RSS 1.0.

Ian provides two RSS 1.0 feeds[2]: one that follows the spec, and one 
that is actually useful.  I maintain the Feed Validator and I don't even 
bother to police the plain text-ness of description in RSS 1.0.

This problem is way worse with title, there the specs and consumers 
(mostly) agree that it is plain text, yet the producers (mostly) agree 
that it is entity encoded HTML.  That's why you might see things like 
AT&T in headlines.

The only way forward in situations like this is to start over with a new 
format.  People will never stop using RSS, but people who have a need 
for the problems that Atom fixes will migrate.  And consumers will 
support both.

Someday the same will happen to HTML.  And you know, I'm quite OK with 
that.  If XHTML2 were an entirely new format that addressed some of the 
same problems as HTML but in a new, and to some better, way... well then 
we wouldn't be having this discussion at all.

Meanwhile, we need to face a reality that all browser vendors but one 
expressedly do now want to implement any more modes than they already 
have.  The one that has expressed an interest in doing so seems content 
for now to have that be vendor specific.  After first going a different 
way, they now agree that the default should be standards mode.  And are 
even considering -- I kid you not -- to make the URI itself effectively 
be the version identifier (search for "Compatibility View list updates" 
in [3]).

At the present time, it is in both producers and consumers best interest 
to ignore the plain-textness of descriptions in 1.0.  For us to have a 
meaningful and productive discussion on this topic in the context of 
HTML, we need to find an approach that makes it in the browser's best 
interest to actually follow the standard.

- Sam Ruby

[1] http://diveintomark.org/archives/2004/02/04/incompatible-rss
[2] http://ln.hixie.ch/rss/
[3] 
http://blogs.msdn.com/ie/archive/2009/02/16/just-the-facts-recap-of-compatibility-view.aspx

Received on Thursday, 19 February 2009 11:40:21 UTC