also das ist mein ansatz.
<xsl:variable name="target_lang" select="en"/>
<xsl:variable name="source_lang" select="de"/>
<xsl:variable name="dict" select="document('ProgalDict.tmx')"/>
<xsl:template match="@*">
<xsl:variable name="thisWord" select="normalize-space(.)" />
<xsl:variable name="dictWord_de" select="$dict/tmx/body/tu/tuv[@xml:lang=$source_lang]/seg" />
<xsl:variable name="dictWord_en" select="$dictWord_de/../../tuv[@xml:lang=$target_lang]/seg" />
xsl:choose
<xsl:when test="$dictWord_de[.]=$thisWord">
<xsl:value-of select="$dictWord_en[.]" />
</xsl:when>
xsl:otherwise
<xsl:value-of select="$thisWord" />
</xsl:otherwise>
</xsl:choose>
</xsl:template>