A validação de documentos XML

Publicado:

Leitura 4 minutos

A validação de documentos XML

Um documento XML que atende as regras de sintaxe é um documento bem-formado. Porém, para a maioria das aplicações, ele deve ser validado baseado numa estrutura previamente definida, que constitui uma família de documentos. Estas especificações têm alguns mecanismos para se determinar a estrutura de validação de um documento XML. (PINHEIRO, 2003). Segundo Daum e Merten (2002), no passado a DTD (document type definition ? definição de tipo de documento) era o modo padrão de se definir um esquema para um documento XML. No entanto, mais de uma dezena de linguagens alternativas de definição de esquemas foram criadas por várias instituições e indivíduos. Entretanto, o W3C produziu uma nova linguagem de esquema, a XML Schema.

a.    DTD

O DTD é um documento (esquema) que validará um documento XML. Lee e Chu apud Pinheiro (2003), em estudos comparativos  para    validação    estrutural   e sintática da XML, apontam vários fatores restritivos ao uso da DTD: o   sua sintaxe não é baseada ou derivada da XML, o que não permite que ela seja validada por um parser. o   as declarações da DTD são globais, não permitindo declarar elementos de mesmo nome em pontos distintos do documento o   a DTD tem deficiências na especificação do tipo de dado dos elementos (inteiro, real, alfa-numérico, etc).             Na figura 1, temos um exemplo de uma DTD, que valida o documento XML da figura do artigo anterior (Alguns conceitos da XML).     Figura 01: Exemplo de uma DTDFonte: Arquivo pessoal  

As melhores notícias de tecnologia B2B
Acompanhe todas as novidades diretamente na sua caixa de entrada

b.    XML Schema

As deficiências apontadas na DTD, foram suficientes para o W3C, em 2001, lançar e recomendar o XML Schema. Segundo Pinheiro (2003, p. 39), ?um Esquema XML tem por objetivo descrever a estrutura de um documento. Ele define os elementos existentes no documento, bem como sua ordem e os valores possíveis para os conteúdos?. A figura 2 nos mostra um exemplo de um XML Schema.                                                                                    Comment describing your root element                                                                                       Figura 02: Exemplo de um XML SchemaFonte: Arquivo pessoal As principais características do XML Schema são explicadas por Pinheiro (2003): o   tem a mesma estrutura de um documento XML, ou seja, é uma aplicação XML, com o mesmo vocabulário,[1] capaz de definir estruturalmente classes de documentos XML, e validá-las; o   namespaces (espaço de nomes): contextualiza um nome de elemento ou de atributo em um documento XML, ou seja, determina um escopo para os elementos declarados. Utilizando o espaço de nomes, passa a ser permitido a repetição de um nome de elemento em um documento XML, desde que esteja em escopos diferentes. Declaram-se os namespaces apontando uma URI (uniform resource identifier). A XML permite que se declarem vários namespaces em um único documento, para tal, identifica cada um separado pelo caracter dois pontos (?:?), da palavra reservada >   grande diversidade de tipos de elementos; Com relação à criação do XML Schema, temos um conjunto de regras determinadas pelo W3C, que são: definições básicas; estruturas; tipos de dados.   Referências: DAUM, Bethold; MERTEN, Udo. Arquitetura de sistemas com XML. Rio de Janeiro: Campus, 2002. PINHEIRO, Marden C. Proposta de um esquema XML para o intercâmbio de dados entre programas de análise por elementos finitos. 2003. 117 f. Dissertação (Mestrado em Tecnologia) ? Centro Federal de Educação Tecnológica de Minas Gerais, Belo Horizonte, 2003. W3C WORLD WIDE WEB Consortium. Disponível em: . Acesso em: 15 out. 2010. ZAIDAN, F. H. Sistemas de informações empresariais: integração de sistemas interorganizacionais utilizando troca de documentos eletrônicos via XML. 2006. 78 f. Monografia (Bacharelado em Ciência da Computação). FACE ? Faculdade de Ciências Empresariais ? Universidade FUMEC, 2006. [1] Vocabulário é um conjunto de regras estruturais e escopo de valores de uma família de documentos. O W3c já recomedou diversos vocabulários, dentre eles: MathML (descrição de fórmulas matemáticas), CML (química), MML (clínica médica), dentre outros.

Sobre o Autor

Construiu uma sólida carreira de 40 anos na área da Gestão da TI, focando na informação e no conhecimento, na estratégia, nos sistemas, na inovação, nos processos e projetos. Consultor, palestrante, educador, pesquisador e escritor. Doutor em Ciência da Informação, Mestre em Administração, Bacharel em Ciência da Computação e Analista de Sistemas. Coordenador, professor e pesquisador de pós-graduações Lato e Stricto Sensu. Criador do Treinamento de Ideação e Priorização de Projetos e do KMCanvas.

Ver publicações deste autor