XSD - Visão geral
A definição de esquema XML, comumente conhecida como XSD, é uma maneira de descrever precisamente a linguagem XML. O XSD verifica a validade da estrutura e do vocabulário de um documento XML em relação às regras gramaticais da linguagem XML apropriada.
Um documento XML pode ser definido como -
Well-formed- Se o documento XML aderir a todas as regras XML gerais, como tags, devem ser aninhadas corretamente, as tags de abertura e fechamento devem ser balanceadas e as tags vazias devem terminar com '/>', então ele é chamado de bem formado .
OR
Valid- Um documento XML considerado válido quando não é apenas bem formado , mas também está em conformidade com o XSD disponível que especifica quais tags ele usa, quais atributos essas tags podem conter e quais tags podem ocorrer dentro de outras tags, entre outras propriedades .
O diagrama a seguir mostra como o XSD é usado para estruturar documentos XML -
Aqui está um código XSD simples. Dê uma olhada nisto.
<?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>
Características
Aqui está uma lista de alguns dos recursos populares do XSD -
- Os XSDs podem ser extensíveis para adições futuras.
- O XSD é mais rico e poderoso do que o DTD.
- XSD é escrito em XML.
- XSD suporta tipos de dados.
- XSD oferece suporte a namespaces.
- XSD é a recomendação W3C.