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

Reply via email to