| 
 | 
Construction d'un nouveau type complexe en ajoutant des composants à un type complexe existant
Analogue à l'extension de type simple (voir
internationalPrice)
Exemple de dérivation d'un type complexe à partir d'un autre type complexe :
 <complexType name="Address">
  <sequence>
   <element name="name"   type="string"/>
   <element name="street" type="string"/>
   <element name="city"   type="string"/>
  </sequence>
 </complexType>
 <complexType name="UKAddress">
  <complexContent>
   <extension base="ipo:Address">
    <sequence>
     <element name="postcode"
              type="ipo:UKPostcode"/>
    </sequence>
    <attribute name="exportCode"
               type="positiveInteger"
               fixed="1"/>
   </extension>
  </complexContent>
 </complexType>
Équivalent à :
 <complexType name="UKAddress">
  <sequence>
   <element name="name"   type="string"/>
   <element name="street" type="string"/>
   <element name="city"   type="string"/>
   <element name="postcode" type="ipo:UKPostcode"/>
  </sequence> 
  <attribute name="exportCode"
             type="positiveInteger" fixed="1"/>
 </complexType>
33/49  |