Introduction

XML est un excellent langage de description de documents utilisable dans de nombreux domaines. Il est donc naturel que les implémentations d’analyseurs syntaxiques fleurissent dans tous les langages, y compris le C. Parmi les plus connus, expat est utilisé entre autres dans des projets de Mozilla. Mais nous retenons libxml2, qui a été préféré par le projet GNOME et qui porte d’ailleurs le surnom de gnome-xml même s’il en est indépendant. libxml2 présente plusieurs avantages par rapport à d’autres projets similaires. Cette bibliothèque implémente à la fois les méthodes SAX et DOM pour la lecture et l’interprétation de documents XML. Elle accompagne une autre bibliothèque du même auteur, libxslt, qui permet de travailler sur les transformations XSLT comme nous le verrons dans la dernière recette de ce chapitre. Cette bibliothèque propose de plus une API très fournie. Cet avantage devient en contrepartie son principal défaut pour démarrer avec, car son approche prend beaucoup de temps.

Pour utiliser libxml2, outre les indispensables bases de XML, il faut avoir quelques notions sur DOM et SAX. Ce sont deux méthodes de lecture et de traitement de documents XML. Le principe de DOM consiste à lire le document en entier et à le mettre en mémoire sous forme d’un arbre, que nous appellerons arbre DOM dans la suite du chapitre. Tous les traitements s’effectuent...

Pour consulter la suite, découvrez le livre suivant :
couv_EI3CACT.png
60-signet.svg
En version papier
20-ecran_lettre.svg
En version numérique
41-logo_abonnement.svg
En illimité avec l'abonnement ENI
130-boutique.svg
Sur la boutique officielle ENI
Précédent
Décompresser un fichier tar.gz ou tar.bz2
Suivant
Lire un document XML