Introdução ao XmlLite

 

A biblioteca XmlLite permite aos desenvolvedores criarem aplicativos de alto desempenho com base em XML com um grau alto de interoperabilidade com outros aplicativos que seguem o padrão XML 1.0. As principais metas do XmlLite são a facilidade de uso, desempenho e conformidade aos padrões.

O XmlLite funciona com qualquer linguagem do Windows que possa usar bibliotecas de vínculo dinâmico (DLLs), mas a Microsoft recomenda C++. O XmlLite vem com todos os arquivos de suporte necessários para uso com C++, mas se você quiser usá-lo com outras linguagens, pode ser necessário realizar algum trabalho adicional.

O XmlLite funciona com várias versões do compilador C++ da Microsoft, mas os exemplos na documentação foram validados apenas com a versão mais recente do Visual Studio.

Este tópico fornece uma visão geral do XmlLite e algumas diretrizes para qual analisador XML usar em vários cenários.

Para obter informações de instalação, consulte Instalar o XmlLite.

A Microsoft fornece vários analisadores XML:

  • XmlLite (nativo)

  • MSXML (SAX2) (nativo)

  • System.XML.XmlReader (gerenciado)

As seguintes implementações de Document Object Model (DOM) possuem analisadores internos:

  • MSXML (DOM)

  • System.XML (XmlDocument)

O XML pode ser usado como um formato para armazenar documentos, como documentos do Microsoft Office Word. Ele também pode ser usado para codificar dados para realizar marshalling de chamadas de método entre limites de máquina (SOAP). As empresas podem usar XML para enviar e receber ordens de compra e faturas. As tecnologias da Web podem usar XML para enviar dados entre o servidor da Web e o navegador do cliente. Servidores de banco de dados podem retornar os dados de consultas em XML para processamento adicional por outros aplicativos. Como é um formato muito flexível, o XML pode ser usado em uma ampla variedade de cenários.

Em geral, os cenários de uso podem ser divididos em duas categorias:

  • Alguns cenários trabalham com documentos XML de origens externas, e não se sabe se os documentos XML são válidos. Nesses cenários, a verificação da validade é importante. Normalmente, os desenvolvedores usam esquemas XSD ou Definições de Tipo de Documento (DTDs) para verificar a validade. Mesmo que o desempenho seja uma questão importante, a maior preocupação é que o aplicativo que realizará a leitura do XML receba um documento válido. Salvar e carregar documentos de e para uma variedade de aplicativos são cenários de uso que se enquadram nessa categoria.

  • Alguns sistemas de software usam o XML como armazenamento de dados ou meio de comunicação. Nesses cenários, o desenvolvedor sabe que o documento XML é válido, talvez porque outra parte do sistema (que está sob o controle do mesmo desenvolvedor ou organização) tenha gerado o XML. A questão da validade dos documentos não é uma preocupação. Um exemplo dessa abordagem um sistema de software executado em um farm de servidores, em que o XML é usado para comunicação entre vários servidores e processos. Outro exemplo seria um aplicativo relativamente complexo que precise armazenar e recuperar uma grande quantidade de informações. O desenvolvedor possui controle total sobre o formato do documento XML.

O foco do XmlLite é o desempenho. Assim, entre os dois cenários, o XmlLite é mais apropriado para o segundo. O XmlLite permite que os desenvolvedores escrevam código eficiente (e rápido) para ler e gravar documentos XML. Na maioria dos cenários, o XmlLite analisa mais rapidamente do que o DOM no MSXML, ou o SAX2 no MSXML.

O XmlLite é mais adequado para uso com o C++. Se você estiver usando C#, Visual Basic .NET ou outras linguagens que usam common language runtime (CLR), é mais apropriado usar um dos analisadores em System. XML.

Alguns desenvolvedores desejam um cenário de implantação em que não seja necessário instalar o Microsoft .NET Framework nos computadores de implantação. O XmlLite não requer a instalação do .NET framework, podendo ser apropriado para essa situação.

Como o XmlLite é orientado para um desempenho ideal, ele não realiza validação de documento. Não há suporte para a validação por meio de esquemas XSD ou DTDs. Se você precisar de validação, é recomendável que você use MSXML ou System. XML.

Se você ler um documento que faça referência a um esquema XSD externo, o leitor XmlLite ignorará o esquema externo. Mesmo se o documento for inválido de acordo com o esquema, o leitor XmlLite não relatará erros.

Se você ler um documento que contém um esquema embutido, o leitor XmlLite retornará todos os elementos e atributos do esquema embutido, como se fossem partes do documento XML.

O XmlLite não oferece suporte a linguagens de script. Se você necessita usar XML de JScript ou Visual Basic Scripting Edition (VBScript), é mais apropriado usar Document Object Model (DOM) em MSXML.

Há suporte para Definições de Tipo de Documento (DTDs), mas somente para expansão de entidade e padrões para atributos, e não para validação de documento. Se você necessita validação de DTD, é recomendável que você use MSXML ou System. XML.

Se você habilitar DTDs, observe o seguinte: Se você usar o XmlLite para ler um documento que faça referência a um DTD, e o documento não for válido para aquele DTD, nenhum erro será gerado.

Os arquivos de tempo de execução e de desenvolvimento do XmlLite são necessários para executar os exemplos nesta documentação. Para obter mais informações, consulte Instalar o XmlLite.

Mostrar: