Hi,

On Wed, 2005-05-25 at 18:16 +0200, GUY Fabrice wrote:
> Hi,
> 
> I have this schema :
> <?xml version="1.0" encoding="ISO-8859-1"?>
> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema";>
>   <xsd:element name="ELEMENTS">
>     <xsd:simpleType>
>       <xsd:union>
>         <xsd:simpleType>
>           <xsd:restriction base="xsd:int">
>             <xsd:minInclusive value="10"/>
>             <xsd:maxInclusive value="20"/>
>           </xsd:restriction>
>         </xsd:simpleType>
>         <xsd:simpleType>
>           <xsd:restriction base="xsd:int">
>             <xsd:minInclusive value="30"/>
>             <xsd:maxInclusive value="40"/>
>           </xsd:restriction>
>         </xsd:simpleType>
>       </xsd:union>
>     </xsd:simpleType>
>   </xsd:element>
> </xsd:schema>
> 
> and this simple xml file :
> <ELEMENTS>5</ELEMENTS>
> 
> This xml file validates using xmllint (with libxml  2.6.19) although 5
> does not fall in the interval [10,20] neither [30,40].
> 
> But maybe the 'union' type is not yet fully implemented ?

This was a bug: in some cases, the facet-violation was not channelled
back to the main validation function.

Fixed in CVS, xmlschemas.c rev 1.133.
I added your case to the regression tests.

We have currently no informative error-messages for union types. So
you'll get only a "The character content is not valid." message.

Thanks for the report!

Kasimier
_______________________________________________
xml mailing list, project page  http://xmlsoft.org/
[email protected]
http://mail.gnome.org/mailman/listinfo/xml

Reply via email to