W3C home > Mailing lists > Public > www-xsl-fo@w3.org > February 2001

Re: Last Page Conundrum

From: Paul Grosso <pgrosso@arbortext.com>
Date: Mon, 12 Feb 2001 10:16:13 -0600
Message-Id: <3.0.32.20010212101558.01f3c1b8@notesmail.arbortext.com>
To: <www-xsl-fo@w3.org>
This problem is similar to footnotes, though perhaps on a
larger scale:  you can get into that "non-stable infinite
loop" when you get a long, unbreakable footnote whose callout 
is near the end of the page, and putting the callout on the page
means the footnote won't fit on that page, but pushing the callout
(and footnote) to the next page means a short page.

The XSL spec won't say how to implement this.  Instead, the whole 
process of formatting per an XSL-FO stylesheet is, effectively, 
to format "any way you want, but the result has to satisfy the 
constraints specified by the stylesheet."  There are lots of things
that may require "multiple passes" or "magic" of some other kind
to get results that optimally satisfy the constraints.

Furthermore, if it isn't possible to satisfy all constraints (it's not
hard to write an unsatisfiable stylesheet), it's up to the formatter to
figure out which ones to satisfy and which ones to ignore.

At 06:37 2001 02 12 -0400, Arved Sandstrom wrote: 
>>>>
I probably need a vacation, but this occurred to me  a couple of days ago, and I'm wondering what the consensus is. :-)  Take a typical page-sequence-master (PSM) with a  repeatable-page-master-alternatives. Key feature here is that one condition is  for page-position='last'. FOP doesn't do  page-position='last' yet, I might add (it's the only pagination thing we don't,  I believe), FWIW.  Assume that we generate all pages, 1..n, with no  use of the page-master for the last page. That is, how can one use the PM for  the last page until you've done the first pass to figure out what the last page  is? Having done that, we backtrack to the content start for the last page, and  re-format using the last-page PM. But _this_ PM does not allow all _that_  remaining content into a last page, and therefore forces another.  Or does it? For surely you see where this is  heading. :-) Because you now have to re-apply the page-position='rest" PM,  because the page is no longer the last page...when will it stop?  I haven'tactually worked up a decent solution for  this one. I don't find any particularly useful guidance in the spec. Any  thoughts?  Regards, Arved Sandstrom  
Received on Monday, 12 February 2001 11:16:26 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Wednesday, 3 October 2007 16:06:08 GMT