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

On Mon, Oct 19, 2009 at 2:23 PM, Shelley Powers <shelley.just@gmail.com> wrote:
> On Mon, Oct 19, 2009 at 12:11 PM, Tab Atkins Jr. <jackalmage@gmail.com> wrote:
>> On Mon, Oct 19, 2009 at 11:31 AM, Shelley Powers <shelley.just@gmail.com> wrote:
>>> It is, but data-* does a poor job.
>>>
>>> SVGWeb can use a name, another JS library use the same name, and if a
>>> person wants to use both JS libraries together, they're screwed.
>>>
>>> The fact that data-* had no ability to enforce a consistent name clash
>>> prevention shows they're really not useful for decentralized
>>> extensibility.
>>
>> I can't tell from searching around on the svgweb demos how it uses
>> data-* attributes, but this really shouldn't be a problem in practice.
>>
>> If svgweb uses data-svgweb-* attributes, frex, then the chance of
>> clashing with another library is basically nil.  Before starting any
>> new library one should probably google for a bit to make sure that
>> one's preferred name for the project isn't already being used.
>>
>> Before you can say that data-* is "really not useful for decentralized
>> extensibility", you'd have to show how, even with this basic friendly
>> practice of "self-namespacing", there were clashes in data-* attribute
>> naming in practice with half-significant libraries.  Preferably, you'd
>> show how this actually caused some authors some grief, such as through
>> bug reports or forum posts complaining.
>>
>
> Actually, with all due respect, I don't need to show anything. I
> support the Microsoft initial effort, and believe that it is the
> approach we should working with, and assisting Tony in solving any
> problems with the approach.

Sorry, I was using the generic "you", because it's clumsy to use "one"
everywhere in modern english.  However, since you *did* try to assert
that data-* attributes are "really not useful for decentralized
extensibility" because they "[have] no ability to enforce a consistent
name clash prevention", then yes, the burden of proof *is* on you.
You're claiming that data-* suffers from a specific problem, so you
need to show that it actually does.

I can assert (with evidence) that this method of self-policed
"namespacing" works reasonably well in practice in other realms (as I
stated, jQuery's plugin architecture uses this method), so I think
it's reasonable to believe that it should work equally well for
data-*.

Or you can withdraw the assertion?

~TJ

Received on Monday, 19 October 2009 20:00:16 UTC