データを取得してテーブルに入れ、テーブルに出力する前に並べ替えようとしていますが、最初の列が並べ替えられ、残りの列はまったく並べ替えられません。StreetNuame で並べ替えようとしていますが、最初のテーブル列でのみ機能します
<fo:table>
<fo:table-column width="82mm"/>
<fo:table-column width="82mm"/>
<fo:table-column width="82mm"/>
<fo:table-body>
<xsl:for-each select="route/address[position() mod 3 = 1]">
<xsl:sort select="streetName"/>
<fo:table-row>
<xsl:apply-templates select=". | following-sibling::*[3 > position()]"/>
<xsl:variable name="vPos" select="position()"/>
<xsl:variable name="vUnfilled"
select=" 2 - count(following-sibling::*)"/>
<xsl:if test="position() = last()">
<xsl:for-each select="../*[not(position() > $vUnfilled)]">
<fo:table-cell>
<fo:block>
<xsl:value-of select="' '"/>
</fo:block>
</fo:table-cell>
</xsl:for-each>
</xsl:if>
</fo:table-row>
</xsl:for-each>
</fo:table-body>
</fo:table>
以下の XML:
<route>
<name>blah</name>
<address>
<fullStreet>blah</fullStreet>
<streetNumber>blah</streetNumber>
<streetName>blah</streetName>
</address>