<?xml version="1.0" encoding="ISO-8859-1"?>
<users>
<user number="0775547857">
<step stepnumber="1">complete</step>
<step stepnumber="2">complete</step>
<step stepnumber="3">complete</step>
</user>
<user number="0775543754">
<step stepnumber="1">complete</step>
<step stepnumber="2">complete</step>
</user>
<user number="0777743059">
<step stepnumber="1">complete</step>
</user>
</users>
Étant donné un nombre, je souhaite trouver le nombre maximal de pas dans la liste des étapes.XPath correspondant à l'élément avec la valeur maximale d'un attribut
Ce que j'ai jusqu'à présent est //user[@number='0775547857']/step[@stepnumber]
Et je pense que je dois utiliser la fn: max mais je ne parviens pas à sur la façon d'utiliser la fonction max passer la liste des numéros d'étape.
Exemple: Si je donne le numéro 0775547857
, le nombre maximum d'étape est 3
et pour 0775543754
il est 2
et ainsi de suite.
Merci beaucoup d'avance.
Est-ce correct?
//user[@number='0772243950']/step[fn:max((@stepnumber))]
Bonne question (1). Voir ma réponse pour l'explication et séparer les solutions XPath 2.0 et XPath 1.0. –