In theory it's a cosmetic change. In practice this is a very subtle
area of the DFDL specification, and not one I'm entirely happy with.

One thought is that  an additional property was added to the DFDL spec
before the final OGF GFD.240 version: dfdl:emptyElementParsePolicy
which can be "treatAsEmpty" or "treatAsAbsent" which can affect things
also. It was quite literally added because the draft DFDL spec was
ambiguous, and IBM interpreted it one way, Daffodil another, and we
agreed both interpretations made sense, so we had to add a switch to
choose which of them. Daffodil supports both settings.

I'd like to try to create a test case out of your situation if we can
so we can reproduce the issue and investigate. This is a place where
our test suites could really use some enhancement to nail down
specific behaviors.

On Wed, Mar 13, 2024 at 4:53 AM Claude Mamo <[email protected]> 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 :
>
>> 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

Reply via email to