- From: James Graham <jg307@cam.ac.uk>
- Date: Mon, 11 Dec 2006 21:42:32 +0000
Ian Hickson wrote: > On Mon, 11 Dec 2006, Karl Dubost wrote: >> WebApps 1.0 doesn't have profiles attribute, and then can't be used for >> microformats. > > Microformats' use of the profile attribute is hypothetical. Most pages > that use Microformats don't use the profile="" attribute. We are now > migrating to a single-namespace approach where you register the keywords > instead of registering the domain for the namespace for the keywords. > Since in practice this is how Microformats are used anyway, this is > basically moving the spec towards a more realistic model. It is also a > much easier-to-implement model (no disambiguation needed). I am really quite concerned about the use of a global namespace to associate classnames with semantics. This raises the possibility of collisions between people who are expecting the class attribute to be an opaque, semantic-free string, similar to the way that it was defined in HTML 4, and those who are in the know about the existence of a global registry and diligently register all the classnames that they use before publishing anything. Those people who really are just using class names as site-specific style hooks must face the possibility that someone will register their "opaque" classname with some unexpected semantics or restrictions on its use and, suddenly, find their previously conformant documents rendered non-conformant and open to misinterpretation by any UA which happens to implement some feature based that classname. The only obvious way around this is to make all semanticless classes UUIDs of the form f5970ac9-2bf0-479d-841e-a60ab6e09c35 However this is clearly never going to happen; the increase in maintainance headaches caused by such abstract classnames would remove one of the big selling points of separating style out into stylesheets. One could argue that no developer should actually be using non-semantic or otherwise unregistered classnames. However this idea strikes me as utopian and, probably, misguided. For a start, it is clear that designers want precise layouts, and CSS selectors, especially as implemented in UAs, cannot give them the control that they need. Therefore using class as a pure style hook is not something that is going to go away. Moreover, mpt has rather convincingly argued that the relevant quantity to consider when assessing the desirability of a feature in HTML is not how many semantic possibilities it provides but whether or not it increases the "semantic utility" of the average document. By taking away a means of generating non-semantic style hooks through class, developers will instead abuse either existing elements or existing, registered, class attributes for a purpose other than that for which they are intended. This will effectively prevent any UA from building a feature around the semantics supposedly provided by that element/classname. I'm not sure what the solution to this problem is. I think the situation would be considerably better if people were able to register classname _prefixes_, so that people could use classnames of the form microformatName_propertyName with microformatName registered. This may require changes to the syntax of existing microformats for use in HTML 5. I don't know if people would find that acceptable, but I think the current proposal is, at least, unworkable. -- "The universe doesn't care what you believe. The wonderful thing about science is that it doesn't ask for your faith, it just asks for your eyes" --- http://xkcd.com/c154.html
Received on Monday, 11 December 2006 13:42:32 UTC