You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@daffodil.apache.org by "Steve Lawrence (Jira)" <ji...@apache.org> on 2024/03/14 11:37:00 UTC
[jira] [Resolved] (DAFFODIL-2882) Incorrect mapping from separatorPoliciy to separatorSuppressionPolicy
[ https://issues.apache.org/jira/browse/DAFFODIL-2882?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Steve Lawrence resolved DAFFODIL-2882.
--------------------------------------
Fix Version/s: 3.7.0
Resolution: Fixed
Fixed in commit 6edf5304a355991dba169b163f2f191a981a1f01
> Incorrect mapping from separatorPoliciy to separatorSuppressionPolicy
> ---------------------------------------------------------------------
>
> Key: DAFFODIL-2882
> URL: https://issues.apache.org/jira/browse/DAFFODIL-2882
> Project: Daffodil
> Issue Type: Bug
> Components: Front End
> Affects Versions: 3.6.0
> Reporter: Steve Lawrence
> Priority: Major
> Fix For: 3.7.0
>
>
> Daffodil allows use of the deprecated separatorPolicy property and internally maps it to the new separatorSupressionPolicy property. This is done here:
> https://github.com/apache/daffodil/blob/main/daffodil-lib/src/main/scala/org/apache/daffodil/lib/schema/annotation/props/ByHandMixins.scala#L198-L201
> So our mappings are:
> {code}
> required -> never
> suppressed -> anyEmpty
> suppressedAtEndStrict -> trailingEmpty
> suppressedAtEndLax -> trailingEmptyStrict
> {code}
> However, according to the errata document (https://ogf.org/documents/GFD.214.pdf), the mappings should be:
> {code}
> required -> never
> suppressed -> anyEmpty
> suppressedAtEndLax -> trailingEmpty
> suppressedAtEndStrict -> trailingEmptyStrict
> {code}
> Note that suppressedAtEndStrict and suppressedAtEndLax are swapped and do not match the errata document. Comparing the wording of older versions of the DFDL spec, it does seem like our mapping is incorrect.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)