mbeckerle commented on a change in pull request #67: Add test showing inability 
to read data after a layer
URL: https://github.com/apache/incubator-daffodil/pull/67#discussion_r186119660
 
 

 ##########
 File path: 
daffodil-test/src/test/resources/org/apache/daffodil/layers/layers.tdml
 ##########
 @@ -253,5 +253,50 @@ xxx]]></tdml:documentPart>
       <tdml:error>separator</tdml:error>
     </tdml:errors>
   </tdml:parserTestCase>
+  
+  <tdml:defineSchema name="s4" elementFormDefault="unqualified">
+    <dfdl:defineFormat name="general">
+      <dfdl:format ref="ex:GeneralFormat" lengthKind="delimited" 
outputNewLine="%CR;%LF;" />
+    </dfdl:defineFormat>
+    <dfdl:defineFormat name="folded">
+      <dfdl:format ref="ex:general" layerTransform="lineFolded_IMF" 
layerLengthKind="implicit" layerLengthUnits="bytes"
 
 Review comment:
   Here's the bug/issue.  We haven't got a crisp description of what these 
lineFolded transforms actually do.
   
   lineFolded_IMF with layerlengthKind 'implicit' means - there is no 
terminating this. Just go as far as you can. 
   
   It requires that either the entire data stream is being folded, or there is 
a surrounding "specified length" element to stop it.
   
   I think you want layerLengthKind 'boundaryMark'. In the lineFolded case, the 
boundaryMark is not variable. It is always CRLF not followed by tab/space. 
I.e., a single "line" of text that if too long, must be folded.
   
   Those two behaviors, 'implicit' and 'boundaryMark' are what the code does 
today, but I'm not sure they are enough. 

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

Reply via email to