[Bug 4076] addB049: key with wider scope than keyref


           Summary: addB049: key with wider scope than keyref
           Product: XML Schema Test Suite
           Version: 2006-11-06
          Platform: PC
        OS/Version: Windows XP
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Microsoft tests
        AssignedTo: ht@inf.ed.ac.uk
        ReportedBy: mike@saxonica.com
         QAContact: public-xml-schema-testsuite@w3.org

This report relates to the Microsoft Additional test set, test group addB049,
which uses the schema test72232_1.xsd and the instance document

I'm hesitant to raise a bug on an issue concerning key and keyref with
different scope, because the spec here is so complex that there is probably
only one person who understands it and that person is not me. However, I
believe the instance is invalid, and Xerces appears to agree. The published
metadata says that the schema and instance are both valid.

References are to Validation Rule: Identity-constraint Satisfied

In this example the keyref is associated with element B, which is a child of
element root; the referenced key is associated with element root. The element
structure contains no recursion.

Under rule 4.3, "there must be a ·node table· associated with the {referenced
key} in the [identity-constraint table] of the element information item". Here
"the element information item" refers to element B. I believe that element B
has no node table associated with the referenced key, because an element only
acquires such a node table either (a) if the key is defined on that element, or
(b) if one of its children has a node table for the key.

Informally, the rule seems to be that a keyref can have wider scope than the
corresponding key, but it cannot have narrower scope.

Received on Wednesday, 13 December 2006 15:20:13 UTC