Xslt - Knoten in Chunks iterieren

Ich habe ein vorhandenes xslt-Skript, das eine PDF-Datei mit FOP erstellt. Das Problem ist, dass der Arbeitsspeicher knapp wird, wenn Apply-Template für einen bestimmten Knotentyp ausgeführt wird und die Knotenzahl eine bestimmte Grenze überschreitet. Um das Speicherproblem zu beheben, muss das Ergebnis dieses Vorlagenaufrufs in mehrere<fo:page-sequence>, aber ich möchte keine Seitenfolge für jeden Knoten, eher für jeden 100-Knoten.

Mein erster Gedanke war, position () zu verwenden und einfach alle 100 neue Sequenz-Tags hinzuzufügen, aber da xslt wohlgeformt sein muss, kann ich solche offenen Tags nicht haben.

Also, meine Frage ist, was wäre die beste Alternative, um alle Knoten eines bestimmten Typs in Blöcken von 100 zu iterieren?

Beispiel für die Darstellung der XML-Quelle als

 <var ID="V1"><subnodes/></var>  
 ..
 <var ID="V1000"><subnodes/></var>

Zurzeit bearbeitet mit

<fo:page-sequence>
  <xsl:apply-templates select="ns:var"/>
</fo:page-sequence>

Das gewünschte FOP-XML-Ergebnis wäre etwas, das mehrere Seitenfolgen mit (zum Beispiel) 100 verarbeiteten var-Knoten in jeder erstellt, anstatt das Ergebnis aller 1000 in einer Seitenfolge zu haben.

Aktuelles Ergebnis

<fo:page-sequence>
  <formatted V1>
  ..
  <formatted V1000>
</fo:page-sequence>

Gewünschtes Ergebnis

<fo:page-sequence>
   <formatted V1>
    ..
   <formatted V100>
</fo:page-sequence>

<fo:page-sequence>
  <formatted V101>
   ..
  <formatted V200>
 </fo:page-sequence>

..

<fo:page-sequence>
  <formatted V901>
   ..
  <formatted V1000>
</fo:page-sequence>   

Antworten auf die Frage(2)

Ihre Antwort auf die Frage