[
https://issues.apache.org/jira/browse/XERCESJ-1594?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Mukul Gandhi updated XERCESJ-1594:
----------------------------------
Fix Version/s: (was: 2.12.0)
> 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
>
> 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: [email protected]
For additional commands, e-mail: [email protected]