[ https://issues.apache.org/jira/browse/XERCESJ-1489?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Mukul Gandhi updated XERCESJ-1489: ---------------------------------- Fix Version/s: 2.12.0 > XML Schema 1.1: improvements to assertion facet evaluation on schema > simpleType on attributes > --------------------------------------------------------------------------------------------- > > Key: XERCESJ-1489 > URL: https://issues.apache.org/jira/browse/XERCESJ-1489 > Project: Xerces2-J > Issue Type: Improvement > Components: XML Schema 1.1 Datatypes > Affects Versions: 2.11.0 > Reporter: Mukul Gandhi > Assignee: Mukul Gandhi > Priority: Minor > Fix For: 2.12.0 > > Attachments: assert_attribute_testcases.zip > > > I made a SVN commit r1044567 yesterday with a fix related to assertion facet > evaluation as mentioned in the subject of this bug report. This particular > commit solved this issue, and I thought it's probably good to create a JIRA > issue to explain what the issue exactly was and how this commit solved this > issue. Any comments about this fix from fellow committers and Xerces > dev-community would be welcome. > Please consider these sample XML and schema documents. > XML 1: > <A x="100" /> > XML 2: > <A x="101" /> > XML Schema 1.1 document: > <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> > <xs:element name="A"> > <xs:complexType> > <xs:attribute name="x" type="MYINT" /> > </xs:complexType> > </xs:element> > > <xs:simpleType name="MYINT"> > <xs:restriction base="xs:int"> > <xs:assertion test="$value mod 2 = 0" /> > </xs:restriction> > </xs:simpleType> > > </xs:schema> > (the XML schema simpleType in the above schema specifies, that an atomic > value in instance document must be an even integer) > The above schema document must report XML document 1 as valid while XML > document 2 as invalid. In the specified schema the simpleType "MYINT" would > validate the relevant XML attribute's value and the assertion XPath context > variable $value would be assigned the attribute's value (with necessary > schema type annotation). > The code-base in Xerces 2.11.0 release didn't set the correct simpleType > variety on the Xerces schema assertion object XSAssertImpl (when that relates > to XML attributes), in case the variety was 'atomic' (but the implementation > was correct for simpleType varieties 'list' and 'union'). This defect caused > such assertions (as specified in an example above) to be skipped from > evaluation. > The commit I've mentioned has solved this particular issue. > Thanks. -- This message was sent by Atlassian JIRA (v6.3.4#6332) --------------------------------------------------------------------- To unsubscribe, e-mail: j-dev-unsubscr...@xerces.apache.org For additional commands, e-mail: j-dev-h...@xerces.apache.org