Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

This algorithm can achieve streaming behavior from unparsing. Note that the delayed unparsing of element 'a' lasted until element 'd' was received and unparsed (into buffered data output stream). At that point the unparser outputs the data for elements 'a', 'b', 'c', and 'd' (most of it for 'd', 7 bits are left in a frag byte). The output of data has caught up to the streaming-in of infoset events.

This discussion did not cover several other important aspects of the unparser algorithm:

  • suspended unparsers - for alignment fill, unused regions, and for expressions and dfdl:outputValueCalc.
    • TBD: expressions involving variables yet to be set. 
  • queueing of suspensions on the infoset, and infoset event detection including open/final infoset nodes.
  • capture of start/end positionsof content and value
  • propagation of start/end positions and start positions, lengths of data output streams, splitting off of buffered data output streams with unknown start positions.

Those will be covered in other pages.

...