Tutorial de esquema XML
O que é um esquema XML?
Um esquema XML descreve a estrutura de um documento XML.
A linguagem XML Schema também é conhecida como XML Schema Definition (XSD).
Exemplo de XSD
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="note">
<xs:complexType>
<xs:sequence>
<xs:element name="to" type="xs:string"/>
<xs:element name="from" type="xs:string"/>
<xs:element name="heading" type="xs:string"/>
<xs:element name="body" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
O objetivo de um esquema XML é definir os blocos de construção legais de um documento XML:
- os elementos e atributos que podem aparecer em um documento
- o número de (e ordem de) elementos filhos
- tipos de dados para elementos e atributos
- valores padrão e fixos para elementos e atributos
Por que aprender esquema XML?
No mundo XML, centenas de formatos XML padronizados estão em uso diário.
Muitos desses padrões XML são definidos por XML Schemas.
XML Schema é uma alternativa baseada em XML (e mais poderosa) para DTD.
Tipos de dados de suporte a esquemas XML
Um dos maiores pontos fortes dos esquemas XML é o suporte para tipos de dados.
- É mais fácil descrever o conteúdo permitido do documento
- É mais fácil validar a exatidão dos dados
- É mais fácil definir facetas de dados (restrições de dados)
- É mais fácil definir padrões de dados (formatos de dados)
- É mais fácil converter dados entre diferentes tipos de dados
Esquemas XML usam sintaxe XML
Outro grande ponto forte dos esquemas XML é que eles são escritos em XML.
- Você não precisa aprender um novo idioma
- Você pode usar seu editor de XML para editar seus arquivos de esquema
- Você pode usar seu analisador XML para analisar seus arquivos de esquema
- Você pode manipular seu Schema com o XML DOM
- Você pode transformar seu Schema com XSLT
Os esquemas XML são extensíveis porque são escritos em XML.
Com uma definição de esquema extensível, você pode:
- Reutilize seu esquema em outros esquemas
- Crie seus próprios tipos de dados derivados dos tipos padrão
- Fazer referência a vários esquemas no mesmo documento
Comunicação de dados segura de esquemas XML
Ao enviar dados de um remetente para um destinatário, é essencial que ambas as partes tenham as mesmas “expectativas” sobre o conteúdo.
Com XML Schemas, o remetente pode descrever os dados de uma maneira que o destinatário entenda.
Uma data como: "03-11-2004" será, em alguns países, interpretada como 3.Novembro e em outros países como 11.Março.
No entanto, um elemento XML com um tipo de dados como este:
<date type="date">2004-03-11</date>
garante um entendimento mútuo do conteúdo, pois o tipo de dados XML "data" requer o formato "AAAA-MM-DD".
Bem formado não é suficiente
Um documento XML bem formado é um documento que está em conformidade com as regras de sintaxe XML, como:
- deve começar com a declaração XML
- deve ter um elemento raiz único
- as tags iniciais devem ter tags finais correspondentes
- os elementos diferenciam maiúsculas de minúsculas
- todos os elementos devem ser fechados
- todos os elementos devem ser aninhados corretamente
- todos os valores de atributo devem ser citados
- entidades devem ser usadas para caracteres especiais
Mesmo que os documentos estejam bem formados, eles ainda podem conter erros, e esses erros podem ter sérias consequências.
Pense na seguinte situação: você pede 5 impressoras a laser brutas, em vez de 5 impressoras a laser. Com os esquemas XML, a maioria desses erros pode ser detectada pelo software de validação.