Extensibility strategies, was: Deciding in public (Was: SVGWG SVG-in-HTML proposal)

Julian Reschke wrote:
> ...
> @data-* is only in HTML5, and the documentation makes it clear that it 
> has a different purpose. That being said, it has the same problem as 
> most of the other things you mentioned, the lack of a disambiguation 
> mechanism.
> ...

In the meantime, Lachlan Hunt wrote on the WHATWG IRC channel 
(<http://krijnhoetmer.nl/irc-logs/whatwg/20080801#l-424>):

> # # [23:21] <Lachy> "And authors want to add metadata. Instead of forcing it into containers that haven't been designed for it (@title, @data-*), let them do it properly." -- http://lists.w3.org/Archives/Public/public-html/2008Aug/0023.html
> # # [23:21] <Lachy> I don't get what other way would be considered the proper way to embed metadata, beyond the mechanisms designed for adding metadata?!
> # # [23:23] <Lachy> if, as Julian claims, title and data-* weren't designed for adding some type of metadata, then I must be missing something. 

Indeed.

@title is metadata, but it's not designed for non-human-readable 
information (so using abbr/@title to provide a machine-readable data in 
microformats turned out to be a problem).

@data-* has been "designed" for providing additional data to scripts 
*within* the page, not for anything else:

"Custom data attributes are intended to store custom data private to the 
page or application, for which there are no more appropriate attributes 
or elements." -- <http://www.w3.org/html/wg/html5/#custom>

So if you use them for something else, such as providing semantic 
information to other applications (AT, crawlers, plugins...), you are 
abusing it, and follow the pattern I was complaining about in the first 
place (abusing existing elements to work around the lack of 
extensibility). Same for @title, btw.

BR, Julian

Received on Saturday, 2 August 2008 05:10:39 UTC