XSD: descripción general
La definición de esquema XML, comúnmente conocida como XSD, es una forma de describir con precisión el lenguaje XML. XSD verifica la validez de la estructura y el vocabulario de un documento XML con las reglas gramaticales del lenguaje XML apropiado.
Un documento XML se puede definir como:
Well-formed- Si se adhiere el documento XML en todo el XML Normas generales tales como etiquetas deben estar correctamente anidados, apertura y de cierre deben estar equilibrados, y las etiquetas vacías deben terminar con '/>', entonces se llama como bien formada .
OR
Valid- Un documento XML que se dice que es válido cuando no solo está bien formado , sino que también se ajusta al XSD disponible que especifica qué etiquetas usa, qué atributos pueden contener esas etiquetas y qué etiquetas pueden aparecer dentro de otras etiquetas, entre otras propiedades .
El siguiente diagrama muestra cómo se usa XSD para estructurar documentos XML:
Aquí hay un código XSD simple. Mira esto.
<?xml version = "1.0"?>
<xs:schema xmlns:xs = "http://www.w3.org/2001/XMLSchema">
targetNamespace = "http://www.tutorialspoint.com"
xmlns = "http://www.tutorialspoint.com"
elementFormDefault = "qualified">
<xs:element name = 'class'>
<xs:complexType>
<xs:sequence>
<xs:element name = 'student' type = 'StudentType' minOccurs = '0'
maxOccurs = 'unbounded' />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:complexType name = "StudentType">
<xs:sequence>
<xs:element name = "firstname" type = "xs:string"/>
<xs:element name = "lastname" type = "xs:string"/>
<xs:element name = "nickname" type = "xs:string"/>
<xs:element name = "marks" type = "xs:positiveInteger"/>
</xs:sequence>
<xs:attribute name = 'rollno' type = 'xs:positiveInteger'/>
</xs:complexType>
</xs:schema>
Caracteristicas
Aquí hay una lista de algunas de las características populares de XSD:
- Los XSD se pueden ampliar para futuras adiciones.
- XSD es más rico y poderoso que DTD.
- XSD está escrito en XML.
- XSD admite tipos de datos.
- XSD admite espacios de nombres.
- XSD es la recomendación de W3C.