You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@daffodil.apache.org by "Mike Beckerle (Jira)" <ji...@apache.org> on 2022/01/25 22:35:00 UTC

[jira] [Created] (DAFFODIL-2636) Create extension feature to allow complex type nilValue other than just %ES

Mike Beckerle created DAFFODIL-2636:
---------------------------------------

             Summary: Create extension feature to allow complex type nilValue other than just %ES 
                 Key: DAFFODIL-2636
                 URL: https://issues.apache.org/jira/browse/DAFFODIL-2636
             Project: Daffodil
          Issue Type: New Feature
          Components: Back End, Front End
    Affects Versions: 3.2.1
            Reporter: Mike Beckerle


Users have complained about the restriction in DFDL where nillable complex types cannot have any nilValue except %ES (empty string). This restriction makes many standard data formats much harder to model in DFDL, and the resulting schemas allow for less polymorphic path expressions, etc. When used with XML conversion, the XML is very unexpected in structure.  

The DFDL workgroup precluded nilValue other than just %ES for nillable complex types  based on the way the DFDL spec describes parsing as establishing representation and determining known-to-exist and known-not-to-exist.  Which is to say that lifting this restriction may require that documentation within the DFDL spec to change. 

However, if the feature is compelling to have, which it seems to be, then the documentation of the parsing algorithm can and should be adapted to the reality.

So this ticket is to add an experimental feature to Apache Daffodil which lifts the restriction of nillable complex types only being %ES. 

This feature will require an enabling property. The property should be defined in the dfdlx namespace. Suggest dfdlx:enableExtendedComplexTypeNilValues=yes/no. 

Once we have this prototyped/implemented in Daffodil, the right changes to the description of the parsing algorithm in the DFDL specification should be much easier to formulate. 

 

 

 



--
This message was sent by Atlassian Jira
(v8.20.1#820001)