[DFDL-WG] revisit: nillable complex types and %ES restriction
Steve Hanson
smh at uk.ibm.com
Tue Jan 25 13:23:47 EST 2022
Mike, you asked this same question on 1st December, and I responded with
the following ... sounds like it got lost in the Christmas post :)
I need to do some archaeology here but I'm fairly sure it is to do with
our rules for establishing representation. To establish representation,
you need to have extracted the data from the bitstream using lengthKind.
The only length that makes sense for a complex element is zero, which is
why only %ES; is allowed. (Note that a complex element with
lengthKind='implicit' and nillable='true' is a SDE). Your suggestion of
treating nil value on a complex element as a delimiter sidesteps that
nicely but scuppers the algorithm for establishing representation, and
possibly known-to-exist versus known-not-to-exist. I don't have time right
now to do the archaeology, but this is at best a candidate for 2.0, and
definitely not an erratum on 1.0. It certainly wasn't an ad-hoc
restriction.
I will forward you the complete thread.
Regards
Steve Hanson
IBM Hybrid Integration, Hursley, UK
Architect, IBM DFDL
Co-Chair, OGF DFDL Working Group
smh at uk.ibm.com
tel:+44-1962-815848
mob:+44-7717-378890
Note: I work Tuesday to Friday
From: "Mike Beckerle" <mbeckerle at apache.org>
To: "DFDL-WG" <dfdl-wg at ogf.org>
Date: 25/01/2022 17:47
Subject: [EXTERNAL] [DFDL-WG] revisit: nillable complex types and
%ES restriction
Sent by: "dfdl-wg" <dfdl-wg-bounces at ogf.org>
The Daffodil user community is complaining about the DFDL v1.0 restriction
that nillable complex types can only have %ES; (empty data) as their
nilled representation.
Multiple important data standards find this restriction quite awkward.
It has significant negative impact on usability because it eliminates
polymorphism of paths.
The path needed to refer to an element value has different ending element
path steps depending on whether it is nilled or not.
The value of having DFDL create an XML infoset is lost if something as
basic as this cannot be done in such a way that path expressions work
alike to how they would work in regular XML/XSD.
Is there a significant reason why this restriction cannot be lifted?
If not we would probably plan to define a dfdlx namespace property that
can be used to enable this alternate behavior, and then we could prototype
this new fuctionality in Daffodil and propose this for DFDL 2.0 revision.
--
dfdl-wg mailing list
dfdl-wg at ogf.org
https://www.ogf.org/mailman/listinfo/dfdl-wg
Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number
741598.
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.ogf.org/pipermail/dfdl-wg/attachments/20220125/bfd85f7a/attachment-0001.html>
More information about the dfdl-wg
mailing list