Type composé avec contenu mixte XSD
- Page précédente XSD ne contient que du texte
- Page suivante Indicateur XSD
Un type composite mixte peut contenir des attributs, des éléments et du texte.
Type composite avec contenu mixte
L'élément XML, "letter", contient du texte et d'autres éléments :
<letter> Cher Monsieur <name>John Smith</name>. Votre commande <orderid>1032</orderid> sera expédié le <shipdate>2001-07-13</shipdate>. </letter>
Le schéma suivant déclare cet élément "letter" :
<xs:element name="letter"> <xs:complexType mixed="true"> <xs:sequence> <xs:element name="name" type="xs:string"/> <xs:element name="orderid" type="xs:positiveInteger"/> <xs:element name="shipdate" type="xs:date"/> </xs:sequence> </xs:complexType> </xs:element>
Remarque :Pour que les données de caractères puissent apparaître entre les sous-éléments de "letter", l'attribut mixed doit être réglé sur "true". Le balise <xs:sequence> (name, orderid et shipdate) signifie que les éléments définis doivent apparaître en série à l'intérieur de l'élément "letter".
Nous pouvons également donner un nom à l'élément complexType et faire que l'attribut type de l'élément "letter" renvoie à ce nom de complexType (de cette manière, plusieurs éléments peuvent faire référence au même type composite) :
<xs:element name="letter" type="lettertype"/> <xs:complexType name="lettertype" mixed="true"> <xs:sequence> <xs:element name="name" type="xs:string"/> <xs:element name="orderid" type="xs:positiveInteger"/> <xs:element name="shipdate" type="xs:date"/> </xs:sequence> </xs:complexType>
- Page précédente XSD ne contient que du texte
- Page suivante Indicateur XSD