This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.
The [element declaration] and [type definition] properties on elements are described as applying whenever an element is valid against an element declaration / type definition. On the face of it, the text implies that every element must be validated against every element declaration and type definition in the schema. The text should say that the [element declation] is present if the element is valid against its context-determined declaration, and that the value of the property is that context-determined declaration. And so similarly for [type definition], with the added possibility of the value having been specified in xsi:type. The WG discussed this and agreed in principle to make such a change, at its meeting of 8 September 2006. (Some WG members were, I think, inclined to believe that the existing text is not really erroneous when read in the proper light. But they were unable to make others in the WG see that proper light, and they were also willing to countenance a change in wording, even if strictly, by their lights, unnecessary.) This bug report is for XML Schema 1.1. The analogous report for 1.0 is bug 3713.
A proposal to resolve this issue is at http://www.w3.org/XML/Group/2004/06/xmlschema-1/structures.b3714.200609.html (member-only link). In essence, it (a) changes the prose that introduces properties like [element declaration], replacing descriptions of the form If and only if an element information item is valid with respect to an element declaration as per Element Locally Valid (Element) (§3.3.4), then [the property is present] with descriptions of the form If and only if an element information item is valid with respect to its governing element declaration as defined by Element Locally Valid (Element) (§3.3.4), (b) makes clear that the [element declaration], [attribute declaration], and/or [type definition] properties of elements and attributes have the governing declaration and the governing type definition as their value, if they have a value; (c) introduces and defines the notion of an information item being governed by a declaration and a type definition (this is distinct from, although closely related, to the existing concepts of context-determined declaration and Test(), but no effort is made in the proposal to unsnarl the relations among all the relevant terms; bug 3725 can be used to track that problem), (d) replaces the terms 'local type definition' and 'actual type definition' with 'instance-specified type definition' and 'governing type definition' (e) specifies how the governing declaration and the governing type definition are found for elements and attributes; (f) moves the definition of 'context-determined declaration' out of the Validation Rule: Schema-Validity Assessment (Attribute), since the definition is used outside that validation rule; (g) removes the clauses which suggest that an element cannot be valid against any element declarations except its context-determined declaration or a stipulated declaration; replace them with a reference to the element's governing declaration; (h) introduces the term 'validly substitutable' to describe the relation between types which must hold when an xsi:type attribute is used; (i) makes some minor editorial changes in passing.
The proposal described in comment #1 was accepted by the WG on 6 October 2006; the appproved wording is in the status quo version of the spec and will be included in the next public release of the document.