Elementos compuestos vacíos de XSD
- Página anterior Elementos de XSD
- Página siguiente XSD que solo contiene elementos
Un elemento compuesto vacío no puede contener contenido y solo puede contener atributos.
Elemento compuesto vacío:
Un elemento XML vacío:
<product prodid="1345" />
El elemento "product" mencionado anteriormente no tiene contenido. Para definir un tipo sin contenido, debemos declarar un tipo que solo pueda contener elementos en su contenido, pero en realidad no declararemos ningún elemento, como por ejemplo:
<xs:element name="product"> <xs:complexType> <xs:complexContent> <xs:restriction base="xs:integer"> <xs:attribute name="prodid" type="xs:positiveInteger"/> </xs:restriction> </xs:complexContent> </xs:complexType> </xs:element>
En el ejemplo anterior, definimos un tipo complejo con contenido compuesto. El elemento "complexContent" proporciona la señal de que pretendemos limitar o expandir el modelo de contenido de un tipo complejo, mientras que la limitación de "integer" declara una propiedad pero no introduce ningún contenido de elemento.
Sin embargo, también se puede declarar de manera más compacta este elemento "product":
<xs:element name="product"> <xs:complexType> <xs:attribute name="prodid" type="xs:positiveInteger"/> </xs:complexType> </xs:element>
O puedes dar un nombre a un elemento complexType y luego establecer un atributo type para el elemento "product" y referenciar este complexType nombre (a través de este método, varios elementos pueden referenciar el mismo tipo compuesto):
<xs:element name="product" type="prodtype"/> <xs:complexType name="prodtype"> <xs:attribute name="prodid" type="xs:positiveInteger"/> </xs:complexType>
- Página anterior Elementos de XSD
- Página siguiente XSD que solo contiene elementos