Michael Beckerle created DAFFODIL-1976:
------------------------------------------
Summary: Incorrect creation of empty-string element
Key: DAFFODIL-1976
URL: https://issues.apache.org/jira/browse/DAFFODIL-1976
Project: Daffodil
Issue Type: Bug
Components: Back End
Affects Versions: 2.1.0
Reporter: Michael Beckerle
Fix For: 2.2.0
Test "scenario1_7" was made "threePass" to get it to pass, but really it should
be onePass, and the underlying Daffodil behavior needs to change.
Specifically, an empty <y/> element appears in the infoset from the first parse
pass, and that element should NOT be present, as the element is optional, the
content is zero-length, and the type is xs:string. This <y/> element should
only be created if there is some empty value syntax defined by way of
initiator/terminator/emptyValueDelimiterPolicy.
See the shouldRemoveZLStringHexBinaryValue method, which the code has wired to
'false' currently. Note that the parse must be attempted so that
asserts/discriminators and setVars are executed.
Furthermore, note that this does NOT terminate the array, as it is not a
processing error.
This test, and other tests that construct these empty 'y' elements should be
corrected, and should not require threePass treatment from the TDML runner.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)