Compte tenu de ce document xml:En utilisant XQuery/XPath pour obtenir la valeur d'attribut du nœud parent d'un élément
<?xml version="1.0" encoding="UTF-8"?>
<mydoc>
<foo f="fooattr">
<bar r="barattr1">
<baz z="bazattr1">this is the first baz</baz>
</bar>
<bar r="barattr2">
<baz z="bazattr2">this is the second baz</baz>
</bar>
</foo>
</mydoc>
qui est en cours de traitement par ce XQuery:
let $d := doc('file:///Users/mark/foo.xml')
let $barnode := $d/mydoc/foo/bar/baz[contains(@z, '2')]
let $foonode := $barnode/../../@f
return $foonode
Je reçois l'erreur suivante: Il semble que l'opération ../ consiste en quelque sorte à supprimer les nœuds correspondants du reste du document, de telle sorte que l'opération ../ pense que c'est le noeud de document.
Je suis ouvert à d'autres approches, mais la sélection du parent dépend de l'attribut enfant contenant une certaine sous-chaîne.
À la votre!
En effet, je fait! Merci beaucoup. –