Incorrect cross-reference for attribute validation

Remarkably, there seems to be nothing in the rules for validity of an
element that says the attributes of the element must be valid against their
declared types!

Validation Rule: Element Locally Valid (Complex Type) says:

3.1 If there is among the {attribute uses} an attribute use with an
{attribute declaration} whose {name} matches the attribute information
item's [local name] and whose {target namespace} is identical to the
attribute information item's [namespace name] (where an ·absent· {target
namespace} is taken to be identical to a [namespace name] with no value),
then the attribute information must be ·valid· with respect to that
attribute use as per Attribute Locally Valid (Use) (§3.5.4). 

But Attribute Locally Valid (Use) (§3.5.4) says very little, in particular
it doesn't say that the attribute's value must be valid according to the
attribute's type.

I suspect there should be a reference to Attribute Locally Valid (§3.2.4)
either in place of, or in addition to, the existing reference. Or perhaps
Attribute Locally Valid (Use) (§3.5.4) should refer to Attribute Locally
Valid (§3.2.4).


Michael Kay

Received on Thursday, 4 January 2007 15:48:44 UTC