[ 
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

Reply via email to