Mike Beckerle created DAFFODIL-2692:
---------------------------------------
Summary: Add lengthKind 'valuePattern' which uses regex to match
allowed data values
Key: DAFFODIL-2692
URL: https://issues.apache.org/jira/browse/DAFFODIL-2692
Project: Daffodil
Issue Type: New Feature
Components: Back End, Front End
Affects Versions: 3.3.0
Reporter: Mike Beckerle
Existing dfdl:lengthKind 'pattern' uses the pattern to determine the length. No
match means length 0.
People want to use regular expression (or regex) matches differently from this.
They want to specify the allowed data patterns, with no match meaning parse
error.
This should be added as a dfdlx experimental feature to develop experience with
it.
A few design issues: we need to decide if this pattern includes nil values in
its syntax, or if those get added as allowed value patterns automatically. It
is simpler if we define this to require that the regex pattern specify all
possible data patterns that are accepted, whether they become nilled elements,
or elements with values. That, however, requires one to redundantly express the
dfdl:nilValue information.
There may also be an interaction with properties like
dfdl:emptyValueDelimiterPolicy and the empty representation. I.e., does the
pattern have to allow for a zero-length successful match in order for the data
to be zero-length?
--
This message was sent by Atlassian Jira
(v8.20.7#820007)