Saltar al contenido principal

sequence

El elemento sequence especifica el orden en el que obligatoriamente deben aparecer los elementos hijo de un elemento.

Consideremos el siguiente documento XSD:

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="objeto" type="propiedades-objeto"/>

<xs:complexType name="propiedades-objeto">
<xs:complexContent>
<xs:restriction base="xs:anyType">
<xs:sequence>
<xs:element name="material" type="xs:string" />
<xs:element name="color" type="xs:string" />
</xs:sequence>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
</xs:schema>

En el esquema anterior, se está definiendo que <objeto> debe tener en su contenido una secuencia de elementos: <material> y <color>. Deben aparecer estrictamente en ese orden y es obligatorio que aparezcan.

Dentro de sequence se deben definir uno o varios elementos element.

El documento XSD se puede acortar omitiendo compleContent y restriction, quedando de la siguiente manera:

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="objeto" type="propiedades-objeto"/>

<xs:complexType name="propiedades-objeto">
<xs:sequence>
<xs:element name="material" type="xs:string" />
<xs:element name="color" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:schema>

Un ejemplo de documento XML válido es el siguiente:

<objeto>
<material>Plástico</material>
<color>Gris</color>
</objeto>