[Bug 5282] UPA and overlapping substitution groups

http://www.w3.org/Bugs/Public/show_bug.cgi?id=5282

           Summary: UPA and overlapping substitution groups
           Product: XML Schema
           Version: 1.1 only
          Platform: PC
        OS/Version: Windows XP
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Structures: XSD Part 1
        AssignedTo: cmsmcq@w3.org
        ReportedBy: mike@saxonica.com
         QAContact: www-xml-schema-comments@w3.org


In Appendix L (Analysis of the UPA constraint) I think the condition

They are both element declaration particles one of whose {name} and {target
namespace} are the same as those of an element declaration in the other's
·substitution group·.

needs to be generalized to allow for the fact that two distinct element
declarations can now have overlapping substitution groups without either
element being in the substitution group of the other. It needs to be something
like:

They are both element declaration particles and their substitution groups
overlap.

Following this up, I notice that the definition of substitution group in 3.3
is:

[Definition:]   Every element declaration (call this HEAD) in the {element
declarations} of a schema defines a substitution group, a subset of those
{element declarations}. An element declaration is in the substitution group of
HEAD if and only if it is ·substitutable· for HEAD.

which relies on the definition of "substitutable". But the definition of
"substitutable" is parameterized by a blocking constraint (a subset of
{substitution, extension, restriction}. So we shouldn't be invoking
"substitutable" without saying what blocking constraint is to be used. There
seem to be several other places that use "substitutable" without supply such a
parameter.

(Also an editorial quibble: the phrase "one of whose {name} and {target
namespace}" is rather murky. It's easy to read it as saying that either the
{name}s must be equal, or the {target namespace}s must be equal.)

Received on Sunday, 25 November 2007 13:24:53 UTC