Hallo zipdrive,
ich würde das ganze anders handhaben, mehr in der Art wie
<xsl:template match="para">
<p>
<xsl:apply-templates />
</p>
</xsl:template>
<xsl:template match="fat"><!-- oder para/fat oder para//fat -->
<strong>
<xsl:apply-templates />
</strong>
</xsl:template>
<!-- und eventuell noch ein -->
<xsl:template match="text()">
<xsl:value-of select="." />
</xsl:template>
sonst müsstest Du Dich um jede Verschachtelung wie <fat><italic>, <italic><fat>, <fat><small> etc. selber kümmern.
Gruß
Olaf Schneider