Thomas J.S.: knoten abfragen

Beitrag lesen

Hallo,

wie fragt man auf der gleichen knoteneben ein element innerhalb einer for-each anweisung ab?

<element1 att="1">wertx</element1>
<element1 att="2">wertx</element1>
<element2 test="1">werty</element2>

Wenn ich nun zb. abfrage

<xsl:for-each select="element1">

</xsl:for-each>

Wie komme ich am besten zu element2 mit einer XPath Angabe innerhalb der for-each anweisung, welches für den gleichen Attributewert hat - aber eben in einem bestimmten anderen Attribute. Man könnte ja mit parent::*/element2[@test ...... arbeiten, aber gibt es auch eine andere XPath Zuweisung. element2 kann über auch auch manchmal unter dem aktuellen element stehen. Was scheint hier geeignet?

<xsl:for-each select="element1">
  <xsl:variable name="foo" select="@bar" />

Der Ausdruck muss dann so lauten:

(preceding-sibling::element2[@attribut = $foo] or following-sibling::element2[@attribut = $foo])

Grüße
Thomas