XML Schema Pt 1. Ed. 2 section 3.4.1 - ambiguous/erroneous specification

Regarding _XML_Schema_Part_1:_Structures_Second_Edition at
http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/:

In section 3.4.1, the spec says:

   {prohibited substitutions} determine whether an element declaration
   appearing in a ·content model· is prevented from additionally
   ·validating· element items with an xsi:type (§2.6.1) attribute that
   identifies a complex type definition derived by extension or restriction
   from this definition ...

The wording doesn't specify anything about the relationship between the
element declaration and the given type definition ("'this' definition").

It appears that the intent was to refer to any element declaration whose
type definition is the given definition.  If that's the case, the wording
should say that more explicitly.

(If the intent is something else, then obviously the wording still needs
to be clarified.)


Section 3.4.1 continues:

   ... or element items in a substitution group whose type definition
   is similarly derived.

That wording is also erroneous and/or ambiguous:

1. Element information items aren't actually in (aren't members of)
    substitution groups; only element _declarations_ are.

    Therefore, it seems that the intent was to refer to element information
    items (potentially) validated against element declarations (potentially)
    in substitution groups.

    Whatever the intent, the wording should be clarified (so a detailed
    analysis since as this isn't required to extract the intent).

2. Does "whose" refer:
    - to the substitution group's head or
    - to other element declarations that are (potential) members of the
      substitution group?

    That is, was the intent to talk about:
    - the derivation _to_ the type definition of the element declaration
      that is the head of the substitution group (from the given type
      definition) or
    - the derivation _from_ the given type definition used as the
      substitution group's head's type to member declarations' type
      definitions?




Daniel Barclay

Received on Wednesday, 18 October 2006 17:28:47 UTC