If I understand you correctly you don't need the current position, you
just need the preceding element, which is
preceding-sibling::*[1]
To look up the replacement word you would be best to use a key (which is
desined for exctly this use)
<xsl:key name="en2de"
match="wort[(_at_)xml:lang='de']"use="../wort[(_at_)xml:lang='en']"/>
template that replaces any english text that has a German dranslation
<xsl:template match="text()">
<xsl:variable name="t" select="."/>
<xsl:for-each select="document('dict.xml')">
<xsl:choose>
<xsl:when test="key('en2de',$t)
<xsl:value-of select="key('en2de',$t)"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$t"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
David
________________________________________________________________________
This e-mail has been scanned for all viruses by Star. The
service is powered by MessageLabs. For more information on a proactive
anti-virus service working around the clock, around the globe, visit:
http://www.star.net.uk
________________________________________________________________________
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--