у меня проблема с выражением xpath.
В принципе, проблема может быть объяснена в следующем коде:
<xsl:for-each select="/b1im:B1IMessage/b1im:Header/b1im:Z/SortInbound/group">
<!-- Check if entry from duplicate table is found for the current AccountingEntry -->
<xsl:variable name="externalId" select="../externalId"></xsl:variable>
<xsl:value-of select="/b1im:B1IMessage/b1im:Body/b1im:Payload[@ObjectRole='CA']/jdbc:SqlResult/jdbc:ResultSet/jdbc:Row[jdbc:external_id= /../externalId]/jdbc:external_id"></xsl:value-of>
<xsl:variable name="group" select="./@id"></xsl:variable>
<!-- if it is no dupe => output -->
<xsl:choose>
<xsl:when test="/b1im:B1IMessage/b1im:Body/b1im:Payload[@ObjectRole='CA']/jdbc:SqlResult/jdbc:ResultSet/jdbc:Row[jdbc:external_id = ../externalId]/jdbc:external_id">
Что я хочу сделать, так это использовать значение "../externalId" (контекст для каждого) для теста (последняя строка). Это сработало бы, если бы я использовал переменную ($externalId), но переменная устанавливается только один раз (первая итерация цикла)... Есть ли способ, как я могу получить доступ к контексту для каждого в выражении xpath?
Заранее спасибо!! Тобиас
xslt
, так как это выражение XPath размещено в XSLT - person   schedule 26.08.2010