|
||
|
|
|
Avaliação:
![]() ![]() ![]() ![]() | Publicado em: 28/12/2006Um pouco além do XML: Introdução ao XML Schema (XSD) - Parte 5
Gustavo Maia Aguiar é administrador de Empresas pela Universidade de Brasília (UnB) e pós-graduado em bancos de dados pela Universidade Católica de Brasília (UCB), atua na área de tecnologia de informação desde 2001, exercendo funções de desenvolvedor, analista, administrador de banco de dados (DBA) e administrador de dados (AD). É profissional certificado (MOS, MCDBA, MCAD, MCTS (SQL 2005), MCITP (DB Dev), MCITP (DB Admin), MCT e Itil Certified Professional) e suas áreas de interesse incluem .NET, XML, SQL Server, banco de dados em geral e Business Intelligence. É membro ativo dos fóruns MSDN e TechNet além de moderador da comunidade SQL Server Brasil (Orkut).
ConclusãoA utilização de mecanismos de validação que contemplem unicidade, chaves e referências entre elementos demonstra mais uma vez o quão poderoso o XML Schema pode ser na atribuição de validar documentos XML. Assim como um banco de dados, o XML Schema provê mecanismos eficientes para assegurar a qualidade dos dados. Essa proximidade, no entanto, não significa que o dcoumentos XML e esquemas irão substituir os bancos de dados relacionais ou devam ser utilizados como tal. Ainda que o XML Schema possua estruturas muito similares de validação, arquivos XML não possuem algumas características essenciais encontradas em bancos de dados como gerenciamento da concorrência, organização interna de dados mais eficiente, segurança, etc. Utilizar o XML Schema para realizar validações de documentos XML não significa dizer que o XML é um mecanismo melhor que um banco de dados para persistência de dados. Após cinco artigos sobre XML Schema, creio que foi possível mostrar o que é XML Schema, como utilizá-lo e porque ele é importante na validação de documentos XML. Esses artigos servem como uma mera introdução ao padrão já que de forma nenhuma era minha pretensão esgotá-lo. O padrão contempla outros recursos que não foram abordados como grupos de substituição, poliformismo, recursividade, etc. Esses artigos devem servir apenas como um ponto de partida já que as explicações no site do W3C não são tão didáticas. Um aspecto que pode passar desapercebido nos primeiros contatos com XML Schema é o "parser" utilizado na construção de esquemas e validação de documentos XML. Embora muitos fornecedores utilizem o XML Schema em seus produtos, a maioria desses produtos não o implementa totalmente. Dessa forma é possível que um determinado esquema consiga funcionar bem em um determinado produto e não funcione corretamente em outro produto. O funcionamento adequado dependerá do "parser" utilizado na interpretação do XML Schema. O Internet Explorer 6 possui um "parser" capaz de examinar um documento XML quanto a sua formação, mas é incapaz de realizar críticas mais apuradas em relação à validade de um documento XML (mesmo que um esquema seja utilizado). Alguns outros "parsers" como .NET Xml Parser, Xerces, etc são mais criteriosos e aderentes ao padrão XML Schema. Para evitar problemas tente manter os esquemas o mais simples possível. Recursos mais avançados não devem ser utilizados se não forem estritamente necessários. A simplicidade aumenta a compatibilidade com outros "parsers". Existe um grande paradoxo na construção de esquemas de validação de documentos XML. Se o XML em sua essência é algo tão simples e um XML Schema é um documento XML, por que a construção de um esquema precisa ser tão difícil ? É normal uma grande dificuldade no início (principalmente sem a ajuda de uma ferramenta), mas à medida que esquemas vão sendo construídos essa dificuldade se reduz. Se hoje é comum pensar "XML são simples, esquemas são complexos" muito disso deve-se a jovialidade desse padrão. Embora a recomendação oficial do XML Schema tenha sido lançada em 2001, só há pouco tempo é que esse padrão começou a ganhar forte aceitação do mercado. Ainda hoje são encontradas aplicações que utilizam arquivos TXT para trocas de dados ou que ainda dependam de rotinas complexas envolvendo uma linguagem de programação e um banco de dados para somente ao final verificar a validade de um documento. Tudo isso seria muito mais simples se o XML fosse utilizado. O caminho natural tende para essa direção. Acredito que em um futuro próximo conhecer XML Schema será tão comum quanto conhecer instruções SQL ou conhecimentos de orientação a objeto. Um ótimo 2007 para todos Arquivos anexos ao artigo
Artigos relacionados
Links relacionados
Este artigo é a parte 5 de 5 da seguinte série:
Uderson Luis Fermino <uderson@gmail.com>
Cara, agradeço a seu artigo por te me ajudado muito e contribuito para meu maior crescimento.
![]() ![]() ![]() ![]() ![]() Edimilson <edimilsonramos@bol.com.br>
Excelente o artigo, didático e muito util.
![]() ![]() ![]() ![]() ![]() Luiz <luiz@skora.com.br>
Parabéns pelo exelente artigo!
![]() ![]() ![]() ![]() ![]() rafael <rafapaz@gmail.com>
gostei muito dos artigos. Direto, prático e didático. Parabéns!
![]() ![]() ![]() ![]() ![]() Edemilson A. de Almeida <ede_aparecido@yahoo.com.br>
Valeu Gustavo. Este seu artigo sobre XML me ajudou muito no projeto semestral na faculdade, porque você aliou técnica e clareza nele. Parabéns.
![]() ![]() ![]() ![]() ![]() Euripedes Borges <euripedesborges@netsite.com.br>
Adorei esse artigo sobre XML, "Um pouco além do XML". Realmente foi muito bom.
![]() ![]() ![]() ![]() ![]() Rodrigo <drigo_rc@hotmail.com>
O Grande problema de algumas especificações é possuir um vocabulário muito restrito.
Esse tutorial em 5 parte é excelente para quem quer aprender e não entende bem as descrições dadas pela W3C. Parabéns ![]() ![]() ![]() ![]() ![]() Gustavo Dettenborn <gustavodettenborn@gmail.com>
Muito bom o seu artigo cara...
Mas rolou um dúvida devido a pouca experiência com XPath e schema. Pode-se referenciar outro arquivo no selector? Ex: <xsd:key name="pkLivro"> <xsd:selector xpath="outroXML:elementoLivro"/> <xsd:field xpath="@ISBN"/> </xsd:key> É possível??? Desde já agradeço... ![]() ![]() ![]() ![]() ![]() ![]() |
|
|