Hello DFDL community,
My input consists of a series of name, age pairs (on different lines):
John Doe
29
Sally Smith
34
This DFDL schema parses the input perfectly:
<xs:element name="input">
<xs:complexType>
<xs:sequence>
<xs:element name="person" maxOccurs="unbounded"
dfdl:occursKind="implicit">
<xs:complexType>
<xs:sequence dfdl:separator="%NL;"
dfdl:separatorPosition="infix">
<xs:element name="name" type="xs:string" />
<xs:element name="age" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
I want to test in-band nil on complex type. So, I added nillable="true"
dfdl:nilValue="%ES;"
to the person element declaration:
<xs:element name="input">
<xs:complexType>
<xs:sequence>
<xs:element name="person" maxOccurs="unbounded"
dfdl:occursKind="implicit" nillable="true" dfdl:nilValue="%ES;">
<xs:complexType>
<xs:sequence dfdl:separator="%NL;"
dfdl:separatorPosition="infix">
<xs:element name="name" type="xs:string" />
<xs:element name="age" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
Now, when I parse the same input file, I get this error message:
Parse Error: Repeating or Optional Element - No forward progress at byte 29.
Attempt to parse person succeeded but consumed no data.
Why am I getting this error? How do I fix it?
/Roger