Valider des flux de données par rapport à un fichier XSD - Cloud - 8.0

Validation XML

Version
Cloud
8.0
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 XML > Composants de validation XML
Gouvernance de données > Systèmes tiers > Composants XML > Composants de validation XML
Qualité et préparation de données > Systèmes tiers > Composants XML > Composants de validation XML
Last publication date
2024-02-21

Ce scénario décrit un Job qui valide une colonne XML dans le fichier d'entrée ShipOrder.csv par rapport au fichier XSD de référence ShipOrder.xsd, écrit les lignes valides dans le fichier délimité ShipOrder_Valid.csv et les lignes invalides ainsi que les messages d'erreur dans le fichier délimité ShipOrder_Invalid.csv. Pour un exemple similaire d'utilisation validant un fichier XML, consultez Valider un fichier XML.

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

Le contenu du fichier d'entrée ShipOrder.csv comprenant la colonne XML ShipOrder à valider se présente comme suit :

ID;ShipOrder
000001;<shiporder orderid="000001"><orderperson>George Bush</orderperson><shipto><name>John Adams</name><address>Oxford Street</address></shipto><item><title>Empire Burlesque</title><note>Special Edition</note><quantity>1</quantity><price>10.90</price></item></shiporder>
000002;<shiporder orderid="000002"><orderperson>Judy Liu</orderperson><shipto><name>Jack Liu</name><address>Wangfujing Street</address></shipto><item><title>Hide Your Heart</title><quantity>1</quantity><price>9.90</price></item></shiporder>
000003;<shiporder><orderperson>Peter Qian</orderperson><shipto><name>Thomas Wang</name><address>Wangfujing Street</address></shipto><item><title>The Power of Habit</title><quantity>1</quantity><price>8.99</price></item></shiporder>

Le contenu du fichier XSD de référence ShipOrder.xsd se présente comme suit :

<?xml version="1.0" encoding="ISO-8859-1" ?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
 <xs:element name="shiporder">
  <xs:complexType>
   <xs:sequence>
    <xs:element name="orderperson" type="xs:string"/>
    <xs:element name="shipto">
     <xs:complexType>
      <xs:sequence>
       <xs:element name="name" type="xs:string"/>
       <xs:element name="address" type="xs:string"/>
      </xs:sequence>
     </xs:complexType>
    </xs:element>
    <xs:element name="item" maxOccurs="unbounded">
     <xs:complexType>
      <xs:sequence>
       <xs:element name="title" type="xs:string"/>
       <xs:element name="note" type="xs:string" minOccurs="0"/>
       <xs:element name="quantity" type="xs:positiveInteger"/>
       <xs:element name="price" type="xs:decimal"/>
      </xs:sequence>
     </xs:complexType>
    </xs:element>
   </xs:sequence>
   <xs:attribute name="orderid" type="xs:string" use="required"/>
  </xs:complexType>
 </xs:element>
</xs:schema>