Hallo!
Hier erstmal der Code:
<xsl:template name="LINETEXT
<xsl:for-each select="CHARTTYPE/FEATURES/FEATURE/LINE">
<!-- <SINGLE_LINE_TEXT> -->
<xsl:text>TEXT</xsl:text>
<xsl:for-each select="POINT">
<!-- LATITUDE -->
<xsl:variable name="lat4" select="LAT"></xsl:variable>
<!-- LONGITUDE -->
<xsl:variable name="long4" select="LONG"></xsl:variable>
<xsl:variable name="lat_A">
<xsl:choose>
<xsl:when test="$Position mod 2 = 1">
<xsl:value-of select="$lat4"/>
</xsl:when>
</xsl:choose>
</xsl:variable>
<xsl:variable name="long_A">
<xsl:choose>
<xsl:when test="$Position mod 2 = 1">
<xsl:value-of select="$long4"/>
</xsl:when>
</xsl:choose>
</xsl:variable>
<xsl:variable name="lat_B">
<xsl:choose>
<xsl:when test="$Position mod 2 = 0">
<xsl:value-of select="$lat4"/>
</xsl:when>
</xsl:choose>
</xsl:variable>
<xsl:variable name="long_B">
<xsl:choose>
<xsl:when test="$Position mod 2 = 0">
<xsl:value-of select="$long4"/>
</xsl:when>
</xsl:choose>
</xsl:variable>
<xsl:call-template name="CALC_KOORD">
<xsl:with-param name="lat" select="$lat_A"></xsl:with-param>
<xsl:with-param name="long" select="$long_A"></xsl:with-param>
<xsl:with-param name="lata" select="$lat_B"></xsl:with-param>
<xsl:with-param name="longa" select="$long_B"></xsl:with-param>
</xsl:call-template>
</xsl:for-each>
</xsl:for-each>
</xsl:template>
Mein Ziel ist es das Dokument zu durchlaufen mit der for-each Schleife. Dabei wird der LATITUDE + LONGITUDE Wert ausgelesen. Für eine Berechnungsfunktion "CALC_KOORD" benötige ich aber nicht nur einen LAT/LONG Wert sondern auch einen zweiten Wert. Wenn ich jetzt aber die Schleife nochmals durchlaufe, wird der vorherige Wert in "LAT_A" und "LONG_A" wieder auf 0 gesetzt.
Gibt es eine Möglichkeit das Ergenis eines Durchlaufs irgendwie bis zum nächsten Durchlauf zwischenzuspeichern?
Schon mal Danke für eine Antwort!