W3C home > Mailing lists > Public > xml-names-editor@w3.org > August 2000

Determining attribute uniqueness seems to require namespace prefix in Infoset

From: John Boyer <jboyer@PureEdge.com>
Date: Fri, 11 Aug 2000 10:15:32 -0700
To: <xml-names-editor@w3.org>
Cc: <www-xml-infoset-comments@w3.org>, "XML DSig" <w3c-ietf-xmldsig@w3.org>
Dear Editors,

Please see the first example of Section 5.2 and the sentence immediately
above it, which says "Note that default namespaces do not apply directly to
attributes" [1].  One chairman of the XML DSig group recently commented that
the word 'directly' may be intended to indicate that unqualified attributes
inherit their namespace setting from the parent element.  This seems
sensible to me as the href attribute should be in the same namespace as the
parent element <a>.

[1] http://www.w3.org/TR/REC-xml-names/#defaulting

However, now look at the last example of Section 5.3.  The second occurence
of <good> has attributes a and n1:a.  This is declared as legal, but if 'a'
inherits its namespace setting from good, then a and n1:a appear to be

Whether this is a violation of condition 2 depends on one's frame of mind.
The first attribute 'a' does not have a prefix, so technically a and n1:a do
not have 'prefixes which have been bound to namespace names that are
identical'.  However, if not having a prefix is equivalent to having the
empty string as a prefix (where the empty string prefix is bound to the
default namespace URI), then the second <good> violates condition 2.

The latter interpretation is consistent with how everyone actually thinks of
attributes.  An attribute should be uniquely determined by its namespace URI
and local name.  Moreover, an attribute (such as the href in section 5.2)
should inherit the namespace URI of its parent element, even if the parent
inherits the default namespace.

By comparison, if the second <good> is indeed legal, then two attributes
having the same local name and namespace attribute would need to be further
tested for equality by comparing their namespace prefixes.  This has obvious
implications for the document Infoset [2]-- particularly, the fact that the
namespace prefix declaration of nodes should be retained.  By the way, for
C14N [3], the namespace prefix should be retained, so it would be mighty
good of the infoset folks to add it.

[2] http://www.w3.org/TR/xml-infoset
[3] http://www.w3.org/TR/xml-c14n

Could you please advise us on the correct interpretation (and fix the error
if indeed there is one)?

     John Boyer
      Development Team Leader,
      Distributed Processing and XML
      PureEdge Solutions Inc.
      Creating Binding E-Commerce
      v: 250-479-8334, ext. 143  f: 250-479-3772
      1-888-517-2675   http://www.PureEdge.com

(image/gif attachment: LINE.gif)

(image/jpeg attachment: PureEdge.jpg)

Received on Friday, 11 August 2000 13:15:38 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 23:13:24 UTC