Définition données délimitées

Vous pouvez spécifier un séparateur pour les enregistrements et les champs. Ce séparateur délimite l'enregistrement ou le champ au sein des données. Si vous ne spécifiez pas de séparateur, les données sont traitées comme ayant une largeur fixe, selon l'attribut max-length de l'élément champ.

L'exemple ci-dessous montre des champs et des enregistrements avec séparateurs :

<?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>

et génère cette structure XML

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

Exemple d'entrée pour cette définition FSD :

Données enfant 1, Données enfant 2

Données enfant 3, Données enfant 4

et exemple de sortie générée :

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

La définition ci-dessus marque chaque enregistrement comme se terminant par une paire retour chariot/changement de ligne (ce qui correspond au marqueur de fin de ligne standard sous système d'exploitation Microsoft). Deux champs sont définis par enregistrement. Le premier champ utilise la virgule comme séparateur ; le second est le dernier champ de l'enregistrement et utilise donc le séparateur spécifié comme étant propre à cet enregistrement.