Cours sur la programmation SAX
Principes
SAX permet un parcours générique d'un document XML, c'est-à-dire qu'il est indépendant du format.
SAX signifie Simple API for XML et est donc disponible dans différents langages de programmation, avec la même interface.
Le principe de SAX est simple : pour chaque ouverture ou fermeture d'élément, chaque feuille texte, etc. un événement (event) est déclenché. Le développeur doit simplement anticiper ces événements et leurs associer les instructions à effectuer lorsqu'ils se déclencheront.
SAX parcourt le document XML dans l'ordre du document et active du code associé selon les événements qui se déclenchent. De plus, contrairement à d'autres modèles de traitement XML (DOM, XPath et XSLT), SAX ne charge pas le document en mémoire mais se contente de le parcourir. SAX est donc particulièrement adapté pour réaliser des traitements XML simples, en séquence, éventuellement sur des fichiers XML très louds.
Écrire un parser SAX
Le programme principal débute par la création du parser et la fourniture du fichier à traiter.
Pour définir les actions effectuées par le parser, SAX permet de spécifier le comportement à avoir lorsque certains événements se déclenchent :
- startDocument: méthode appelée au début du document.
- endDocument: méthode appelée à la fin du document.
- startElement: méthode appelée à chaque fois qu'une balise ouvrante est rencontrée.
- endElement: méthode appelée à chaque fois qu'une balise fermante est rencontrée.
- characters: méthode appelée à chaque fois qu'une feuille textuelle est rencontrée.