[xsl] Breaking large table up into multiple pages/tables

Subject: [xsl] Breaking large table up into multiple pages/tables
From: Shawn.Lindstrom@xxxxxxxxxx
Date: Wed, 31 Jul 2002 08:34:46 -0500
I'm having trouble breaking my very large table up into multiple page
sequences.  I've been following the suggestion in the FAQ for "grouping by
position".

I'm able to put every nth row using (position Mod n = 1) in a new
pagesequence/table.  However, my problem is that my XML is far more complex
than the example and I can't get the XSL correct to retrieve the rows that
should follow in the same table.

Here's the basics of my XML:

<Location>
      <Coverage>
          <Policy>
      <BreakoutRow/>
      <BreakoutRow/>
      ...
      <BreakoutRow/>
      <Total Row/>
          </Policy>
          <Policy>
      <BreakoutRow/>
      <BreakoutRow/>
      ...
      <BreakoutRow/>
      <Total Row/>
          </Policy>
          <CoverageTotals>
      <BreakoutRow/>
      <BreakoutRow/>
      ...
      <BreakoutRow/>
      <Total Row/>
          </CoverageTotals>
      </Coverage>
      <Coverage>
          <Policy>
      <BreakoutRow/>
      <BreakoutRow/>
      ...
      <BreakoutRow/>
      <Total Row/>
          </Policy>
          <Policy>
      <BreakoutRow/>
      <BreakoutRow/>
      ...
      <BreakoutRow/>
      <Total Row/>
          </Policy>
          <CoverageTotals>
      <BreakoutRow/>
      <BreakoutRow/>
      ...
      <BreakoutRow/>
      <Total Row/>
          </CoverageTotals>
      </Coverage>
<Location>


My table looks like...

Policy            BreakoutRow
            BreakoutRow
            BreakoutRow
            TotalRow

Policy            BreakoutRow
            BreakoutRow
            BreakoutRow
            TotalRow

CoverageTotal     BreakoutRow
            BreakoutRow
            BreakoutRow
            TotalRow

Policy            BreakoutRow
            BreakoutRow
            BreakoutRow
            TotalRow

Policy            BreakoutRow
            BreakoutRow
            BreakoutRow
            TotalRow

CoverageTotal     BreakoutRow
            BreakoutRow
            BreakoutRow
            TotalRow



The XML can be very large and therefore the table needs to be broken up.

The for each I'm using to get every nth row on a new page sequence and
table is...

       <xsl:for-each select="(Coverage/Policy/BreakoutRow|
                           Coverage/Policy/TotalRow|
                           Coverage/CoverageTotals/BreakoutRow|
                           Coverage/CoverageTotals/TotalRow)[position() mod
12 = 1]">

I've tried many different things - I guess I'm missing something.

I'm somewhat new to XSL, running short on time and my brain hurts :-).

Any help would be appreciated!

Thanks,
Shawn




 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread