[ https://issues.apache.org/jira/browse/XERCESJ-1594?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Mukul Gandhi resolved XERCESJ-1594. ----------------------------------- Fix Version/s: 2.12.1 Resolution: Fixed The svn commits 1871903 (for the trunk) & 1871904 (for xsd 1.1 dev branch), fixes this issue. I'm marking this issue as 'Fixed'. > Key/Keyref are not validated correctly > -------------------------------------- > > Key: XERCESJ-1594 > URL: https://issues.apache.org/jira/browse/XERCESJ-1594 > Project: Xerces2-J > Issue Type: Bug > Components: XML Schema 1.0 Structures > Affects Versions: 2.11.0 > Reporter: Octavian Nadolu > Assignee: Mukul Gandhi > Priority: Major > Fix For: 2.12.1 > > > The Key/Keyref it is not validated correctly. I tested on the > xml-schema-1.1-dev branch. > You can reproduce it if you validate the XML instance "instance.xml" with the > XML Schema "schema.xsd". When you validate the XML file there should be two > errors because the "ref" elements refers to invalid keys. > As a hint, this happens only if the last "person" element does not have a > "ref" element as child. > ----instance.xml----------------- > <personnel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > xsi:noNamespaceSchemaLocation="schema.xsd"> > <person id="111"> > <name>name</name> > <ref>1</ref> > </person> > <person id="222"> > <name>name</name> > <ref>2</ref> > </person> > <person id="333"> > <name>name</name> > </person> > </personnel> > ---------------------------------------- > ----schema.xsd------------------ > <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> > <xs:element name="personnel"> > <xs:complexType> > <xs:sequence> > <xs:element ref="person" maxOccurs="unbounded"/> > </xs:sequence> > </xs:complexType> > <xs:key name="key"> > <xs:selector xpath="person"/> > <xs:field xpath="@id"/> > </xs:key> > <xs:keyref refer="key" name="keyref"> > <xs:selector xpath="person"/> > <xs:field xpath="ref"/> > </xs:keyref> > </xs:element> > <xs:element name="person"> > <xs:complexType> > <xs:sequence> > <xs:element name="name" type="xs:string"/> > <xs:element name="ref" type="xs:integer" minOccurs="0"/> > </xs:sequence> > <xs:attribute name="id" type="xs:integer" use="required"/> > </xs:complexType> > </xs:element> > </xs:schema> > ---------------------------------------- -- This message was sent by Atlassian Jira (v8.3.4#803005) --------------------------------------------------------------------- To unsubscribe, e-mail: j-dev-unsubscr...@xerces.apache.org For additional commands, e-mail: j-dev-h...@xerces.apache.org