Janine: Doppelte XML-Knoten identifizieren

Beitrag lesen

Ich glaube, ich habe nun die Lösung. Eine Schleife hat gefehlt:

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xslt="http://www.w3.org/2005/xpath-functions" exclude-result-prefixes="xs" version="2.0">
     <xsl:output method="xml" encoding="UTF-8"/>
     
     <xsl:key use="de" match="term" name="termkeyde"/>
     <xsl:key use="en" match="term" name="termkeyen"/>
     
     <xsl:template match="/definitions">
          <doubleterms>
							<xsl:for-each select="definition/term">
									<xsl:if test="generate-id()= generate-id(key('termkeyen',en)[2])">
                    <en>
                         <xsl:value-of select="en/text()"/>
                    </en>
               		</xsl:if>
									<xsl:if test="generate-id()= generate-id(key('termkeyde',de)[2])">
                    <de>
                         <xsl:value-of select="de/text()"/>
                    </de>
               		</xsl:if>
							</xsl:for-each>
          </doubleterms>
     </xsl:template>
</xsl:stylesheet>

Danke für den Hinweis, er hat mich zur Lösung geführt 😉

Grüße, Janine