Thomas J.S.: xsl:for-each - nur das erste Ergebnis

Beitrag lesen

Hallo,

Ich dachte, ich setzte einfach eine Variable, die ich mit IF abfrage, damit er nur einmal einen value-of macht. Aber das funktioniert leider nicht, da er schon beim ersten Durchlauf meckert, dass die Variable nicht vorhanden ist.

Logisch, denn du definierst die Variable erst, nachdem du sie bereits aufgerufen hast.

<xsl:if test="$testvariable != 'a'">

»» <xsl:variable name="testvariable" select="a"/>

</xsl:if>

Hat jemand eine bessere Idee?
"er soll z. B. die größte Zahl nehmen die er unter allen findet."

<xsl:for-each select="test/MI">
 <xsl:sort select="." data-type="number" order="descending" />
 <xsl:variable name="pos" select="position()" />
 <xsl:if test="$pos = 1">
  <xsl:value-of select="." />
 </xsl:if>
</xsl:for-each>

Grüße
Thomas