Création de fichier XML complexe à partir de données texte

Les flux de données produisent souvent des enregistrements contenant des champs texte écrits dans le fichier XML en tant qu'éléments XML simples. Si vous souhaitez organiser des champs texte dans les éléments XML complexes pour produire des données hiérarchiques, vous pouvez utiliser un ou plusieurs stages Aggregator.

Par exemple, si l'on considère ces données texte où la première ligne est un enregistrement d'en-tête :

addressline1,age,city,country,gender,name,number,postalcode,stateprovince,type
1253 Summer St.,43,Boston,United States,M,Sam,019922,02110,MA,Savings

Il serait judicieux de regrouper les champs de données associés à l'adresse et les champs associés au compte dans des éléments XML complexes nommés <Address> et <Account> comme suit :

<CustomerRecord>
        <name>Sam</name>
        <age>43</age>
        <gender>M</gender>
        <country>United States</country>
        <Address>
            <addressline1>1253 Summer St.</addressline1>
            <city>Boston</city>
            <stateprovince>MA</stateprovince>
            <postalcode>02110</postalcode>
        </Address>
        <Account>
            <number>019922</number>
            <type>Savings</type>
        </Account>
</CustomerRecord>
  1. Ajoutez un stage Aggregator au point dans le flux de données dans lequel vous souhaitez créer des éléments complexes.
  2. Double-cliquez sur le stage Aggregator pour ouvrir les options correspondantes.
  3. Sélectionnez Grouper par et cliquez sur Ajouter.
  4. Sélectionnez le champ contenant une valeur unique pour chaque enregistrement, telle qu'un numéro de compte, et cliquez sur OK.
  5. Si vous souhaitez transmettre d'autres champs simples, sélectionnez Grouper par et cliquez de nouveau sur Ajouter pour ajouter tous les champs simples à inclure.

    Par exemple, dans ce cas, cinq champs simples seront inclus dans chaque enregistrement : nombre, nom, âge, sexe et pays.

  6. Sélectionnez Listes de sortie et cliquez sur Ajouter.
  7. Sélectionnez Nouveau type de données. Ceci aura pour effet de défini un nouvel élément complexe. Saisissez une description du genre de données que contiendra cet élément complexe. Par exemple, vous pouvez saisir « Complexe », puisque vous créez un élément XML complexe. Vous pouvez définir librement le nom du type de données.
  8. Dans le champ Name, saisissez le nom à utiliser pour le champ. Il s'agira également du nom de l'élément XML.
  9. Cliquez sur OK.
  10. Sélectionnez le champ que vous venez de créer et cliquez sur Ajouter.
  11. Avec Champ existant sélectionné, choisissez un champ à ajouter comme champ enfant à l'élément complexe, puis cliquez sur OK.
  12. Répétez les deux étapes précédentes pour ajouter des champs supplémentaires à l'élément complexe.
  13. Ajoutez d'autres champs complexes si nécessaire.

    Lorsque vous avez terminé, le stage Aggregator doit répertorier chaque champ simple et complexe à inclure dans chaque enregistrement. Par exemple :

  14. Cliquez sur OK.