Ziegenpeter: Anzahl der Spalten ermitteln

Beitrag lesen

Hallo Forum,
für die Festlegung Spaltenbreite (column-width="") einer Tabelle brauche ich die Anzahl der td`s aus dem XML. Ich habe hier einen kläglichen Versuch mit einer Variablen und for-each:

<xsl:template match="table/tr/td">
 <fo:block >
  <fo:table width="100%" padding-after="1cm" >

<xsl:for-each select="td">
    <xsl:variable name="Anzahl_td" select="count(td)"/>

xsl:choose
     <xsl:when test="{$Anzahl_td}= 5">
        <fo:table-column  column-width="4cm" />
     </xsl:when>
     <xsl:when test="{$Anzahl_td}= 4">
        <fo:table-column  column-width="4.5cm" />
     </xsl:when>
      <xsl:when test="{$Anzahl_td}= 3">
        <fo:table-column  column-width="5.5cm" />
     </xsl:when>
     <xsl:when test="{$Anzahl_td}= 2">
        <fo:table-column  column-width="6.5cm" />
     </xsl:when>
     xsl:otherwise
        <fo:table-column  column-width="7cm" />
     </xsl:otherwise>
   </xsl:choose>

Kann mir jemand helfen?
Gruß
Peter Z.