DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://issues.apache.org/bugzilla/show_bug.cgi?id=27828>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://issues.apache.org/bugzilla/show_bug.cgi?id=27828

incorrect validation of substitution groups with restriction





------- Additional Comments From [EMAIL PROTECTED]  2004-03-23 02:18 -------
Wow, less than 24 hour turn-around! I love open source! Thanks, Mike.

I tried your patch (against downloaded 2.6.2 source + XSConstraints.java rev 1.38).

It does indeed fix most of the cases in my posting--and all of the ones I posted
the xsd in full for. However, the variation where the base inner element is
added to the sequence with maxOccurs-"unbounded", still results in MapAndSum.1
(actually this seems to be the case where any of the elements in the sequence
are unbounded).

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema targetNamespace="http://xml.wrycan.com/test/restr_sub";
xmlns:xs="http://www.w3.org/2001/XMLSchema";
xmlns:test="http://xml.wrycan.com/test/restr_sub"; elementFormDefault="qualified"
attributeFormDefault="unqualified">
    <xs:include schemaLocation="base-1toN.xsd"/>
    <xs:element name="dervOuter" type="test:dervOuterType"/>
    <xs:element name="dervInnerA" type="test:dervInnerType"
substitutionGroup="test:inner"/>
    <xs:element name="dervInnerB" type="test:dervInnerType"
substitutionGroup="test:inner"/>
    <xs:element name="dervInnerC" type="test:dervInnerType"
substitutionGroup="test:inner"/>
    <xs:simpleType name="dervInnerType">
        <xs:restriction base="test:innerType">
            <xs:pattern value="-?[0-9]{1,3}"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:complexType name="dervOuterType">
        <xs:complexContent>
            <xs:restriction base="test:outerType">
                <xs:sequence>
                    <xs:element ref="test:dervInnerA"/>
                    <xs:element ref="test:dervInnerB"/>
                    <xs:element ref="test:dervInnerC"/>
                    <xs:element ref="test:inner"  maxOccurs="unbounded"/>
                </xs:sequence>
            </xs:restriction>
        </xs:complexContent>
    </xs:complexType>
    <xs:element name="dervInnerSameType" type="test:innerType"
substitutionGroup="test:inner"/>
</xs:schema>

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to