Michael Beckerle created DAFFODIL-2081:
------------------------------------------

             Summary: TDML doc page description of twoPass incorrect
                 Key: DAFFODIL-2081
                 URL: https://issues.apache.org/jira/browse/DAFFODIL-2081
             Project: Daffodil
          Issue Type: Bug
          Components: Documentation
    Affects Versions: 2.3.0
            Reporter: Michael Beckerle
             Fix For: 2.4.0


The description of twoPass parserTestCases is not correct.

The first parse happens and creates infoset1.

The doc says infoset1 must not match the expected infoset, but that's not 
correct. It may or may not match. Often it will match.

Then the unparse happens and creates outData1

OutData1 must not match the original input data. If it did a onePass test would 
be sufficient.

So that part is correct.

Then the second parse happens and creates infoset2.

Infoset2 must match the expected infoset.

This can be verified by editing the CSV example. Add a second separator by 
changing dfdl:separator="," to dfdl:separator="| ," so that pipe or comma are 
accepted as separators, but pipe will be output by the unparser since it is 
listed first.

Parser test cases that are default onePass will now fail, because the unparse 
produces data with pipes, but the input data had commas.

However, the infoset created by the first parse does match what is expected.

Changing these tests to "twoPass" makes them work. That means the fact that the 
first infoset comparison matched the expected is tolerated. The doc says it is 
not.

Note that besides the doc page, the tdml.xsd in daffodil-lib has documentation 
in comments in it, and that is also wrong.

 

 

 

 

 

 

 

 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to