W3C home > Mailing lists > Public > www-xsl-fo@w3.org > March 2003

Large XML-files

From: Jan Koppeel <jan.koppeel@web.de>
Date: Tue, 4 Mar 2003 16:21:32 +0100
Message-Id: <200303041521.h24FLWp23446@mailgate5.cinetic.de>
To: www-xsl-fo@w3.org

I'm trying to create pdf-files out of large xml-files by using FOP. The largest xml-file is about 4 MB. As you can imagine I get an OutOfMemory-Error. Increasing the JVM memory size is no solution because the machine starts swapping. 

Can you help me to create page sequences with about 100 (more or less) items?

my XML-files look like this:

<data>
  <head>
  .... some informations
  </head>
  <list nr="1">
    <item1>
      <subitem1/>
      <subitem2/>
      <subitem3/>
      <subitem4/>
    </item1>
    <item2>
      ...
    </item2>
    ...
    about 19000 items more
  </list>
  <list nr="2">
  ... like above
  </list>
  ...
</data>

I want the pages look like this:

-------------------------------
headerinformation        page
-------------------------------
Nr: 1
  subitem1 subitem2 ... (for each item)
  subitem1 subitem2 ...
  subitem1 subitem2 ...

Nr: 2
  subitem1 subitem2 ... (for each item)

Currently I'm using this xsl-file:

<xsl:template match="data">
  <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
    <fo:layout-master-set>
      <fo:simple-page-master master-name="all"
        page-height="29.7cm" page-width="21cm"
        margin-top="2cm" margin-bottom="2cm" 
        margin-left="2cm" margin-right="2cm">
        <fo:region-body margin-top="2.5cm" margin-bottom="0cm"/>
        <fo:region-before extent="2.5cm"/>
      </fo:simple-page-master>
    </fo:layout-master-set>
    <fo:page-sequence master-reference="all" format="1">
      <fo:static-content flow-name="xsl-region-before">
        <fo:block text-align="start" font-size="10pt" font-family="sans-serif" line-height="1em + 2pt">
          <xsl:apply-templates select="head"/>
        </fo:block>
      </fo:static-content>
      <fo:flow flow-name="xsl-region-body">
        <xsl:apply-templates select="list"/>
      </fo:flow>
    </fo:page-sequence>
  </fo:root>
</xsl:template>

The templates "head" and "list" are defined in separate sections.
______________________________________________________________________________
Sie haben mehr zu sagen als in eine SMS passt? Mit WEB.DE FreeMail ist
das jetzt kein Problem mehr! http://freemail.web.de/features/?mc=021182
Received on Tuesday, 4 March 2003 10:29:14 GMT

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