0

データを取得してテーブルに入れ、テーブルに出力する前に並べ替えようとしていますが、最初の列が並べ替えられ、残りの列はまったく並べ替えられません。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>
4

0 に答える 0