Hi,

I have a little problem with Xerces 2.6.2 and keyref's. According to my
understanding of the standard, the line
"<ref x="1" y="4"/>" in the sample XML file should produce an error.

Bug or have I misunderstood the standard?

Thanks for your help

Sample XML file
<?xml version="1.0" encoding="windows-1252"?>
<test
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
  xsi:noNamespaceSchemaLocation="urn:test.xsd"
>
  <value a="1" b="3"/>
  <value a="1" b="3"/>
  <value a="2" b="4"/>

  <ref x="1" y="3"/>
  <ref x="2" y="4"/>
  <ref x="1" y="4"/>
</test>


schema file
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema";>
  <xs:element name="test" type="T_test">
    <xs:key name="test_key">
      <xs:selector xpath="value"/>
      <xs:field xpath="@a"/>
      <xs:field xpath="@b"/>
    </xs:key>

    <xs:keyref name="test_keyref" refer="test_key">
      <xs:selector xpath="ref"/>
      <xs:field xpath="@x"/>
      <xs:field xpath="@y"/>
    </xs:keyref>
  </xs:element>

  <xs:complexType name="T_test">
    <xs:sequence>
      <xs:element name="value" maxOccurs="unbounded">
        <xs:complexType>
          <xs:complexContent>
            <xs:restriction base="xs:anyType">
              <xs:attribute name="a" type="xs:string" use="required"/>
              <xs:attribute name="b" type="xs:string" use="required"/>
            </xs:restriction>
          </xs:complexContent>
        </xs:complexType>
      </xs:element>
      <xs:element name="ref" maxOccurs="unbounded">
        <xs:complexType>
          <xs:complexContent>
            <xs:restriction base="xs:anyType">
              <xs:attribute name="x" type="xs:string" use="required"/>
              <xs:attribute name="y" type="xs:string" use="required"/>
            </xs:restriction>
          </xs:complexContent>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>
</xs:schema>


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to