Quel XPath puis-je utiliser pour sélectionner une catégorie avec un atsortingbut name spécifié et tout auteur de noeud enfant avec la valeur spécifiée.
J’ai essayé différentes variantes du chemin ci-dessous sans succès:
//quotes/category[@name='Sport' and author="James Small"]
Le XML:
James SmallQuote OneQuote nine Stephen Swann Quote eleven
Essayer:
//category[@name='Sport' and ./author/text()='James Small']
Utiliser :
/category[@name='Sport' and author/text()[1]='James Small']
Ou utiliser:
/category[@name='Sport' and author[starts-with(.,'James Small')]]
C’est une bonne règle d’essayer d’éviter d’utiliser le pseudo-opérateur //
chaque fois que possible, car son évaluation peut généralement être très lente.
Aussi:
./somename
est équivalent à:
somename
il est donc recommandé d’utiliser ce dernier.
question n’est pas claire, mais ce que je comprends, vous devez sélectionner une catégorie qui a atsortingbut name et devrait avoir auteur enfant avec la valeur spécifiée, corrigez-moi si je suis usé
voici un xpath
//category[@name='Required value'][./author[contains(.,'Required value')]] eg //category[@name='Sport'][./author[contains(.,'James Small')]]