Type complexe XSD - contenu simple
- Page précédente XSD Ne contient que des éléments
- Page suivante Contenu de contenu mixte XSD
Un élément complexe contenant uniquement du texte peut contenir du texte et des attributs.
Élément complexe contenant uniquement du texte
Ce type ne contient que du contenu simple (texte et attributs), par conséquent, nous devons ajouter un élément simpleContent à ce contenu. Lorsque nous utilisons du contenu simple, nous devons définir l'extension ou la restriction à l'intérieur de l'élément simpleContent, comme ceci :
<xs:element name="un nom"> <xs:complexType> <xs:simpleContent> <xs:extension base="basetype"> .... .... </xs:extension> </xs:simpleContent> </xs:complexType> </xs:element>
ou :
<xs:element name="un nom"> <xs:complexType> <xs:simpleContent> <xs:restriction base="basetype"> .... .... </xs:restriction> </xs:simpleContent> </xs:complexType> </xs:element>
Astuce :Utilisez les éléments extension ou restriction pour étendre ou restreindre le type de base de l'élément.
Voici un exemple d'élément XML, "shoesize", qui ne contient que du texte :
<shoesize country="france">35</shoesize>
Voici un exemple qui déclare un type complexe, dont le contenu est défini comme une valeur entière, et l'élément "shoesize" contient une propriété nommée "country" :
<xs:element name="shoesize"> <xs:complexType> <xs:simpleContent> <xs:extension base="xs:integer"> <xs:attribute name="country" type="xs:string" /> </xs:extension> </xs:simpleContent> </xs:complexType> </xs:element>
Nous pouvons également attribuer un nom à l'élément complexType et faire que l'attribut type de l'élément "shoesize" se réfère à ce nom (de cette manière, plusieurs éléments peuvent se référer au même type complexe) :
<xs:element name="shoesize" type="shoetype"/> <xs:complexType name="shoetype"> <xs:simpleContent> <xs:extension base="xs:integer"> <xs:attribute name="country" type="xs:string" /> </xs:extension> </xs:simpleContent> </xs:complexType>
- Page précédente XSD Ne contient que des éléments
- Page suivante Contenu de contenu mixte XSD