Hi Folks, My instance document consists of a sequence of up to 5 strings, separated by forward slash, e.g.,
/a// If I specify separatorSuppressionPolicy="trailingEmpty" then I can specify minOccurs="0" maxOccurs="5" If I specify separatorSuppressionPolicy="anyEmpty" then I get this error: Left over data. Consumed 0 bit(s) with at least 56 bit(s) remaining. Why is that? That is, why does this work: <xs:element name="file"> <xs:complexType> <xs:sequence dfdl:separator="/" dfdl:separatorPosition="infix" dfdl:separatorSuppressionPolicy="trailingEmpty"> <xs:element name="value" type="xs:string" minOccurs="0" maxOccurs="5" /> </xs:sequence> </xs:complexType> </xs:element> Whereas this doesn't: <xs:element name="file"> <xs:complexType> <xs:sequence dfdl:separator="/" dfdl:separatorPosition="infix" dfdl:separatorSuppressionPolicy="anyEmpty"> <xs:element name="value" type="xs:string" minOccurs="0" maxOccurs="5" /> </xs:sequence> </xs:complexType> </xs:element> The latter works if I specify minOccurs="1" maxOccurs="5" /Roger