Fichiers : SimpleSaxParser.java, wg.xml, wg.dtd, wg-nodtd.xml
Corrigé : La présence de la DTD permet au parser SAX d'ignorer les espaces inutiles (définition par défaut dans la classe DefaultHandler de la fonction ignorableWhitespace). Si le fichier n'est pas conforme à sa DTD et si le parseur est validant alors le parseur affiche où la DTD n'est pas respectée.
Corrigé : SimpleSaxParserIndent.java
Corrigé : SimpleSaxParserCount.java
Corrigé : SimpleSaxParserCom.java
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
Fichiers : - booker.xml, cd.xml
Corrigé :
XPath.java
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.
Option : Etendez votre classe en autorisant
l'opérateur de restriction ([...]), ainsi que l'axe
"descendant-or-self" (//).