[Xpath] Deux contextes à la fois ?
Stephane Bortzmeyer <[email protected]>
| Newsgroups | gmane.text.xml.french.tech |
|---|---|
| Organization | NIC France |
| Message-ID | <[email protected]> |
Je cherche à faire une expression Xpath (c'est pour Schematron) qui
vérifie si un élément a la même valeur qu'un autre élément. En XSLT,
ça donne :
<xsl:template match="domain">
<!-- Y a t-il un <contact> dont le <handle> soit identique à
mon <holder> ? -->
<xsl:if test="/zone/contact[handle=holder]"/>
Mon problème est que je voudrais que "handle" soit évalué dans le
contexte du <contact> et "holder" dans celui du <domain>. À lire la
norme Xpath, je pense que je suis mal parti, tout est évalué dans le
contexte du noeud courant, ici <contact>. En XSLT, la solution serait
:
<xsl:variable name="holder"><axsl:value-of select="holder"/></xsl:variable>
<xsl:if test="/zone/contact[handle=$holder]"/>
mais cela ne marche pas pour Schematron où l'expression Xpath doit
être auto-suffisante (pas de variable).
Une idée ?