Der Code erklärt alles.
Bei der AUsgabe steht der Fehler
Bitte nur die AUsgabewerte beachten, ich weiss dass dies so bisher noch falsch ist.
XML
<data>
<Intervall name="30.05.2003">
<value>100</value>
<value>124</value>
<value>87</value>
</Intervall>
<Intervall name="30.09.2004">
<value>94</value>
<value>151</value>
<value>143</value>
</Intervall>
<Intervall name="30.01.2005">
<value>168</value>
<value>170</value>
<value>203</value>
</Intervall>
</data>
XSL
<xsl:template match="Intervall" name="Temp1">
<xsl:call-template name="Temp2">
<xsl:with-param name="counter">1</xsl:with-param>
</xsl:call-template>
</xsl:template>
<xsl:template name="Temp2">
<xsl:param name="counter"></xsl:param>
<xsl:param name="y1">
<xsl:for-each select="value">
<xsl:if test="position()=$counter">
<xsl:value-of select="."/></xsl:if>
</xsl:for-each>
</xsl:param>
<xsl:param name="y2">
<xsl:for-each select="value">
<xsl:if test="position()=$counter+1">
<xsl:value-of select="."/></xsl:if>
</xsl:for-each>
</xsl:param>
<text x1="{$y1}" x2="{$y2}"/>
<xsl:if test="$counter <3">
<xsl:call-template name="Temp2">
<xsl:with-param name="counter" select="$counter+1"></xsl:with-param>
</xsl:call-template>
</xsl:if>
</xsl:template>
AUSGABE
<text x1="100" x2="124"/>
<text x1="124" x2="87"/>
<text x1="87" x2=""/> <<<<<<<<<<<< Hier soll eig. 94 stehen
<text x1="94" x2="151"/>
<text x1="151" x2="143"/>
<text x1="143" x2=""/><<<<<<<<<<<<< Hier soll eig. 168 stehen
<text x1="168" x2="170"/>
<text x1="170" x2="203"/>
<text x1="203" x2=""/><<<<<<<<<<<<< Das könnt ihr vernachlässigen, weil . hier ja ende ist.