[whatwg] WA1: <meta> attribute requirements

Ian Hickson wrote:
> On Tue, 19 Jul 2005, fantasai wrote:
> 
>>>I don't understand the point in making this code:
>>>
>>>   // this element will be used later
>>>   var meta = document.createElement('meta');
>>>
>>>...non-conformant.
>>
>>Hmm. I think you need to think a bit on the conformance requirements you 
>>want to have for documents. If you're interpreting "required" like that, 
>>you'd run into the same problem with *any* required attribute or child 
>>content. It's not a useful definition.
> 
> I don't understand why this is a "problem". It seems quite important that 
> content be conformant whether it is in a document or orphaned.

Unless you are going to provide a method that automatically adds all the
orphaned node's required attributes and children upon creation, you
cannot avoid an intermediate state in which the node does not fulfill its
conformance requirements.

My point is, your argument that "requiring the 'name' attribute on <meta>
would make a script-created <meta> element non-conformant upon creation,
so therefore it should not be a required attribute" applies equally to any
other similar requirement you place on any other element. If that is your
argument for why the 'name' attribute should not be required, then you must
also argue that, for the same reason, no other element should have a required
attribute or child -- else you are being inconsistent in your logic.

> If someone does:
> 
>    // this element will be used later
>    var ul = document.createElement('ul');
>    ul.appendChild(document.createElement('p'));
> 
> ...then the |ul| variable is non-conformant, and I see no reason to allow 
> that at all, scripted or not scripted.

I agree.

~fantasai

Received on Tuesday, 19 July 2005 05:35:10 UTC