
IBM published a set of test cases for DFDL. One of them is length_delimited_12_03. I want to discuss whether this is in fact the behavior we want for DFDL. In this example, there is data "abcde", and the default format is lengthKind="delimited", but no delimiters are defined anywhere. <!-- parent with specified length --> <xs:element name=*"myStringSeq2"* dfdl:lengthKind=*"explicit"* dfdl:length=*"5"*> <xs:complexType> <xs:sequence dfdl:initiatedContent=*"no"* dfdl:separatorPosition=*"infix"* dfdl:sequenceKind=*"ordered"* dfdl:separator=*""*
<xs:element name=*"Test1"* type=*"xs:string"*> </xs:element> </xs:sequence> </xs:complexType> </xs:element> The only way for this to parse is for the inner element Test1 to be delimited by the end-of-data coming from the explicit surrounding box created by the myStringSeq2. I thought this should be a SDE because no delimiter is defined anywhere. I see that it can work, if we adopt a policy that delimited, but with no delimiters, means delimited by end-of-available-data. But, I thought that is what lengthKind="endOfData" is for. Can anyone comment as to why the lengthKind="delimited" but with no delimiter strings defined should NOT be an SDE?