You are viewing a plain text version of this content. The canonical link for it is here.
Posted to j-dev@xerces.apache.org by "Mukul Gandhi (Jira)" <xe...@xml.apache.org> on 2021/11/20 09:02:00 UTC

[jira] [Comment Edited] (XERCESJ-1728) xsd:base64binary parser behavior change

    [ https://issues.apache.org/jira/browse/XERCESJ-1728?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17446769#comment-17446769 ] 

Mukul Gandhi edited comment on XERCESJ-1728 at 11/20/21, 9:01 AM:
------------------------------------------------------------------

I've tested your bug report, with XercesJ 2.12.1, and get opposite results than what you've said as following,

"This now causes a validation issue however as an instance value of 7dEc which used to be viewed as legal is now illegal".

With the XSD schema that you've shared, for me, an XML instance value 7dEc is reported as valid.

I find, XercesJ 2.12.1's compliance with XSD type xsd:base64binary, as fine.


was (Author: mukul_gandhi):
I've tested your bug report, with XercesJ 2.12.1, and get opposite results than what you've said as following,

"This now causes a validation issue however as an instance value of {{7dEc}} which used to be viewed as legal is now illegal".

With the XSD schema that you've shared, for me, an XML instance value {{7dEc is reported as valid.}}

I find, XercesJ 2.12.1's compliance with XSD type xsd:base64binary, as fine.  

> xsd:base64binary parser behavior change
> ---------------------------------------
>
>                 Key: XERCESJ-1728
>                 URL: https://issues.apache.org/jira/browse/XERCESJ-1728
>             Project: Xerces2-J
>          Issue Type: Bug
>    Affects Versions: 2.11.0, 2.12.0, 2.12.1
>            Reporter: David Ritter
>            Priority: Minor
>
> I've recently upgraded my project from Xerces-J 2.7.0 to Xerces-J 2.12.1 and I'm seeing a change in base64binary enumeration parsing behaviour
> Given this schema
> {code:xml}
> <?xml version='1.0'?>
> <xsd:schema xmlns:xsd='http://www.w3.org/2001/XMLSchema'>
>   <!-- Schema to test facets for the xsd:base64Binary datatype. -->
>   <xsd:element name="facetTest" type="FacetTestComplexType"/>
>   <xsd:complexType name="FacetTestComplexType">
>     <xsd:sequence>
>       <xsd:element name='enumeration' type='EnumerationType' minOccurs="0"/>
>     </xsd:sequence>
>   </xsd:complexType>
>   <!-- ***** Enumeration ***** -->
>   <xsd:simpleType name='EnumerationType'>
>     <xsd:restriction base='xsd:base64Binary'>
>       <xsd:enumeration value='Ab1+'/>
>       <xsd:enumeration value='7 d Ec'/>
>     </xsd:restriction>
>   </xsd:simpleType>
> </xsd:schema>
> {code}
> Our code calls {{xsSimpleType.getLexicalEnumeration()}} and iterates over the list of enumeration values. Prior to Xerces-J 2.11.0, {{<xsd:enumeration value='7 d Ec'/>}} would be returned as {{7dEc}}. From Xerces-J 2.11.0 on it now returns {{7 d Ec}}.
> This now causes a validation issue however as an instance value of {{7dEc}} which used to be viewed as legal is now illegal.
> Is this a bug or expected change in behaviour and my application needs to be updated?



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

---------------------------------------------------------------------
To unsubscribe, e-mail: j-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: j-dev-help@xerces.apache.org