Elo: Parameter erhöhen

Beitrag lesen

hallo,

nun da ich zeit hab, noch ein feedback. hab nochmal alles probiert und tatsächlich funktioniert es mit xsl:number (wenn man das attribut level="any" verwendet) - war mir nicht bekannt;)

also, hier mal der code:

<xsl:variable name="foot_nr">
 <xsl:if test="local-name(.)='footnote'"><!--funktioniert nicht -->
  <xsl:number count="d:footnote" format="1" level="any"/>
 </xsl:if>
</xsl:variable>

<xsl:template match="d:footnote">
  <a>
   <xsl:attribute name="class">fn_text</xsl:attribute>
   <xsl:attribute name="id">
     xsl:textfn_text</xsl:text>
     <xsl:value-of select="$foot_nr"/>
   </xsl:attribute>
   <xsl:attribute name="href">
     xsl:text#fn_foot</xsl:text>
     <xsl:value-of select="$foot_nr"/>
   </xsl:attribute>
     xsl:text(</xsl:text>
     <xsl:value-of select="$foot_nr"/>
     xsl:text)</xsl:text>
  </a>
</xsl:template>

<xsl:template name="footbox"><-- ausgabe dann am ende der html-datei-->
  <div>
   <xsl:attribute name="class">fn</xsl:attribute>
 <xsl:for-each select=".//preceding::d:footnote">
    <p>
     <a>
      <xsl:attribute name="class">fn_foot</xsl:attribute>
      <xsl:attribute name="id">
        xsl:textfn_foot</xsl:text>
        <xsl:value-of select="$foot_nr"/>
      </xsl:attribute>
      <xsl:attribute name="href">
        xsl:text#fn_text</xsl:text>
        <xsl:value-of select="$foot_nr"/>
      </xsl:attribute>
     <xsl:value-of select="$foot_nr"/>
    </a>
    <xsl:value-of select="."/>
   </p>
 </xsl:for-each>
</div>
</xsl:template>

alles soweit okay und funktioniert auch, wenn ich die variablen lokal definiere. sinnvoller ist natürlich eine globale definition und dies habe ich auch versucht zu tun, jedoch wird der knoten nicht richtig ermittelt. selbst wenn ich den pfad mit .//preceding::d:footnote angebe, funktioniert es nicht. ersetze ich probeweise jedoch die xsl:if anweisung mit xsl:for-each und dem pfad .//preceding::d:footnote gibt er etwas aus. auch unter <xsl:number count="..." ist mir eine solche pfadangabe nicht erlaubt? warum bzw. wie sollte ich dann diese knoten ermitteln?