- From: Toby A Inkster <tai@g5n.co.uk>
- Date: Sat, 10 Jan 2009 16:44:58 +0000
- To: tom@tommorris.org, public-html@w3.org
Tom Morris wrote: > You can do that already with HTML 4 and XHTML 1.x using GRDDL. GRDDL > no longer works in HTML 5 as the profile attribute has been removed. > (We get some nonsense about GRDDL still working but just not > 'requiring' profile. This is nonsense. It's a bit like saying that > you've taken the wheels off the car but it still works because you can > turn the engine on.) I think much of this nonsense has arisen because GRDDL effectively uses the profile attribute for two purposes, and that has gotten people confused. By taking care of one of the purposes in HTML5, it has been assumed that GRDDL will thus work in HTML5; tick it off the list; done; taken care of. GRDDL uses the profile attribute firstly as a flag which says "this page has some GRDDL transformations linked from it". HTML5 has said that all pages may have GRDDL transformations linked from them, thus this flag is not needed in HTML5. Fair enough, you can say "this works in HTML5 without requiring a profile" and that will work. It introduces incompatibilities between how GRDDL is processed in HTML5 and how it is processed in earlier versions of (X)HTML, which is annoying (particularly as XHTML does not require a DOCTYPE, so there is no easy way of differentiating between XHTML5 and earlier versions of XHTML) but still doable. But GRDDL uses the profile attribute in another manner: a GRDDL agent is supposed to loop through all the page's profiles, perform an HTTP request for each one, and use the data it finds in them. If you say "this works in HTML5 without requiring a profile" then that is clearly nonsense. To loop through the profiles, there has to be some profiles! rel="profile" does work as a substitute here, but again it introduces inconsistencies between HTML5 and previous versions of (X) HTML. This syntax change for linking to profiles seems to be an entirely gratuitous one: if profiles are going to be allowed, then why change the syntax for them? As an analogy, there are many very good arguments both ways for dropping or retaining the <b> and <i> elements, but to suggest renaming them instead to <bold> and <italic> would be silly - even if the unabbreviated names would be clearer, the headaches caused by the syntax change would be massive. Similarly, rel="profile" does seem like a slightly nicer syntax than the profile attribute, but that small advantage comes at a cost of breaking compatibility with existing tools that use profiles. -- Toby A Inkster <mailto:mail@tobyinkster.co.uk> <http://tobyinkster.co.uk>
Received on Saturday, 10 January 2009 16:45:42 UTC