Build: #173 did not complete Changes by Steve Lawrence
Code commits
daffodil
-
Steve Lawrence 288e7795aad4a18f51f21a032a9179ac73f458cf
Fix unparsing complex elements in hidden groups
- Hidden elements will never result in infoset events. So do not try to
consume events when the element is hidden. Only do that for non-hidden
elements.
- Because hidden elements do not create events, InfosetElements are also
never created. So for hidden elements, manually create an
InfosetElement and set it as the current node. This allows expressions
to reference those elements and ensure child elements are added to the
correct InfosetElement.
- For the StatementElementOVCUnparser, do not always create a new
DISimple. Since OVC elements are optional in the infoset, events for
they may or may not exist. If they do exist, there will be an event,
and we can use the infoset element the event creates. If they do not
exist, either because they were not in the infoset or because they
where hidden, then create the DISimple infoset element. Note that the
existing infoset element needs to be reset since we don't want it to
ever have a value unless it's been calculated. A resetValue function
is added to remove its value.
- Improve error checking for non-hidden elements to ensure we get
not only a start event, but a start event for the correct ERD.
DFDL-1552- daffodil-runtime1-unparser/src/main/scala/edu/illinois/ncsa/daffodil/processors/unparsers/StatementElementUnparser.scala (version 288e7795aad4a18f51f21a032a9179ac73f458cf) (diffs)
- daffodil-runtime1/src/main/scala/edu/illinois/ncsa/daffodil/processors/InfosetImpl.scala (version 288e7795aad4a18f51f21a032a9179ac73f458cf) (diffs)
- daffodil-runtime1/src/main/scala/edu/illinois/ncsa/daffodil/processors/unparsers/InfosetCursorFromXMLEventCursor.scala (version 288e7795aad4a18f51f21a032a9179ac73f458cf) (diffs)
- daffodil-test/src/test/resources/edu/illinois/ncsa/daffodil/section14/sequence_groups/SequenceGroup.tdml (version 288e7795aad4a18f51f21a032a9179ac73f458cf) (diffs)
- daffodil-test/src/test/resources/edu/illinois/ncsa/daffodil/section14/sequence_groups/SequenceGroupUnparse.tdml (version 288e7795aad4a18f51f21a032a9179ac73f458cf) (diffs)
- daffodil-test/src/test/scala-new/edu/illinois/ncsa/daffodil/section14/sequence_groups/TestSequenceGroupUnparse.scala (version 288e7795aad4a18f51f21a032a9179ac73f458cf) (diffs)