Hi I hope someone can clarify the behaviour I am seeing with respect to unparsing unordered sequences whose elements in the info set (to be unparsed) are a subset of those defined in the schema.
Basically the case I have is an element that contains an unordered sequence of
subelements, where each subelement is optional. Parsing such an example results
in a successful transformation, however, unparsing that output results in error.
A snapshot of the tmdl xsd is shown below
<element name="seq2">
<complexType>
<sequence dfdl:sequenceKind="unordered">
<element name="x" type="xsd:string" dfdl:initiator="X:"
dfdl:terminator="%NL;" />
<element name="y" type="xsd:string" dfdl:initiator="Y:"
dfdl:terminator="%NL;" />
</sequence>
</complexType>
</element>
Unparsing something like the following results in error
<seq2>
<y>y0</y>
</seq2>
I have attached a test case (modified from
daffodil-test-ibm1/src/test/resources/test-suite/tresys-contributed/) that
demonstrates this, see Test Case BE004-A.
In the system I am working with the error is of the form
"Expected element start event for {pug}D03_Record, but received element end
event for {}D_Records."
for a definition like the following, where the info set being unparsed contains
XML entries for D01_Record and D02_Record elements:
<!-- DETAILS -->
<xs:element dfdl:lengthKind="implicit" name="D_Records" minOccurs="0">
<xs:complexType>
<xs:sequence dfdl:sequenceKind="unordered">
<xs:element ref="D01_Record" />
<xs:element ref="D02_Record" />
<xs:element ref="D03_Record" />
<xs:element ref="D04_Record" />
<xs:element ref="D05_Record" />
<xs:element ref="D06_Record" />
<xs:element ref="D07_Record" />
<xs:element ref="D08_Record" />
<xs:element ref="D09_Record" />
<xs:element ref="D10_Record" />
</xs:sequence>
</xs:complexType>
</xs:element>
I am aware that unordered sequences may be a work in progress.
I am working with daffodil retrieved a few days ago from github, --version
displays
Apache Daffodil (incubating) 2.5.0
Peter
This e-mail and any attachment is intended for the party to which it is
addressed and may contain confidential information or be subject to
professional privilege. Its transmission in not intended to place the contents
into the public domain. If you have received this e-mail in error, please
notify us immediately and delete the email and all copies. AWTA Ltd does not
warrant that this e-mail is virus or error free. By opening this e-mail and any
attachment the user assumes all responsibility for any loss or damage resulting
from such action, whether or not caused by the negligence of AWTA Ltd. The
contents of this e-mail and any attachments are subject to copyright and may
not be reproduced, adapted or transmitted without the prior written permission
of the copyright owner.
BE.dfdl.xsd
Description: BE.dfdl.xsd
BE.tdml
Description: BE.tdml
