Uploaded image for project: 'Daffodil'
  1. Daffodil
  2. DFDL-1486

Incorrectly validating delimiters for ES/WSP*

XMLWordPrintableJSON

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Normal Normal
    • deferred
    • None
    • General
    • None

      The current delimiter cookers attempt to check for invalid delimiters, such as ES and WSP*. However, there are two things we do not correctly check against

      1. The spec specifies that in some cases, delimiters cannot contain ES or WSP*, because they match the empty string. We currently correctly check this, but if a delimiter is ESES or ESWSP* or some other combination of character classes that can match the empty string, then we will not detect it. This means the cookers potentially have to do merging of duplicate character classes, and have some concept of if a delimiter could match an empty string. Note that merging of duplicate character classes does exist elsewhere for delimiters, but does not handle merging ES. It only merges the various forms of WSP.
      2. The other issue is that there is a restriction on some delimiters that ES can only specified if it is also specified with another delmiter, e.g. initiator="%ES; foo". This is a method for describing optional initiators. Our cookers do not currently have the capability to verify the entire list of cooked delmiters to determine if such problems exist. This likely needs a new cooker base class, or enhancements to existing cookers to support providing validation on an entire list of cooked values, rather than just on individual values.

              Unassigned Unassigned
              slawrence Steve Lawrence
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated: