XML -- TP 5 : APIs JAVA (SAX et DOM) -- Correction


Exercice 1 : La classe SimpleSaxParser

Fichiers : SimpleSaxParser.java, wg.xml, wg.dtd, wg-nodtd.xml

Exercice 2 : La classe SimpleDomParser

Fichiers : SimpleDomParser.java

Reprendre les questions 1, 2 et 3 de l'exercice précédent, cette fois à partir du parseur DOM implémenté dans la classe SimpleDomParser. Inspirez-vous de la fonction walk_the_tree et définissez le traitement des noeuds selon leur type.

Corrigé : SimpleDomParserCount.java, SimpleDomParserIndent.java

Exercice 3 : Evaluation d'expression XPath "descendantes" à l'aide de SAX

Fichiers : - booker.xml, cd.xml

On souhaite développer une application permettant d'évaluer des requêtes XPath "descendantes", c'est-à-dire dont le seul axe possible est l'axe "child". Ecrivez une classe XPath.java permettant de résoudre ce problème. Elle pourra être utilisée de la façon suivante :

 java Xpath cd.xml CDlist/CD/performance/soloist
Pour interpréter la requête XPath, on pourra utiliser la libraire StringTokenizer présente dans le J2SE1.4 :
 String test = "gdt/expose/speaker"; 
 String[] result = test.split("/");
Vous utiliserez comme base de votre classe un parseur SAX. Votre application affichera le résultat le résultat de la requête, en séparant les différents noeuds sélectionnés.

Corrigé : XPath.java


Option : Etendez votre classe en autorisant l'opérateur de restriction ([...]), ainsi que l'axe "descendant-or-self" (//).