Hmm, Daffodil has this internal mapping:
required -> never
suppressed -> anyEmpty
suppressedAtEndStrict -> trailingEmpty
suppressedAtEndLax -> trailingEmptyStrict
https://github.com/apache/daffodil/blob/main/daffodil-lib/src/main/scala/org/apache/daffodil/lib/schema/annotation/props/ByHandMixins.scala#L198-L201
Note that suppressedAtEndStrict and suppressedAtEndLax are swapped compared to
the errata document. Seems like this is a bug in Daffodil, but if you use the
above mapping to update your schemas it *should* give you the same behavior as
before.
On 2024-03-13 04:53 AM, Claude Mamo wrote:
Hi Daffodil community,
Quick question, I noticed a couple of Daffodils warnings during testing saying
that /separatorPolicy/ is deprecated and that I should use instead
/separatorSuppressionPolicy/. I followed this doc for migrating to the new
attribute: https://ogf.org/documents/GFD.214.pdf
<https://ogf.org/documents/GFD.214.pdf> :
3.14. Section 14.2. To better describe the property and its behaviour,
property
separatorPolicy is renamed to separatorSuppressionPolicy, and its enums
renamed as
follows:
‘required’ -> 'never'
‘suppressed’ -> 'anyEmpty'
‘suppressedAtEndLax’ -> 'trailingEmpty'
‘suppressedAtEndStrict -> 'trailingEmptyStrict'.
Additionally the property description for separatorSuppressionPolicy is
rewritten, introductory
paragraphs are added to section 14.2, and section 14.2.1 is replaced with
new tables.
This is covered in DFDL experience document 2 [DFDLX2]
My understanding is that this is purely a cosmetic change but, after migrating
to the new attribute, the tests started to fail. Has the behaviour changed as
well? I'm on version 3.6
Claude