Recherche d'un path dans un document XML
Bonjour,
j'ai le fichier XML incomplet suivant :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| <number="1" depth="0">
<number="2" depth="1">
<number="4" depth="2">
<number="8" depth="3">
...
</number>
</number>
<number="3" depth="2">
<number="5" depth="3">
...
</number>
<number="6" depth="3">
...
</number>
</number>
</number>
</number> |
Ce fichier représente l'arbre incomplet suivant :
Code:
1 2 3 4 5 6 7 8 9
| 1
|
2 ----> Doubles or Sums of the precedings numbers
/ \
3 4 ----> Doubles or Sums of the precedings numbers
/ \ \
/ \ \
5 6 8
... etc |
Je veux utiliser des fichiers XML afin de ne pas être limité en mémoire.
Je voudrais à partir du fichier XML faire trois choses le plus rapidement possible, quitte à faire appel à des bibliothèques extérieures comme lxml (c'est même sûr qu'il faudra faire cela) :
- Savoir si un nombre N apparait en tant que valeur de number.
- Si un nombre N apparait dans le fichier XML, j'aimerais récupérer le chemin qui permet d'y accéder. Par exemple, pour 8, j'aimerais récupérer [1,2,4], et pour 3 avoir [1,2]. J'aimerais aussi récupérer sa profondeur depth indiquée dans mon fichier XML,mais je pense inutile d'utiliser ce depth.
- Une dernière chose, j'aimerais aussi, afin de construire mon fichier XML, ajouter des noeuds là où il y a des points de suspension.
Toute info. est la bienvenue.