Hi Matthias,

I would start by saying that each H1 begins a new sequence.  (That was
sufficient in my case - each H1 was between 10 & 30 pages, although much
depends on how complex your pages are :>).  If you need to drop it down to
the H2 level, then you'd need one page-sequence for the H1 and any content
that appears below H1 but before H2, and then a separate page sequence for
each H2.  Hopefully you don't need to drop below that :>  (P.S. Also check
out other posts on memory usage for information on how to set the memory
parameters - Even on relatively short page sequences, FOP does eat a
reasonable chunk of memory.)

Hope this helps,


Lloyd McKenzie, P.Eng.              I/T Architect, IBM Global Services
PhoneMail: (780)421-5620          Internal Mail:AZ*K0R*1004 *EDM

"Matthias Fischer" <[EMAIL PROTECTED]> on 11/23/2001 12:47:49 AM

To:   Lloyd McKenzie/CanWest/IBM@IBMCA
Subject:  RE: FOP memory usage

Thank you, Lloyd.

Of course, I do have sections, and I would not mind to make a page sequence
break after each of them. If it were a 300-page document, I would even be
willing to make more files out of it, like in a FrameMaker® multi-file
but it's a 50-page thing. So, for the moment, I stick to the idea of having
one FO/PDF file generated for the whole document. I think, FOP should be
able of managing that much, if it aspires to being utilized by a larger
group of users.

However, inside this one-file FO/PDF document I don't mind page sequence
breaks at all. I have section titles of the first order, H1, that start on
new page. Would I then have to have different H1's for each section, e.g
H1-1, H1-2, H1-3, to trigger a new page sequence every time, e.g.
left1/rigt1, left2/right2, left3/right3. How did you solve the problem in
your case?


----- Message from "Lloyd McKenzie/CanWest/IBM" <[EMAIL PROTECTED]> on
Thu, 22 Nov 2001 19:16:52 +0100 -----
      To: "Matthias Fischer"             
          <[EMAIL PROTECTED]>       
      cc: <[EMAIL PROTECTED]>       
 Subject: RE: FOP memory usage           

Hi Matthias,

The specific document I was working on had a series of 'chapters' that were
more or less independent.  My initial approach had all of the 'chapters' as
part of a single page-sequence.  When I switched to 1
page-sequence/chapter, it made a HUGE difference.

I'm not terribly familiar with what you can & can't do with FOP.  However,
I expect it would be difficult to end a page-sequence after x-pages.  I
believe the way FOP works is to take the content within a page sequence,
and expands the page sequence to fit the number of pages necessary to
contain the content.  Is your document completely continuous, or are there
logical places for a break where it would be ok if the text ended half-way
down one page, and continued starting on the next page (or in your case,
likely on the next odd page).  If so, set your page sequences so that each
of those 'sections' of text are within a separate sequence.  If not, I'm
afraid I don't have the expertise to help :-(.


"Matthias Fischer" <[EMAIL PROTECTED]> on 11/22/2001 09:20:04 AM

cc:   Lloyd McKenzie/CanWest/IBM@IBMCA
Subject:  RE: FOP memory usage

While waiting for an answer that would, once again, help me out of the mud,
I went through some archives. I found this mail by Lloyd. What do you mean
by: "I modified my XSLT to put each section into a different page
I have left and right pages. Can I then tell FOP to process pages 1 through
10 a sequence, then pages 11 through 20 etc. (inbstead of creating pairs
"left1" and "right1", "left2" and "right2" etc.)? I don't have a clue how
accomplish the thing you wrote of...


----- Message from "Lloyd McKenzie/CanWest/IBM" <[EMAIL PROTECTED]> on
Fri, 9 Nov 2001 19:31:47 +0100 -----


 Subject: Re: FOP memory usage

I'm not sure if this will help or not, but it worked well for me.

I was trying to process a 64 MB document, and it was taking DAYS and was
eating gobs of memory.  I did some wading through the code, looking for
ways to optimize.  I found a couple of places to reduce memory, but nothing
substantial.  (I plan to run some analysis on my changes, and if they make
a difference of more than 5%, I'll submit them for inclusion in a future
release.)  However, in my wondering through the code, I realized that FOP
parses and stores everything until it runs into an 'End' Page sequence
marker.  My XML document was one BIG page sequence, so FOP was parsing the
entire thing before it would start to generate output.  As my XML consisted
of a large number of fairly independent sections, I modified my XSLT to put
each section into a different page sequence.  The result was that FOP only
parses objects to the end of the page-sequence, spits out the pages for
that sequence, and garbage collects the objects before moving on.  The only
data that is retained are link references.  These eat up a bit memory, but
nothing as bad as all of the area references needed to draw the page :>

Hope  this helps,


Lloyd McKenzie, P.Eng.              I/T Architect, IBM Global Services
PhoneMail: (780)421-5620          Internal Mail:AZ*K0R*1004 *EDM

To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, email: [EMAIL PROTECTED]

Reply via email to