Thomas J.S.: Ändern globaler Variablen !?!

Beitrag lesen

Hallo,

Ich suche eine Möglichkeit entweder globale Variablen zu ändern oder Variablen irgendwie NACH einem Schleifendurchlauf weiterhin zur Verfügung zu haben.

auch wenn grob, aber dass du Variablen in XSLT nciht ändern kannst wurde schon gesagt.
Dafür sind Paramters da. xsl:param bzw. dann beim Aufruf xsl:with-pram

Mit Rekursion sieht es an dieser Stelle schlecht aus...

Darum wirst du nicht herumkommen, es kommt nur darauf an, dass du die Recursion bzw. den recursiven Aufruf eines Templates richtig machst.

Bis hierhin alles kein Problem! Nur soll beim nächsten Durchlauf der "äußeren" Schleife gemerkt werden, wo die "innere" Schleife zuletzt war und die bereits verarbeiteten Sätze sollen nicht ausgegeben werden!!
Also, den Index, den ich mir gemerkt habe, soll im nächsten Schleifendurchlauf, der äußeren Schleife vorhanden sein.

<xsl:template name="pulldown">
 <xsl:param name="merkeindex" />
 <xsl:param name="indexervariable" select="wasauchimmer" />
 <!--
  hier was der template machen soll
  -->
  <xsl:if test="eine bedingung die auf die zweit schleife hindeutet">
   <xsl:call-template name="pulldown">
   <xsl:with-param name="merkeindex" select="$indexervariable" />
  </xsl:call-template>
  </xsl:if>
</xsl:template>

Den Original-Source-Code kann/will/darf ich hier nicht veröffentlichen.

Dann mach daraus ein Beispiel mit anderen Elementnahmen etc. etc. sonst ist es mächtig problematisch deine Gedanken zu lesen.

Grüße
Thomas