[
https://issues.apache.org/jira/browse/DAFFODIL-2802?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17714671#comment-17714671
]
Mike Beckerle commented on DAFFODIL-2802:
-----------------------------------------
Without SSP 'never', .... possibly we can make ie3 and se5 mandatory nillable
elements and model the absence of values that way, so that nilValue="%ES;" and
we'd get an `<ie3 xsi:nil="true"/>` element for the empty one instead.
Given that SSP 'never' is officially not yet implemented, first off, the bug
that it creates no SDE when used is pretty egregious, as we've gone a long ways
down the path of generating this schema (which is OTH-Gold format) using
separators, expecting to be able to make them work. Backing out of this and
going with an entirely different approach of nillable elements, or using
terminators not separators, is a rather big deal.
We should at least consider implementing SSP 'never' rather than forcing this
workaround on a major schema.
> Array with optional element followed by scalar optional element drops
> separator
> -------------------------------------------------------------------------------
>
> Key: DAFFODIL-2802
> URL: https://issues.apache.org/jira/browse/DAFFODIL-2802
> Project: Daffodil
> Issue Type: Bug
> Components: Back End
> Affects Versions: 3.4.0
> Reporter: Olabusayo Kilo
> Priority: Blocker
> Fix For: 3.5.0
>
> Attachments: TestSeparatorSuppression.scala, suppressedseparator.tdml
>
>
> An array with a trailing optional element followed by a scalar optional
> element loses a separator when both elements are missing during an unparse.
> The trace indicates, there's a
> SuppressableSeparatorUnparserSuspendableOperation for the scalar element (se5
> in the example schema). My initial guess was that the last element in the
> array was being treated as a trailing element, but we need it to not be
> treated that way.
>
> For completeness, you get the following error from TDML on the 2nd test
> {noformat}
> output data length 12 for '/1/2/3.5//6
> ' doesn't match expected length 13 for '/1/2/3.5///6
> '{noformat}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)