Delimited data

Records and fields can have a separator specifier.

This specifier delimits the record or field within the data. Where a delimiter is not specified, the data is treated as fixed width, using the max-length attribute of the field element.

This example illustrates fields and records with separators:

<?xml encoding='UTF-8' version='1.0' ?>
<schema xmlns='http://www.infor.com/2017/TD/SSTransform/fsd/' version='1.0'>
  <sequence output='no'>
    <record max-occur='0' name='parent' record-sep='\r\n'>
      <field name='child1' field-sep=','/>
      <field name='child2'>
    </record>
  </sequence>
</schema>

and generates this XML structure:

<parent>
  <child1/>
  <child2/>
</parent>

Example input for this FSD:

Child 1 Data,Child 2 Data

Child 3 Data,Child 4 Data

and example output generated:

<parent>
   <child1>Child 1 Data</child1>
   <child2>Child 2 Data</child2>
</parent>
<parent>
  <child1>Child 3 Data</child1>
  <child2>Child 4 Data</child2>
</parent>

This FSD marks each record as ending with a carriage-return line-feed pair, which is the standard end of line marker in Microsoft Operating Systems. Two fields are defined for each record. A comma as a delimiter is used in the first field. As the second field is the last field in the record, the delimiter specified for the record is used.