array default values wrongly cause xerces to reject schema ----------------------------------------------------------
Key: XERCESC-1683 URL: https://issues.apache.org/jira/browse/XERCESC-1683 Project: Xerces-C++ Issue Type: Bug Components: Validating Parser (Schema) (Xerces 1.5 or up only) Affects Versions: 2.7.0 Environment: Win32 (occurred), probably all Reporter: Uwe Pachler Fix For: 2.7.0 Xerces 2.7.0 fails to load the Schema grammar below at the 'defaultIntArray3Element' element with the message: "Value '4' with length '1' is not equal to length facet of '3'" Well, err, the specified default value is "4 3 2", which is an array of length 3. Replacing the restriction of the 'length' faced by restricting 'minLength' and 'maxLength' to 3 has the same result. An example schema that causes the trouble: <?xml version="1.0" encoding="utf-8" ?> <xs:schema xmlns="http://foo/test34" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://foo/test34" > <!-- Test34 tests default value handling --> <xs:simpleType name="intArray"> <xs:list itemType="xs:int"/> </xs:simpleType> <xs:simpleType name="intArray3"> <xs:restriction base="intArray"> <xs:length value="3"/> </xs:restriction> </xs:simpleType> <xs:complexType name="Test34"> <xs:sequence> <xs:element name="defaultIntArray3Element" type="intArray3" default="4 3 2"/> </xs:sequence> <attribute name="defaultIntArray3" type="intArray3" default="3 2 1"/> </xs:complexType> <!-- root element --> <xs:element name="test34" type="Test34"/> </xs:schema> -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]