nitroman, добавьте проверку на текущую позицию выводимого элемента. Если она больше определенного значения, то делать перевод строки. Например:
<xsl:template match="structure">
...
<!-- Перевод строки после каждого 3-го элемента -->
<xsl:if test="position() mod 3 = 0">
<xsl:text disable-output-escaping="yes">
</tr>
<tr>
</xsl:text>
</xsl:if>
</xsl:template>