data-* attributes [was: Re: ISSUE-41/ACTION-97 decentralized-extensibility]

Leif Halvard Silli wrote:
> Shelley Powers On 09-10-19 14.19:
> 
>> On Mon, Oct 19, 2009 at 7:13 AM, Anne van Kesteren <annevk@opera.com> 
>> wrote:
>>> On Mon, 19 Oct 2009 14:03:33 +0200, Shelley Powers 
>>> <shelley.just@gmail.com>
>>> wrote:
>>>> Anne, but then don't we have the use of URIs with namespaces? The only
>>>> difference is we specify the URI in one place and make a small, easy
>>>> to use alias for use elsewhere. If anything forcing people to repeat
>>>> an entire URI with each class name...that could add up, quickly and
>>>> significantly.
>>> I wasn't aware that the concept of distributed extensibility or
>>> decentralized extensibility came with a particular syntax. I'm not 
>>> convinced
>>> that authors will have trouble with long identifiers. I actually think
>>> identifiers with a level of indirection will be more difficult to 
>>> handle.
>>>
>>>
>>>> And that doesn't account for the need to extend HTML with elements.
>>>> Class names could possibly work as attributes, but not as elements.
>>>> With namespaces we can create both elements and attributes. A superior
>>>> option.
>>> For the widgets scenario one could just use data-* attributes. Also, 
>>> a lot
>>> of added complexity is not necessarily superior in my book.
>>
>> But data-* are neither decentralized, nor particularly extensible. In
>> fact, we've determined in previous discussions that they're not meant
>> to be used for anything other than by an author for a single author's
>> needs.
> 
> In that regard, I wonder why SVGweb operates with a data-path="" 
> attribute in the Internet Explorer part of that solution ...

Unless I have misunderstood something, that is a perfectly acceptable 
use of data-*; a third party js-library is not considered independent of 
the site (since the site must decide to import the js-library into its 
pages).

To take a slightly different example, it is OK to have data-marquee that 
is used by a script that the author includes in the page to implement 
marquee effects. But it is not permitted for a user agent to provide its 
own marquee effects based on the presence of a marquee attribute.

Is the distinction clear now? It is likely that the spec needs 
clarification on this point.

Received on Monday, 19 October 2009 15:23:21 UTC