0% ont trouvé ce document utile (0 vote)
32 vues2 pages

Exercices et solutions XPath détaillés

Le document présente deux exercices sur l'utilisation des expressions XPath pour interroger un arbre XML. L'Exercice 1 demande de trouver divers noeuds et attributs basés sur des critères spécifiques, tandis que l'Exercice 2 évalue les réponses de certaines expressions XPath. Les solutions aux exercices sont fournies avec des expressions XPath correspondantes pour chaque question.

Transféré par

nourelhoudaoukoukes
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
32 vues2 pages

Exercices et solutions XPath détaillés

Le document présente deux exercices sur l'utilisation des expressions XPath pour interroger un arbre XML. L'Exercice 1 demande de trouver divers noeuds et attributs basés sur des critères spécifiques, tandis que l'Exercice 2 évalue les réponses de certaines expressions XPath. Les solutions aux exercices sont fournies avec des expressions XPath correspondantes pour chaque question.

Transféré par

nourelhoudaoukoukes
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Exercices avec solution

Exercice 1

On garde l'arbre donné dans le devoir 2, dont la forme serialisé est:

<A><B><E></E><D><F></F><G></G></D><D><G></G></D></B><B><E></E><D></D>
</B><B></B><C></C><D><F></F><G></G></D><B><E></E><D><G></G></D></B></A>

Trouver l'expression xpath qui retourne:


1- tous les noeuds qui ont au moin deux fils.
2- la valeur de l'attribut nom de tous les noeuds qui ont au moin deux fils.
3- tous les noms des noeuds qui ont au moin deux fils.
4- tous les noeuds qui sont frere d'un noeuds D.
5- tous les noms des noeuds qui sont frere d'un noeud D.
6- tous les noeuds qui sont frere d'un noeuds D et petit fils d'un noeud B.
7- tous les noms des noeuds qui sont frere d'un noeud D et petit fils d'un noeud B.
8- pour chaque noeud, afficher le nom de l'element, la valeur des attributs nom et age.
9- les cousins du noeud /A/B[1]/D[1]

Exercice 2:

Toujours en gardant le meme arbre que celui donnée dans l'exercice 1, quel sont les reponses
données par les expression xpath suivantes:

1- /A/C/following::*/name()

2-/A/B/D/ancestor::*/name()

3- /A/B/D/ancestor::*/concat(name(),' position ', position(),'; ')

4- /A/concat(name(),' nombre de fils ' ,count(./*))

Exercice 1 solution

1- tous les noeuds qui ont au moin deux fils.


//*[count(./*)>=2]
2- la valeur de l'attribut nom de tous les noeuds qui ont au moin deux fils.
//*[count(./*)>=2]/@nom
3- tous les noms des noeuds qui ont au moin deux fils.
//*[count(./*)>=2]/name()
4- tous les noeuds qui sont frere d'un noeuds D.
//*[./following-sibling::D | ./preceding-sibling::D]
5- tous les noms des noeuds qui sont frere d'un noeud D.
//*[./following-sibling::D | ./preceding-sibling::D]/name()
6- tous les noeuds qui sont frere d'un noeuds D et petit fils d'un noeud B.
//*[(./following-sibling::D | ./preceding-sibling::D ) and ../../B]
7- tous les noms des noeuds qui sont frere d'un noeud D et petit fils d'un noeud B.
//*[(./following-sibling::D | ./preceding-sibling::D ) and ../../B]/name()
8- pour chaque noeud, afficher le nom de l'element, la valeur des attributs nom et age.
//*/concat(name(), ', @nom= ',@nom,', @age= ',@age)
9- les cousins du noeud /A/B[1]/D[1]
/A/B[1]/following-sibling::*/*

Exercice 2 solution:

quel sont les reponses données par les expression xpath suivantes
1- /A/C/following::*/name()
DFGBEDG
2-/A/B/D/ancestor::*/name()
ABBB
3- /A/B/D/ancestor::*/concat(name(),' position ', position(),'; ')
A position 1; B position 2; B position 3; B position 4;
4- /A/concat(name(),' nombre de fils ' ,count(./*))
A nombre de fils 6

Vous aimerez peut-être aussi