Biblioteca de analisador XML rápido em C
Expat XML Parser é um analisador XML orientado a fluxo escrito em C. Este utilitário software é o primeiro analisador XML de código aberto disponível. Ele encontrou um lugar em vários software de código aberto, como o Apache HTTP Server, Mozilla, PHP e Python. Expat se destaca com arquivos que são muito grandes para caber na RAM, e onde o desempenho e a flexibilidade são cruciais. É um programa gratuito que você pode copiar, distribuir e modificar sob a licença do MIT/X Consortium.
O que é Expat XML Parser?
Como observado, Expat é um analisador orientado a fluxo. No aplicativo, você registra funções de retorno de chamada — ou manipulador — com o analisador. Então você começa a alimentá-lo com o documento. O analisador reconhecerá partes dos documentos e chamará o manipulador apropriado para essa parte, supondo que você tenha registrado um. O documento será então alimentado ao analisador em partes, para que você possa começar a analisar antes de ter todos os documentos. Com isso, você pode analisar documentos muito grandes que não cabem na memória.
Os usuários, especialmente os iniciantes, acharão o aplicativo um um pouco intimidante
strong> por causa dos muitos tipos de manipuladores e opções que você pode definir. No entanto, você só precisa aprender quatro funções para fazer 90% do que fará com ele. Você pode criar um novo objeto analisador com XML_ParserCreate e definir manipuladores para tags de início e fim usando o XML_SetElementsHandler. Para definir um manipulador para texto, você pode usar o XML_SetCharacterDataHandler. Por fim, XML_Parse permite passar um buffer cheio de documentos para o analisador.
Normalmente, os programas registram funções de manipulador para o elemento XML para iniciar ou parar eventos e eventos de caractere . O Expat fornece recursos para tratamento sofisticado de eventos. Seus eventos de análise se assemelham aos eventos definidos na API de amostra para XML (SAX). No entanto, Expat não é um analisador compatível com SAX. Projetos que incorporam a biblioteca Expat geralmente constroem SAX – e possivelmente analisadores DOM – em cima do Expat. Mas, embora este aplicativo seja baseado principalmente em fluxo, ele suporta parar e reiniciar a análise em momentos arbitrários. Com isso, a implementação de um analisador pull é relativamente fácil.
Biblioteca de análise útil
Desde que foi lançado no mercado, Expat XMLP Parser tem sido uma ferramenta útil. Tem sido a escolha de muitos projetos de nível superior. É altamente eficiente e muito robusto. Também é bem testado e está em conformidade com os padrões. Pode ser um pouco esmagador devido a seus muitos manipuladores e opções, mas, no geral, você não errará com este aplicativo.