I have two code samples you can try. The first expresses the tfoot as the last
element INSIDE tbody (don't ask, we need it that way though). Probably you will
want the second which expresses the tfoot AFTER tbody. (Note: MSIE 5 handles
the tfoot between the thead and tbody in HTML without a problem.)
<!--
Expresses the tgroup tag and the following tags in this order:
colspec
thead
tbody
tfoot
where tfoot is INSIDE tbody.
-->
<xsl:template match="tgroup">
<xsl:copy>
<xsl:copy-of select="@*"/>
<xsl:apply-templates select="colspec"/>
<xsl:apply-templates select="thead"/>
<xsl:apply-templates select="tbody"/>
</xsl:copy>
</xsl:template>
<xsl:template match="tbody">
<xsl:copy>
<xsl:copy-of select="@*"/>
<xsl:apply-templates/>
<xsl:copy-of select="preceding-sibling::tfoot"/>
</xsl:copy>
</xsl:template>
and
<!--
Expresses the tgroup tag and the following tags in this order:
colspec
thead
tbody
tfoot
-->
<xsl:template match="tgroup">
<xsl:copy>
<xsl:copy-of select="@*"/>
<xsl:apply-templates select="colspec"/>
<xsl:apply-templates select="thead"/>
<xsl:apply-templates select="tbody"/>
<xsl:apply-templates select="tfoot"/>
</xsl:copy>
</xsl:template>
------
Paul Nagai
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list