ThomasM: Zähler einsetzen

Beitrag lesen

Hallo pices,

Alternativ hilft auch das Abzählen vorhergehender Elemente mit count() über die Achsen ancestor, parent usw., ggf. als Summe mehrerer count()-Aufrufe kombiniert.

Wie geht das?

<xsl:template match="@* | node()">  
  <xsl:copy>  
    <xsl:apply-templates select="@* | node()"/>  
  </xsl:copy>  
</xsl:template>  
  
<xsl:template match="@bp:id">  
 <xsl:attribute name="bp:id">  
   <xsl:value-of select="count(ancestor::*[@bp:id]) + count(preceding::*[@bp:id])"/>  
 </xsl:attribute>  
</xsl:template>

Grüße,
Thomas