Sections 6.1 tries to explain this necessity at some length. However,
you are not alone in your view that this is superfluous; David Megginson
has no problem with elements & attributes having "the same name", thinks
the applications should sort it out. A WG majority eventually decided
that interoperability was improved by sorting the classes of names
into partitions.
>1. any element-relative attribute-name qualification, for example for the
>purpose of xlink or xsl specification could be accomplished with an additional
>clause which constrained the element type name.
True, but enough of us liked the idea of a standalone name for
unqualified attributes that we wrote it into the spec.
>2. since the element type name needs in itself to be unique there is no
>advantage to additional qualification for the attribute names for the purpose
>of attribute declaration.
There is if you want to have a way to write down an identifier
for such an attribute. The key question is "what information do you
need to have to find the right markup?" The answer is "the attribute
name and the element name and (if any) namespace". The real reason
we got there was in asking the question, WRT the following:
<HTML:A HREF="xxx.x">
what namespace is the HREF attribute in? The natural language answer
is "in the namespace of HTML's A element". All the stuff in section 6
is an attempt to formalize that. -Tim