This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.

Bug 5470 - 3.4.1 ambiguous/erroneous wording - prohib. subst. relation to elem. decl.
Summary: 3.4.1 ambiguous/erroneous wording - prohib. subst. relation to elem. decl.
Status: NEW
Alias: None
Product: XML Schema
Classification: Unclassified
Component: Structures: XSD Part 1 (show other bugs)
Version: 1.0 only
Hardware: All Windows 3.1
: P2 normal
Target Milestone: ---
Assignee: David Ezell
QA Contact: XML Schema comments list
URL: http://www.w3.org/TR/2004/REC-xmlsche...
Whiteboard:
Keywords:
Depends on: 3892
Blocks:
  Show dependency treegraph
 
Reported: 2008-02-08 23:30 UTC by C. M. Sperberg-McQueen
Modified: 2012-12-04 00:54 UTC (History)
1 user (show)

See Also:


Attachments

Description C. M. Sperberg-McQueen 2008-02-08 23:30:16 UTC
+++ This bug was initially created as a clone of Bug #3892 in order
to allow the issue to be tracked separately in XSD 1.0 and XSD 1.1 +++

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?