The exact semantics of lengthKind='delimited' are a little bit unclear to me.

Are there situations where we accept end-of-data as a substitute for finding a delimiter?

Consider this:

<element name="foo" type="xs:string" dfdl:lengthKind="delimited" dfdl:initiator="[START]" dfdl:terminator="[END]"/>

I think this string should always cause a processing error: "[START] some data ". That is, the [END] terminator is not present, instead one runs out of data.

So what exactly are the situations where delimited length kind will not find a delimiter, hit end-of-data, and be ok with it?

I understand that hitting end-of-data might cause a backtrack for resolving points of uncertainty, but is there ever a case where running out of data is accepted as a substitute for finding a delimiter? (I am hoping the answer here is no, but I am asking because I am not certain.)

--
Mike Beckerle | OGF DFDL Workgroup Co-Chair | Tresys Technology | www.tresys.com