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