Um elemento somente texto complexo pode conter texto e atributos.
Elementos somente texto complexas
Este tipo contém apenas conteúdo simples (text and attributes) , por isso adicionar um elemento simpleContent em torno do conteúdo. Ao usar o conteúdo simples, você deve definir uma extensão ou uma restrição dentro do elemento simpleContent, como este:
<xs:element name="somename">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="basetype">
....
....
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
OR
<xs:element name="somename">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="basetype">
....
....
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
Tip: Use o elemento de extensão / restrição para expandir ou limitar o tipo simples de base para o elemento.
Aqui está um exemplo de um elemento XML, "shoesize" , que contém apenas texto:
<shoesize country="france">35</shoesize>
O exemplo a seguir declara um complexType, "shoesize" . O conteúdo é definido como um valor inteiro, eo "shoesize" elemento também contém um atributo chamado "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>
Nós também poderia dar o elemento complexType um nome, e deixar que o "shoesize" elemento tem um atributo do tipo que se refere ao nome do complexType (se você usar esse método, vários elementos podem se referem ao mesmo tipo complexo):
<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>