Restructurer des données produit à l'aide de différents éléments répétables - 7.3

tXMLMap

Version
7.3
Language
Français
Product
Talend Big Data
Talend Big Data Platform
Talend Data Fabric
Talend Data Integration
Talend Data Management Platform
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Talend Real-Time Big Data Platform
Module
Studio Talend
Content
Création et développement > Systèmes tiers > Composants Processing (Intégration) > tXMLMap
Gouvernance de données > Systèmes tiers > Composants Processing (Intégration) > tXMLMap
Qualité et préparation de données > Systèmes tiers > Composants Processing (Intégration) > tXMLMap
Last publication date
2024-02-22

Ce scénario utilise un Job à quatre composants pour restructurer les données produit fournies par un fichier XML source, ProductsIn.xml à l'aide de différents éléments répétables (loop element).

Pour plus de technologies supportées par Talend, consultez Composants Talend.

Les composants utilisés sont :

  • un tFileInputXML : lit les données produit source et les passe au tXMLMap.

  • un tXMLMap : transforme le flux d'entrée pour lui donner la structure simplifiée attendue.

  • un tLogRow : affiche les résultats d'exécution dans la console.

  • un tFileOutputXML : écrit un flux de sortie dans un fichier XML.

Le contenu du fichier XML source ProductsIn.xml se présente comme suit :

<?xml version="1.0" encoding="ISO-8859-15"?>
<products category="1" name="laptop">

	<!-- Summary -->
	<summary>
		<company>DELL, HP</company>
		<sales unit="Dollars">12345678910.12345</sales>
		<model>business</model>
	</summary>

	<!-- Loop1 manufacture -->
	<manufacture id="manu_1" date="2012-10-30">
		<name>DELL</name>
	</manufacture>
	<manufacture id="manu_2" date="2012-10-28">
		<name>HP</name>
	</manufacture>

	<!-- Loop2 types -->
	<types model="business1">
		<type>DELL123</type>
		<manufacture_id>manu_1</manufacture_id>
	</types>
	<types model="business2">
		<type>HP123</type>
		<manufacture_id>manu_2</manufacture_id>
	</types>

	<!-- Loop3 sale -->
	<sales>
		<sale unit="Dollars" type="DELL123">
			<quater>1</quater>
			<income>12345</income>
		</sale>
		<sale unit="Dollars" type="HP123">
			<quater>1</quater>
			<income>12345.123</income>
		</sale>
	</sales>
</products>

L'objectif de ce scénario est la restructuration de données produit est de simplifier la présentation des informations produit afin de réutiliser le fichier pour la manufacture. Les données attendues se présentent comme suit. L'élément racine est modifié à manufacturers, les informations relatives aux ventes sont consolidées dans l'élément sale et l'élément manufacturer est réduit à un niveau.

<?xml version="1.0" encoding="ISO-8859-15"?>
<manufacturers category="1" name="laptop">
  <sales unit="Dollars">
    <sale sales_type="DELL123">12345.0</sale>
    <sale sales_type="HP123">12345.123</sale>
  </sales>
  <manufacturer id="manu_1" date="03-04-0036" name="DELL"/>
  <manufacturer id="manu_2" date="04-04-0034" name="HP"/>
  <types>
    <type>DELL123</type>
    <manufacturer_id>manu_1</manufacturer_id>
  </types>
  <types>
    <type>DELL123</type>
    <manufacturer_id>manu_2</manufacturer_id>
  </types>
  <types>
    <type>HP123</type>
    <manufacturer_id>manu_1</manufacturer_id>
  </types>
  <types>
    <type>HP123</type>
    <manufacturer_id>manu_2</manufacturer_id>
  </types>
</manufacturers>