Index: src/java/org/apache/fop/layoutmgr/FootenoteUtil.java
===================================================================
--- src/java/org/apache/fop/layoutmgr/FootenoteUtil.java	(revision 1601985)
+++ src/java/org/apache/fop/layoutmgr/FootenoteUtil.java	(working copy)
@@ -34,7 +34,7 @@
     /**
      * Returns the footnotes contained in the given element list.
      */
-    public static List<LayoutManager> getFootnotes(List<ListElement> elemenList) {
+    public static List<FootnoteBodyLayoutManager> getFootnotes(List<ListElement> elemenList) {
         return getFootnotes(elemenList, 0, elemenList.size() - 1);
     }
 
@@ -44,9 +44,10 @@
      * @param startIndex index in the element list from which to start the scan, inclusive
      * @param endIndex index in the element list at which to stop the scan, inclusive
      */
-    public static List<LayoutManager> getFootnotes(List<ListElement> elemenList, int startIndex, int endIndex) {
+    public static List<FootnoteBodyLayoutManager> getFootnotes(
+            List<ListElement> elemenList, int startIndex, int endIndex) {
         ListIterator<ListElement> iter = elemenList.listIterator(startIndex);
-        List<LayoutManager> footnotes = null;
+        List<FootnoteBodyLayoutManager> footnotes = null;
         while (iter.nextIndex() <= endIndex) {
             ListElement element = iter.next();
             if (element instanceof KnuthInlineBox && ((KnuthInlineBox) element).isAnchor()) {
Index: src/java/org/apache/fop/layoutmgr/FootnoteBodyLayoutManager.java
===================================================================
--- src/java/org/apache/fop/layoutmgr/FootnoteBodyLayoutManager.java	(revision 1601985)
+++ src/java/org/apache/fop/layoutmgr/FootnoteBodyLayoutManager.java	(working copy)
@@ -20,6 +20,7 @@
 package org.apache.fop.layoutmgr;
 
 import java.util.LinkedList;
+import java.util.List;
 
 import org.apache.fop.area.Area;
 import org.apache.fop.fo.flow.FootnoteBody;
@@ -29,6 +30,8 @@
  */
 public class FootnoteBodyLayoutManager extends BlockStackingLayoutManager {
 
+    private List<KnuthElement> knuthElements;
+
     /**
      * Creates a new FootnoteBodyLayoutManager.
      * @param body the footnote-body element
@@ -37,6 +40,14 @@
         super(body);
     }
 
+    @Override
+    public List<KnuthElement> getNextKnuthElements(LayoutContext context, int alignment) {
+        if (knuthElements == null) {
+            knuthElements = super.getNextKnuthElements(context, alignment);
+        }
+        return knuthElements;
+    }
+
     /** {@inheritDoc} */
     @Override
     public void addAreas(PositionIterator parentIter, LayoutContext layoutContext) {
@@ -108,4 +119,10 @@
         return Keep.KEEP_AUTO;
     }
 
+    @Override
+    public void reset() {
+        super.reset();
+        knuthElements = null;
+    }
+
 }
Index: src/java/org/apache/fop/layoutmgr/KnuthBlockBox.java
===================================================================
--- src/java/org/apache/fop/layoutmgr/KnuthBlockBox.java	(revision 1601985)
+++ src/java/org/apache/fop/layoutmgr/KnuthBlockBox.java	(working copy)
@@ -35,7 +35,7 @@
      * it isn't possible to get the opt value stored in a MinOptMax object.
      */
     private int bpd;
-    private List footnoteList;
+    private List<FootnoteBodyLayoutManager> footnoteList;
     /** List of Knuth elements. This is a list of LinkedList elements. */
     private List elementLists = null;
 
@@ -52,7 +52,7 @@
         super(width, pos, auxiliary);
         ipdRange = range;
         bpd = bpdim;
-        footnoteList = new LinkedList();
+        footnoteList = new LinkedList<FootnoteBodyLayoutManager>();
     }
 
     /**
@@ -68,13 +68,13 @@
         super(width, pos, auxiliary);
         ipdRange = MinOptMax.ZERO;
         bpd = 0;
-        footnoteList = new LinkedList(list);
+        footnoteList = new LinkedList<FootnoteBodyLayoutManager>(list);
     }
 
     /**
      * @return the LMs for the footnotes cited in this box.
      */
-    public List getFootnoteBodyLMs() {
+    public List<FootnoteBodyLayoutManager> getFootnoteBodyLMs() {
         return footnoteList;
     }
 
Index: src/java/org/apache/fop/layoutmgr/PageBreaker.java
===================================================================
--- src/java/org/apache/fop/layoutmgr/PageBreaker.java	(revision 1601985)
+++ src/java/org/apache/fop/layoutmgr/PageBreaker.java	(working copy)
@@ -19,6 +19,7 @@
 
 package org.apache.fop.layoutmgr;
 
+import java.util.ArrayList;
 import java.util.List;
 import java.util.ListIterator;
 
@@ -156,7 +157,6 @@
     }
 
     private boolean containsFootnotes(List contentList, LayoutContext context) {
-
         boolean containsFootnotes = false;
         if (contentList != null) {
             ListIterator contentListIterator = contentList.listIterator();
@@ -166,21 +166,11 @@
                     && ((KnuthBlockBox) element).hasAnchors()) {
                     // element represents a line with footnote citations
                     containsFootnotes = true;
-                    LayoutContext footnoteContext = LayoutContext.copyOf(context);
-                    footnoteContext.setStackLimitBP(context.getStackLimitBP());
-                    footnoteContext.setRefIPD(pslm.getCurrentPV()
-                            .getRegionReference(Constants.FO_REGION_BODY).getIPD());
-                    List footnoteBodyLMs = ((KnuthBlockBox) element).getFootnoteBodyLMs();
-                    ListIterator footnoteBodyIterator = footnoteBodyLMs.listIterator();
-                    // store the lists of elements representing the footnote bodies
-                    // in the box representing the line containing their references
-                    while (footnoteBodyIterator.hasNext()) {
-                        FootnoteBodyLayoutManager fblm
-                            = (FootnoteBodyLayoutManager) footnoteBodyIterator.next();
-                        fblm.setParent(childFLM);
-                        fblm.initialize();
-                        ((KnuthBlockBox) element).addElementList(
-                                fblm.getNextKnuthElements(footnoteContext, alignment));
+                    KnuthBlockBox box = (KnuthBlockBox) element;
+                    List<List<KnuthElement>> footnotes = getFootnoteKnuthElements(childFLM, context,
+                            box.getFootnoteBodyLMs());
+                    for (List<KnuthElement> footnote : footnotes) {
+                        box.addElementList(footnote);
                     }
                 }
             }
@@ -188,6 +178,24 @@
         return containsFootnotes;
     }
 
+    public static  List<List<KnuthElement>> getFootnoteKnuthElements(FlowLayoutManager flowLM, LayoutContext context,
+            List<FootnoteBodyLayoutManager> footnoteBodyLMs) {
+        List<List<KnuthElement>> footnotes = new ArrayList<List<KnuthElement>>();
+        LayoutContext footnoteContext = LayoutContext.copyOf(context);
+        footnoteContext.setStackLimitBP(context.getStackLimitBP());
+        footnoteContext.setRefIPD(flowLM.getPSLM()
+                .getCurrentPV().getRegionReference(Constants.FO_REGION_BODY).getIPD());
+        for (FootnoteBodyLayoutManager fblm : footnoteBodyLMs) {
+            fblm.setParent(flowLM);
+            fblm.initialize();
+            List<KnuthElement> footnote = fblm.getNextKnuthElements(footnoteContext, Constants.EN_START);
+            // TODO this does not respect possible stacking constraints between footnotes
+            SpaceResolver.resolveElementList(footnote);
+            footnotes.add(footnote);
+        }
+        return footnotes;
+    }
+
     private void handleFootnoteSeparator() {
         StaticContent footnoteSeparator;
         footnoteSeparator = pslm.getPageSequence().getStaticContent("xsl-footnote-separator");
@@ -460,8 +468,13 @@
     /** {@inheritDoc} */
     protected void finishPart(PageBreakingAlgorithm alg, PageBreakPosition pbp) {
         // add footnote areas
-        if (pbp.footnoteFirstListIndex < pbp.footnoteLastListIndex
-            || pbp.footnoteFirstElementIndex <= pbp.footnoteLastElementIndex) {
+        if (!pslm.getTableHeaderFootnotes().isEmpty()
+                || pbp.footnoteFirstListIndex < pbp.footnoteLastListIndex
+                || pbp.footnoteFirstElementIndex <= pbp.footnoteLastElementIndex
+                || !pslm.getTableFooterFootnotes().isEmpty()) {
+            for (List<KnuthElement> footnote : pslm.getTableHeaderFootnotes()) {
+                addFootnoteAreas(footnote);
+            }
             // call addAreas() for each FootnoteBodyLM
             for (int i = pbp.footnoteFirstListIndex; i <= pbp.footnoteLastListIndex; i++) {
                 List elementList = alg.getFootnoteList(i);
@@ -469,14 +482,11 @@
                         ? pbp.footnoteFirstElementIndex : 0);
                 int lastIndex = (i == pbp.footnoteLastListIndex
                         ? pbp.footnoteLastElementIndex : elementList.size() - 1);
-
-                SpaceResolver.performConditionalsNotification(elementList,
-                        firstIndex, lastIndex, -1);
-                LayoutContext childLC = LayoutContext.newInstance();
-                AreaAdditionUtil.addAreas(null,
-                        new KnuthPossPosIter(elementList, firstIndex, lastIndex + 1),
-                        childLC);
+                addFootnoteAreas(elementList, firstIndex, lastIndex + 1);
             }
+            for (List<KnuthElement> footnote : pslm.getTableFooterFootnotes()) {
+                addFootnoteAreas(footnote);
+            }
             // set the offset from the top margin
             Footnote parentArea = pslm.getCurrentPV().getBodyRegion().getFootnote();
             int topOffset = pslm.getCurrentPV().getBodyRegion().getBPD() - parentArea.getBPD();
@@ -487,10 +497,21 @@
             parentArea.setSeparator(separatorArea);
         }
         pslm.getCurrentPV().getCurrentSpan().notifyFlowsFinished();
+        pslm.clearTableHeadingFootnotes();
     }
 
+    private void addFootnoteAreas(List<KnuthElement> footnote) {
+        addFootnoteAreas(footnote, 0, footnote.size());
+    }
+
+    private void addFootnoteAreas(List<KnuthElement> footnote, int startIndex, int endIndex) {
+        SpaceResolver.performConditionalsNotification(footnote, startIndex, endIndex - 1, -1);
+        LayoutContext childLC = LayoutContext.newInstance();
+        AreaAdditionUtil.addAreas(null, new KnuthPossPosIter(footnote, startIndex, endIndex), childLC);
+    }
+
     /** {@inheritDoc} */
-    protected LayoutManager getCurrentChildLM() {
+    protected FlowLayoutManager getCurrentChildLM() {
         return childFLM;
     }
 
Index: src/java/org/apache/fop/layoutmgr/PageBreakingAlgorithm.java
===================================================================
--- src/java/org/apache/fop/layoutmgr/PageBreakingAlgorithm.java	(revision 1601985)
+++ src/java/org/apache/fop/layoutmgr/PageBreakingAlgorithm.java	(working copy)
@@ -398,11 +398,6 @@
 
         // compute the total length of the footnotes
         for (List<KnuthElement> noteList : elementLists) {
-
-            //Space resolution (Note: this does not respect possible stacking constraints
-            //between footnotes!)
-            SpaceResolver.resolveElementList(noteList);
-
             int noteLength = 0;
             footnotesList.add(noteList);
             for (KnuthElement element : noteList) {
Index: src/java/org/apache/fop/layoutmgr/PageSequenceLayoutManager.java
===================================================================
--- src/java/org/apache/fop/layoutmgr/PageSequenceLayoutManager.java	(revision 1601985)
+++ src/java/org/apache/fop/layoutmgr/PageSequenceLayoutManager.java	(working copy)
@@ -19,6 +19,10 @@
 
 package org.apache.fop.layoutmgr;
 
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 
@@ -44,6 +48,14 @@
 
     private PageProvider pageProvider;
 
+    private PageBreaker pageBreaker;
+
+    /** Footnotes coming from repeated table headers, to be added before any other footnote. */
+    private List<List<KnuthElement>> tableHeaderFootnotes;
+
+    /** Footnotes coming from repeated table footers, to be added after any other footnote. */
+    private List<List<KnuthElement>> tableFooterFootnotes;
+
     /**
      * Constructor
      *
@@ -75,6 +87,13 @@
         return this;
     }
 
+    public FlowLayoutManager getFlowLayoutManager() {
+        if (pageBreaker == null) {
+            throw new IllegalStateException("This method can be called only during layout");
+        }
+        return pageBreaker.getCurrentChildLM();
+    }
+
     /** {@inheritDoc} */
     public void activateLayout() {
         initialize();
@@ -107,9 +126,9 @@
 
         curPage = makeNewPage(false);
 
-        PageBreaker breaker = new PageBreaker(this);
+        pageBreaker = new PageBreaker(this);
         int flowBPD = getCurrentPV().getBodyRegion().getRemainingBPD();
-        breaker.doLayout(flowBPD);
+        pageBreaker.doLayout(flowBPD);
 
         finishPage();
     }
@@ -219,4 +238,58 @@
         return pageProvider.isOnFirstPage(partIndex);
     }
 
+    /**
+     * Registers the given footnotes so that they can be added to the current page, before any other footnote.
+     *
+     * @param headerFootnotes footnotes coming from a repeated table header
+     */
+    public void addTableHeaderFootnotes(List<List<KnuthElement>> headerFootnotes) {
+        if (tableHeaderFootnotes == null) {
+            tableHeaderFootnotes = new ArrayList<List<KnuthElement>>();
+        }
+        tableHeaderFootnotes.addAll(headerFootnotes);
+    }
+
+    public List<List<KnuthElement>> getTableHeaderFootnotes() {
+        return getTableFootnotes(tableHeaderFootnotes);
+    }
+
+    /**
+     * Registers the given footnotes so that they can be added to the current page, after any other footnote.
+     *
+     * @param footerFootnotes footnotes coming from a repeated table footer
+     */
+    public void addTableFooterFootnotes(List<List<KnuthElement>> footerFootnotes) {
+        if (tableFooterFootnotes == null) {
+            tableFooterFootnotes = new ArrayList<List<KnuthElement>>();
+        }
+        tableFooterFootnotes.addAll(footerFootnotes);
+    }
+
+    public List<List<KnuthElement>> getTableFooterFootnotes() {
+        return getTableFootnotes(tableFooterFootnotes);
+    }
+
+    private List<List<KnuthElement>> getTableFootnotes(List<List<KnuthElement>> tableFootnotes) {
+        if (tableFootnotes == null) {
+            List<List<KnuthElement>> emptyList = Collections.emptyList();
+            return emptyList;
+        } else {
+            return tableFootnotes;
+        }
+    }
+
+    /**
+     * Clears the footnotes coming from repeated table headers/footers, in order to start
+     * afresh for a new page.
+     */
+    public void clearTableHeadingFootnotes() {
+        if (tableHeaderFootnotes != null) {
+            tableHeaderFootnotes.clear();
+        }
+        if (tableFooterFootnotes != null) {
+            tableFooterFootnotes.clear();
+        }
+    }
+
 }
Index: src/java/org/apache/fop/layoutmgr/inline/LineLayoutManager.java
===================================================================
--- src/java/org/apache/fop/layoutmgr/inline/LineLayoutManager.java	(revision 1601985)
+++ src/java/org/apache/fop/layoutmgr/inline/LineLayoutManager.java	(working copy)
@@ -51,6 +51,7 @@
 import org.apache.fop.layoutmgr.BreakingAlgorithm;
 import org.apache.fop.layoutmgr.ElementListObserver;
 import org.apache.fop.layoutmgr.FootenoteUtil;
+import org.apache.fop.layoutmgr.FootnoteBodyLayoutManager;
 import org.apache.fop.layoutmgr.InlineKnuthSequence;
 import org.apache.fop.layoutmgr.Keep;
 import org.apache.fop.layoutmgr.KnuthBlockBox;
@@ -980,7 +981,8 @@
                     endIndex = ((LineBreakPosition) llPoss.getChosenPosition(i)).getLeafPos();
                     // create a list of the FootnoteBodyLM handling footnotes
                     // whose citations are in this line
-                    List<LayoutManager> footnoteList = FootenoteUtil.getFootnotes(seq, startIndex, endIndex);
+                    List<FootnoteBodyLayoutManager> footnoteList = FootenoteUtil.getFootnotes(
+                            seq, startIndex, endIndex);
                     startIndex = endIndex + 1;
                     LineBreakPosition lbp = (LineBreakPosition) llPoss.getChosenPosition(i);
                     if (baselineOffset < 0) {
Index: src/java/org/apache/fop/layoutmgr/table/TableContentLayoutManager.java
===================================================================
--- src/java/org/apache/fop/layoutmgr/table/TableContentLayoutManager.java	(revision 1601985)
+++ src/java/org/apache/fop/layoutmgr/table/TableContentLayoutManager.java	(working copy)
@@ -40,6 +40,7 @@
 import org.apache.fop.layoutmgr.BreakElement;
 import org.apache.fop.layoutmgr.ElementListUtils;
 import org.apache.fop.layoutmgr.FootenoteUtil;
+import org.apache.fop.layoutmgr.FootnoteBodyLayoutManager;
 import org.apache.fop.layoutmgr.Keep;
 import org.apache.fop.layoutmgr.KnuthBlockBox;
 import org.apache.fop.layoutmgr.KnuthBox;
@@ -47,8 +48,8 @@
 import org.apache.fop.layoutmgr.KnuthGlue;
 import org.apache.fop.layoutmgr.KnuthPossPosIter;
 import org.apache.fop.layoutmgr.LayoutContext;
-import org.apache.fop.layoutmgr.LayoutManager;
 import org.apache.fop.layoutmgr.ListElement;
+import org.apache.fop.layoutmgr.PageBreaker;
 import org.apache.fop.layoutmgr.Position;
 import org.apache.fop.layoutmgr.PositionIterator;
 import org.apache.fop.layoutmgr.SpaceResolver.SpaceHandlingBreakPosition;
@@ -151,6 +152,7 @@
         KnuthBox headerAsSecondToLast = null;
         KnuthBox footerAsLast = null;
         LinkedList returnList = new LinkedList();
+        int headerFootnoteBPD = 0;
         if (headerIter != null && headerList == null) {
             this.headerList = getKnuthElementsForRowIterator(
                     headerIter, context, alignment, TableRowIterator.HEADER);
@@ -162,7 +164,7 @@
             }
             TableHeaderFooterPosition pos = new TableHeaderFooterPosition(
                     getTableLM(), true, this.headerList);
-            List<LayoutManager> footnoteList = FootenoteUtil.getFootnotes(headerList);
+            List<FootnoteBodyLayoutManager> footnoteList = FootenoteUtil.getFootnotes(headerList);
             KnuthBox box = (footnoteList.isEmpty() || !getTableLM().getTable().omitHeaderAtBreak())
                     ? new KnuthBox(headerNetHeight, pos, false)
                     : new KnuthBlockBox(headerNetHeight, footnoteList, pos, false);
@@ -172,7 +174,12 @@
                 headerAsFirst = box;
             } else {
                 if (!footnoteList.isEmpty()) {
-                    returnList.add(new KnuthBlockBox(0, footnoteList, new Position(getTableLM()), true));
+                    List<List<KnuthElement>> footnotes = PageBreaker.getFootnoteKnuthElements(
+                            getTableLM().getPSLM().getFlowLayoutManager(), context, footnoteList);
+                    getTableLM().setHeaderFootnotes(footnotes);
+                    headerFootnoteBPD = getFootnotesBPD(footnotes);
+                    returnList.add(new KnuthBlockBox(-headerFootnoteBPD, footnoteList, new Position(getTableLM()), true));
+                    headerNetHeight += headerFootnoteBPD;
                 }
                 headerAsSecondToLast = box;
             }
@@ -189,10 +196,16 @@
             //We can simply add the table footer at the end of the whole list
             TableHeaderFooterPosition pos = new TableHeaderFooterPosition(
                     getTableLM(), false, this.footerList);
-            List<LayoutManager> footnoteList = FootenoteUtil.getFootnotes(footerList);
+            List<FootnoteBodyLayoutManager> footnoteList = FootenoteUtil.getFootnotes(footerList);
             footerAsLast = footnoteList.isEmpty()
                     ? new KnuthBox(footerNetHeight, pos, false)
                     : new KnuthBlockBox(footerNetHeight, footnoteList, pos, false);
+            if (!(getTableLM().getTable().omitFooterAtBreak() || footnoteList.isEmpty())) {
+                List<List<KnuthElement>> footnotes = PageBreaker.getFootnoteKnuthElements(
+                        getTableLM().getPSLM().getFlowLayoutManager(), context, footnoteList);
+                getTableLM().setFooterFootnotes(footnotes);
+                footerNetHeight += getFootnotesBPD(footnotes);
+            }
         }
         returnList.addAll(getKnuthElementsForRowIterator(
                 bodyIter, context, alignment, TableRowIterator.BODY));
@@ -216,9 +229,20 @@
             }
             returnList.add(insertionPoint, footerAsLast);
         }
+        if (headerFootnoteBPD != 0) {
+            returnList.add(new KnuthBox(headerFootnoteBPD, new Position(getTableLM()), true));
+        }
         return returnList;
     }
 
+    private int getFootnotesBPD(List<List<KnuthElement>> footnotes) {
+        int bpd = 0;
+        for (List<KnuthElement> footnote : footnotes) {
+            bpd += ElementListUtils.calcContentLength(footnote);
+        }
+        return bpd;
+    }
+
     /**
      * Creates Knuth elements by iterating over a TableRowIterator.
      * @param iter TableRowIterator instance to fetch rows from
@@ -428,6 +452,9 @@
             boolean ancestorTreatAsArtifact = layoutContext.treatAsArtifact();
             if (headerIsBeingRepeated) {
                 layoutContext.setTreatAsArtifact(true);
+                if (!getTableLM().getHeaderFootnotes().isEmpty()) {
+                    getTableLM().getPSLM().addTableHeaderFootnotes(getTableLM().getHeaderFootnotes());
+                }
             }
             //header positions for the last part are the second-to-last element and need to
             //be handled first before all other TableContentPositions
@@ -456,8 +483,10 @@
             boolean ancestorTreatAsArtifact = layoutContext.treatAsArtifact();
             layoutContext.setTreatAsArtifact(treatFooterAsArtifact);
             //Positions for footers are simply added at the end
-            addHeaderFooterAreas(footerElements, tableLM.getTable().getTableFooter(), painter,
-                    true);
+            addHeaderFooterAreas(footerElements, tableLM.getTable().getTableFooter(), painter, true);
+            if (lastPos instanceof TableHFPenaltyPosition && !tableLM.getFooterFootnotes().isEmpty()) {
+                tableLM.getPSLM().addTableFooterFootnotes(getTableLM().getFooterFootnotes());
+            }
             layoutContext.setTreatAsArtifact(ancestorTreatAsArtifact);
         }
 
Index: src/java/org/apache/fop/layoutmgr/table/TableLayoutManager.java
===================================================================
--- src/java/org/apache/fop/layoutmgr/table/TableLayoutManager.java	(revision 1601985)
+++ src/java/org/apache/fop/layoutmgr/table/TableLayoutManager.java	(working copy)
@@ -20,6 +20,7 @@
 package org.apache.fop.layoutmgr.table;
 
 import java.util.ArrayList;
+import java.util.Collections;
 import java.util.Iterator;
 import java.util.LinkedList;
 import java.util.List;
@@ -98,6 +99,10 @@
 
     private boolean hasRetrieveTableMarker;
 
+    private List<List<KnuthElement>> headerFootnotes = Collections.emptyList();
+
+    private List<List<KnuthElement>> footerFootnotes = Collections.emptyList();
+
     /**
      * Temporary holder of column background informations for a table-cell's area.
      *
@@ -635,4 +640,20 @@
         super.possiblyRegisterMarkersForTables(markers, isStarting, isFirst, isLast);
     }
 
+    void setHeaderFootnotes(List<List<KnuthElement>> footnotes) {
+        this.headerFootnotes = footnotes;
+    }
+
+    List<List<KnuthElement>> getHeaderFootnotes() {
+        return headerFootnotes;
+    }
+
+    void setFooterFootnotes(List<List<KnuthElement>> footnotes) {
+        this.footerFootnotes = footnotes;
+    }
+
+    List<List<KnuthElement>> getFooterFootnotes() {
+        return footerFootnotes;
+    }
+
 }
Index: test/layoutengine/standard-testcases/footnote_in_table-header.xml
===================================================================
--- test/layoutengine/standard-testcases/footnote_in_table-header.xml	(revision 1601985)
+++ test/layoutengine/standard-testcases/footnote_in_table-header.xml	(working copy)
@@ -1,373 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Licensed to the Apache Software Foundation (ASF) under one or more
-  contributor license agreements.  See the NOTICE file distributed with
-  this work for additional information regarding copyright ownership.
-  The ASF licenses this file to You under the Apache License, Version 2.0
-  (the "License"); you may not use this file except in compliance with
-  the License.  You may obtain a copy of the License at
-
-       http://www.apache.org/licenses/LICENSE-2.0
-
-  Unless required by applicable law or agreed to in writing, software
-  distributed under the License is distributed on an "AS IS" BASIS,
-  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  See the License for the specific language governing permissions and
-  limitations under the License.
--->
-<!-- $Id$ -->
-<testcase>
-  <info>
-    <p>
-      A footnote from a table-header should appear once at the bottom of the first page.
-    </p>
-  </info>
-  <fo>
-    <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
-      <fo:layout-master-set>
-        <fo:simple-page-master master-name="page" page-height="120pt" page-width="220pt" margin="10pt">
-          <fo:region-body background-color="#F0F0F0"/>
-        </fo:simple-page-master>
-      </fo:layout-master-set>
-      <fo:page-sequence master-reference="page" font-size="8pt" line-height="10pt">
-        <fo:flow flow-name="xsl-region-body">
-          <fo:block>Before the table</fo:block>
-          <fo:table table-layout="fixed" width="100%">
-            <fo:table-column column-width="proportional-column-width(1)"/>
-            <fo:table-column column-width="proportional-column-width(1)"/>
-            <fo:table-header border="1pt solid black">
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Header 1.1<fo:footnote>
-                      <fo:inline>*</fo:inline>
-                      <fo:footnote-body>
-                        <fo:block>* Footnote from the table-header.</fo:block>
-                      </fo:footnote-body>
-                    </fo:footnote></fo:block>
-                </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Header 1.2</fo:block>
-                </fo:table-cell>
-              </fo:table-row>
-            </fo:table-header>
-            <fo:table-footer border="1pt solid black">
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Footer 1.1</fo:block>
-                </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Footer 1.2<fo:footnote>
-                      <fo:inline>†</fo:inline>
-                      <fo:footnote-body>
-                        <fo:block>† Footnote from the table-footer.</fo:block>
-                      </fo:footnote-body>
-                    </fo:footnote></fo:block>
-                </fo:table-cell>
-              </fo:table-row>
-            </fo:table-footer>
-            <fo:table-body border="0.5pt solid black">
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 1.1</fo:block>
-                </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 1.2</fo:block>
-                </fo:table-cell>
-              </fo:table-row>
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 2.1</fo:block>
-                </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 2.2</fo:block>
-                </fo:table-cell>
-              </fo:table-row>
-            </fo:table-body>
-          </fo:table>
-        </fo:flow>
-      </fo:page-sequence>
-      <fo:page-sequence master-reference="page" font-size="8pt" line-height="10pt">
-        <fo:flow flow-name="xsl-region-body">
-          <fo:block>Before the table</fo:block>
-          <fo:table table-layout="fixed" width="100%">
-            <fo:table-column column-width="proportional-column-width(1)"/>
-            <fo:table-column column-width="proportional-column-width(1)"/>
-            <fo:table-header border="1pt solid black">
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Header 1.1<fo:footnote>
-                      <fo:inline>*</fo:inline>
-                      <fo:footnote-body>
-                        <fo:block>* Footnote from the table-header.</fo:block>
-                      </fo:footnote-body>
-                    </fo:footnote></fo:block>
-                </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Header 1.2</fo:block>
-                </fo:table-cell>
-              </fo:table-row>
-            </fo:table-header>
-            <fo:table-footer border="1pt solid black">
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Footer 1.1</fo:block>
-                </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Footer 1.2<fo:footnote>
-                      <fo:inline>†</fo:inline>
-                      <fo:footnote-body>
-                        <fo:block>† Footnote from the table-footer.</fo:block>
-                      </fo:footnote-body>
-                    </fo:footnote></fo:block>
-                </fo:table-cell>
-              </fo:table-row>
-            </fo:table-footer>
-            <fo:table-body border="0.5pt solid black">
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 1.1</fo:block>
-                </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 1.2</fo:block>
-                </fo:table-cell>
-              </fo:table-row>
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 2.1</fo:block>
-                </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 2.2</fo:block>
-                </fo:table-cell>
-              </fo:table-row>
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 3.1</fo:block>
-                </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 3.2</fo:block>
-                </fo:table-cell>
-              </fo:table-row>
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 4.1</fo:block>
-                </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 4.2</fo:block>
-                </fo:table-cell>
-              </fo:table-row>
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 5.1</fo:block>
-                </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 5.2</fo:block>
-                </fo:table-cell>
-              </fo:table-row>
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 6.1</fo:block>
-                </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 6.2</fo:block>
-                </fo:table-cell>
-              </fo:table-row>
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 7.1</fo:block>
-                </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 7.2</fo:block>
-                </fo:table-cell>
-              </fo:table-row>
-            </fo:table-body>
-          </fo:table>
-        </fo:flow>
-      </fo:page-sequence>
-      <fo:page-sequence master-reference="page" font-size="8pt" line-height="10pt">
-        <fo:flow flow-name="xsl-region-body">
-          <fo:block>Before the table</fo:block>
-          <fo:table table-layout="fixed" width="100%"
-            table-omit-header-at-break="true" table-omit-footer-at-break="true">
-            <fo:table-column column-width="proportional-column-width(1)"/>
-            <fo:table-column column-width="proportional-column-width(1)"/>
-            <fo:table-header border="1pt solid black">
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Header 1.1<fo:footnote>
-                      <fo:inline>*</fo:inline>
-                      <fo:footnote-body>
-                        <fo:block>* Footnote from the table-header.</fo:block>
-                      </fo:footnote-body>
-                    </fo:footnote></fo:block>
-                </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Header 1.2</fo:block>
-                </fo:table-cell>
-              </fo:table-row>
-            </fo:table-header>
-            <fo:table-footer border="1pt solid black">
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Footer 1.1</fo:block>
-                </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Footer 1.2<fo:footnote>
-                      <fo:inline>†</fo:inline>
-                      <fo:footnote-body>
-                        <fo:block>† Footnote from the table-footer.</fo:block>
-                      </fo:footnote-body>
-                    </fo:footnote></fo:block>
-                </fo:table-cell>
-              </fo:table-row>
-            </fo:table-footer>
-            <fo:table-body border="0.5pt solid black">
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 1.1</fo:block>
-                </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 1.2</fo:block>
-                </fo:table-cell>
-              </fo:table-row>
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 2.1</fo:block>
-                </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 2.2</fo:block>
-                </fo:table-cell>
-              </fo:table-row>
-            </fo:table-body>
-          </fo:table>
-        </fo:flow>
-      </fo:page-sequence>
-      <fo:page-sequence master-reference="page" font-size="8pt" line-height="10pt">
-        <fo:flow flow-name="xsl-region-body">
-          <fo:block>Before the table</fo:block>
-          <fo:table table-layout="fixed" width="100%"
-            table-omit-header-at-break="true" table-omit-footer-at-break="true">
-            <fo:table-column column-width="proportional-column-width(1)"/>
-            <fo:table-column column-width="proportional-column-width(1)"/>
-            <fo:table-header border="1pt solid black">
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Header 1.1<fo:footnote>
-                      <fo:inline>*</fo:inline>
-                      <fo:footnote-body>
-                        <fo:block>* Footnote from the table-header.</fo:block>
-                      </fo:footnote-body>
-                    </fo:footnote></fo:block>
-                </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Header 1.2</fo:block>
-                </fo:table-cell>
-              </fo:table-row>
-            </fo:table-header>
-            <fo:table-footer border="1pt solid black">
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Footer 1.1</fo:block>
-                </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Footer 1.2<fo:footnote>
-                      <fo:inline>†</fo:inline>
-                      <fo:footnote-body>
-                        <fo:block>† Footnote from the table-footer.</fo:block>
-                      </fo:footnote-body>
-                    </fo:footnote></fo:block>
-                </fo:table-cell>
-              </fo:table-row>
-            </fo:table-footer>
-            <fo:table-body border="0.5pt solid black">
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 1.1</fo:block>
-                </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 1.2</fo:block>
-                </fo:table-cell>
-              </fo:table-row>
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 2.1</fo:block>
-                </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 2.2</fo:block>
-                </fo:table-cell>
-              </fo:table-row>
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 3.1</fo:block>
-                </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 3.2</fo:block>
-                </fo:table-cell>
-              </fo:table-row>
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 4.1</fo:block>
-                </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 4.2</fo:block>
-                </fo:table-cell>
-              </fo:table-row>
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 5.1</fo:block>
-                </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 5.2</fo:block>
-                </fo:table-cell>
-              </fo:table-row>
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 6.1</fo:block>
-                </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 6.2</fo:block>
-                </fo:table-cell>
-              </fo:table-row>
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 7.1</fo:block>
-                </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 7.2</fo:block>
-                </fo:table-cell>
-              </fo:table-row>
-            </fo:table-body>
-          </fo:table>
-        </fo:flow>
-      </fo:page-sequence>
-    </fo:root>
-  </fo>
-  <checks>
-    <eval expected="1"                           xpath="count(//pageSequence[1]/pageViewport)"/>
-    <eval expected="Header 1.1*"                       xpath="//pageSequence[1]//flow/block[2]/block[1]"/>
-    <eval expected="Footer 1.2†"                       xpath="//pageSequence[1]//flow/block[2]/block[8]"/>
-    <eval expected="2"                           xpath="count(//pageSequence[1]//footnote/block)"/>
-    <eval expected="* Footnote from the table-header." xpath="//pageSequence[1]//footnote/block[1]"/>
-    <eval expected="† Footnote from the table-footer." xpath="//pageSequence[1]//footnote/block[2]"/>
-
-    <eval expected="2"                           xpath="count(//pageSequence[2]/pageViewport)"/>
-    <eval expected="1"                           xpath="count(//pageSequence[2]/pageViewport[1]//footnote/block)"/>
-    <eval expected="* Footnote from the table-header." xpath="//pageSequence[2]/pageViewport[1]//footnote/block[1]"/>
-    <eval expected="Cell 6.1"                          xpath="//pageSequence[2]/pageViewport[2]//flow/block[1]/block[3]"/>
-    <eval expected="1"                           xpath="count(//pageSequence[2]/pageViewport[2]//footnote/block)"/>
-    <eval expected="† Footnote from the table-footer." xpath="//pageSequence[2]/pageViewport[2]//footnote/block[1]"/>
-
-    <eval expected="1"                           xpath="count(//pageSequence[3]/pageViewport)"/>
-    <eval expected="Header 1.1*"                       xpath="//pageSequence[3]//flow/block[2]/block[1]"/>
-    <eval expected="Footer 1.2†"                       xpath="//pageSequence[3]//flow/block[2]/block[8]"/>
-    <eval expected="2"                           xpath="count(//pageSequence[3]//footnote/block)"/>
-    <eval expected="* Footnote from the table-header." xpath="//pageSequence[3]//footnote/block[1]"/>
-    <eval expected="† Footnote from the table-footer." xpath="//pageSequence[3]//footnote/block[2]"/>
-
-    <eval expected="2"                           xpath="count(//pageSequence[4]/pageViewport)"/>
-    <eval expected="1"                           xpath="count(//pageSequence[4]/pageViewport[1]//footnote/block)"/>
-    <eval expected="* Footnote from the table-header." xpath="//pageSequence[4]/pageViewport[1]//footnote/block[1]"/>
-    <eval expected="Cell 7.1"                          xpath="//pageSequence[4]/pageViewport[2]//flow/block[1]/block[1]"/>
-    <eval expected="1"                           xpath="count(//pageSequence[4]/pageViewport[2]//footnote/block)"/>
-    <eval expected="† Footnote from the table-footer." xpath="//pageSequence[4]/pageViewport[2]//footnote/block[1]"/>
-  </checks>
-</testcase>
Index: test/layoutengine/standard-testcases/footnote_in_table-heading.xml
===================================================================
--- test/layoutengine/standard-testcases/footnote_in_table-heading.xml	(revision 1601985)
+++ test/layoutengine/standard-testcases/footnote_in_table-heading.xml	(working copy)
@@ -19,355 +19,1049 @@
 <testcase>
   <info>
     <p>
-      A footnote from a table-header should appear once at the bottom of the first page.
+      A footnote from a repeated table-header should appear on every page where the header is 
+      repeated.
     </p>
   </info>
   <fo>
-    <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
+    <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format" line-height="10pt" font-size="8pt">
       <fo:layout-master-set>
-        <fo:simple-page-master master-name="page" page-height="120pt" page-width="220pt" margin="10pt">
-          <fo:region-body background-color="#F0F0F0"/>
+        <fo:simple-page-master master-name="page" page-height="100pt" page-width="220pt" margin="10pt">
+          <fo:region-body/>
         </fo:simple-page-master>
+        <fo:simple-page-master master-name="tall-page" page-height="150pt" page-width="220pt" margin="10pt">
+          <fo:region-body/>
+        </fo:simple-page-master>
       </fo:layout-master-set>
-      <fo:page-sequence master-reference="page" font-size="8pt" line-height="10pt">
+
+      <fo:page-sequence master-reference="page">
         <fo:flow flow-name="xsl-region-body">
-          <fo:block>Before the table</fo:block>
-          <fo:table table-layout="fixed" width="100%">
-            <fo:table-column column-width="proportional-column-width(1)"/>
-            <fo:table-column column-width="proportional-column-width(1)"/>
-            <fo:table-header border="1pt solid black">
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Header 1.1<fo:footnote>
-                      <fo:inline>*</fo:inline>
+          <fo:block>Footnote in header of split table<fo:footnote><fo:inline>*</fo:inline><fo:footnote-body><fo:block>* Footnote before the 
+                  table</fo:block></fo:footnote-body></fo:footnote></fo:block>
+          <fo:table width="100%" table-layout="fixed">
+            <fo:table-header>
+              <fo:table-cell>
+                <fo:block>Header 1.1<fo:footnote>
+                    <fo:inline>†</fo:inline>
+                    <fo:footnote-body>
+                      <fo:block>† Footnote from the table-header</fo:block>
+                    </fo:footnote-body>
+                </fo:footnote></fo:block>
+              </fo:table-cell>
+              <fo:table-cell>
+                <fo:block>Header 1.2</fo:block>
+              </fo:table-cell>
+            </fo:table-header>
+            <fo:table-body>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 1.1</fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 1.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 2.1<fo:footnote>
+                      <fo:inline>¹</fo:inline>
                       <fo:footnote-body>
-                        <fo:block>* Footnote from the table-header.</fo:block>
+                        <fo:block>¹ Footnote from cell 2.1</fo:block>
                       </fo:footnote-body>
-                    </fo:footnote></fo:block>
+                  </fo:footnote></fo:block>
                 </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Header 1.2</fo:block>
+                <fo:table-cell>
+                  <fo:block>Cell 2.2</fo:block>
                 </fo:table-cell>
               </fo:table-row>
-            </fo:table-header>
-            <fo:table-footer border="1pt solid black">
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Footer 1.1</fo:block>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 3.1</fo:block>
                 </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Footer 1.2<fo:footnote>
-                      <fo:inline>†</fo:inline>
+                <fo:table-cell>
+                  <fo:block>Cell 3.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 4.1</fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 4.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 5.1</fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 5.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 6.1</fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 6.2<fo:footnote>
+                      <fo:inline>²</fo:inline>
                       <fo:footnote-body>
-                        <fo:block>† Footnote from the table-footer.</fo:block>
+                        <fo:block>² Footnote from cell 6.2</fo:block>
                       </fo:footnote-body>
-                    </fo:footnote></fo:block>
+                  </fo:footnote></fo:block>
                 </fo:table-cell>
               </fo:table-row>
-            </fo:table-footer>
-            <fo:table-body border="0.5pt solid black">
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 1.1</fo:block>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 7.1</fo:block>
                 </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 1.2</fo:block>
+                <fo:table-cell>
+                  <fo:block>Cell 7.2</fo:block>
                 </fo:table-cell>
               </fo:table-row>
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 2.1</fo:block>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 8.1</fo:block>
                 </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 2.2</fo:block>
+                <fo:table-cell>
+                  <fo:block>Cell 8.2</fo:block>
                 </fo:table-cell>
               </fo:table-row>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 9.1</fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 9.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 10.1</fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 10.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 11.1</fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 11.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 12.1</fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 12.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 13.1</fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 13.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 14.1</fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 14.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 15.1</fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 15.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 16.1</fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 16.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 17.1</fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 17.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 18.1</fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 18.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 19.1</fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 19.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 20.1</fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 20.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
             </fo:table-body>
           </fo:table>
         </fo:flow>
       </fo:page-sequence>
-      <fo:page-sequence master-reference="page" font-size="8pt" line-height="10pt">
+
+      <fo:page-sequence master-reference="page">
         <fo:flow flow-name="xsl-region-body">
-          <fo:block>Before the table</fo:block>
-          <fo:table table-layout="fixed" width="100%">
-            <fo:table-column column-width="proportional-column-width(1)"/>
-            <fo:table-column column-width="proportional-column-width(1)"/>
-            <fo:table-header border="1pt solid black">
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Header 1.1<fo:footnote>
-                      <fo:inline>*</fo:inline>
+          <fo:block>Footnote in header of non-split table<fo:footnote><fo:inline>*</fo:inline><fo:footnote-body><fo:block>* Footnote before the 
+                  table</fo:block></fo:footnote-body></fo:footnote></fo:block>
+          <fo:table width="100%" table-layout="fixed">
+            <fo:table-header>
+              <fo:table-cell>
+                <fo:block>Header 1.1<fo:footnote>
+                    <fo:inline>†</fo:inline>
+                    <fo:footnote-body>
+                      <fo:block>† Footnote from the table-header</fo:block>
+                    </fo:footnote-body>
+                </fo:footnote></fo:block>
+              </fo:table-cell>
+              <fo:table-cell>
+                <fo:block>Header 1.2</fo:block>
+              </fo:table-cell>
+            </fo:table-header>
+            <fo:table-body>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 1.1</fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 1.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 2.1<fo:footnote>
+                      <fo:inline>¹</fo:inline>
                       <fo:footnote-body>
-                        <fo:block>* Footnote from the table-header.</fo:block>
+                        <fo:block>¹ Footnote from cell 2.1</fo:block>
                       </fo:footnote-body>
-                    </fo:footnote></fo:block>
+                  </fo:footnote></fo:block>
                 </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Header 1.2</fo:block>
+                <fo:table-cell>
+                  <fo:block>Cell 2.2</fo:block>
                 </fo:table-cell>
               </fo:table-row>
-            </fo:table-header>
-            <fo:table-footer border="1pt solid black">
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Footer 1.1</fo:block>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 3.1</fo:block>
                 </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Footer 1.2<fo:footnote>
-                      <fo:inline>†</fo:inline>
-                      <fo:footnote-body>
-                        <fo:block>† Footnote from the table-footer.</fo:block>
-                      </fo:footnote-body>
-                    </fo:footnote></fo:block>
+                <fo:table-cell>
+                  <fo:block>Cell 3.2</fo:block>
                 </fo:table-cell>
               </fo:table-row>
+            </fo:table-body>
+          </fo:table>
+        </fo:flow>
+      </fo:page-sequence>
+
+      <fo:page-sequence master-reference="page">
+        <fo:flow flow-name="xsl-region-body">
+          <fo:block>Footnote in footer of split table<fo:footnote><fo:inline>*</fo:inline><fo:footnote-body><fo:block>* Footnote before the 
+                  table</fo:block></fo:footnote-body></fo:footnote></fo:block>
+          <fo:table width="100%" table-layout="fixed">
+            <fo:table-footer>
+              <fo:table-cell>
+                <fo:block>Footer 1.1<fo:footnote>
+                    <fo:inline>†</fo:inline>
+                    <fo:footnote-body>
+                      <fo:block>† Footnote from the table-footer</fo:block>
+                    </fo:footnote-body>
+                </fo:footnote></fo:block>
+              </fo:table-cell>
+              <fo:table-cell>
+                <fo:block>Footer 1.2</fo:block>
+              </fo:table-cell>
             </fo:table-footer>
-            <fo:table-body border="0.5pt solid black">
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
+            <fo:table-body>
+              <fo:table-row>
+                <fo:table-cell>
                   <fo:block>Cell 1.1</fo:block>
                 </fo:table-cell>
-                <fo:table-cell border="inherit">
+                <fo:table-cell>
                   <fo:block>Cell 1.2</fo:block>
                 </fo:table-cell>
               </fo:table-row>
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 2.1</fo:block>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 2.1<fo:footnote>
+                      <fo:inline>¹</fo:inline>
+                      <fo:footnote-body>
+                        <fo:block>¹ Footnote from cell 2.1</fo:block>
+                      </fo:footnote-body>
+                  </fo:footnote></fo:block>
                 </fo:table-cell>
-                <fo:table-cell border="inherit">
+                <fo:table-cell>
                   <fo:block>Cell 2.2</fo:block>
                 </fo:table-cell>
               </fo:table-row>
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
+              <fo:table-row>
+                <fo:table-cell>
                   <fo:block>Cell 3.1</fo:block>
                 </fo:table-cell>
-                <fo:table-cell border="inherit">
+                <fo:table-cell>
                   <fo:block>Cell 3.2</fo:block>
                 </fo:table-cell>
               </fo:table-row>
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
+              <fo:table-row>
+                <fo:table-cell>
                   <fo:block>Cell 4.1</fo:block>
                 </fo:table-cell>
-                <fo:table-cell border="inherit">
+                <fo:table-cell>
                   <fo:block>Cell 4.2</fo:block>
                 </fo:table-cell>
               </fo:table-row>
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
+              <fo:table-row>
+                <fo:table-cell>
                   <fo:block>Cell 5.1</fo:block>
                 </fo:table-cell>
-                <fo:table-cell border="inherit">
+                <fo:table-cell>
                   <fo:block>Cell 5.2</fo:block>
                 </fo:table-cell>
               </fo:table-row>
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
+              <fo:table-row>
+                <fo:table-cell>
                   <fo:block>Cell 6.1</fo:block>
                 </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 6.2</fo:block>
+                <fo:table-cell>
+                  <fo:block>Cell 6.2<fo:footnote>
+                      <fo:inline>²</fo:inline>
+                      <fo:footnote-body>
+                        <fo:block>² Footnote from cell 6.2</fo:block>
+                      </fo:footnote-body>
+                  </fo:footnote></fo:block>
                 </fo:table-cell>
               </fo:table-row>
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
+              <fo:table-row>
+                <fo:table-cell>
                   <fo:block>Cell 7.1</fo:block>
                 </fo:table-cell>
-                <fo:table-cell border="inherit">
+                <fo:table-cell>
                   <fo:block>Cell 7.2</fo:block>
                 </fo:table-cell>
               </fo:table-row>
-            </fo:table-body>
-          </fo:table>
-        </fo:flow>
-      </fo:page-sequence>
-      <fo:page-sequence master-reference="page" font-size="8pt" line-height="10pt">
-        <fo:flow flow-name="xsl-region-body">
-          <fo:block>Before the table</fo:block>
-          <fo:table table-layout="fixed" width="100%"
-            table-omit-header-at-break="true" table-omit-footer-at-break="true">
-            <fo:table-column column-width="proportional-column-width(1)"/>
-            <fo:table-column column-width="proportional-column-width(1)"/>
-            <fo:table-header border="1pt solid black">
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Header 1.1<fo:footnote>
-                      <fo:inline>*</fo:inline>
-                      <fo:footnote-body>
-                        <fo:block>* Footnote from the table-header.</fo:block>
-                      </fo:footnote-body>
-                    </fo:footnote></fo:block>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 8.1</fo:block>
                 </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Header 1.2</fo:block>
+                <fo:table-cell>
+                  <fo:block>Cell 8.2</fo:block>
                 </fo:table-cell>
               </fo:table-row>
-            </fo:table-header>
-            <fo:table-footer border="1pt solid black">
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Footer 1.1</fo:block>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 9.1</fo:block>
                 </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Footer 1.2<fo:footnote>
-                      <fo:inline>†</fo:inline>
-                      <fo:footnote-body>
-                        <fo:block>† Footnote from the table-footer.</fo:block>
-                      </fo:footnote-body>
-                    </fo:footnote></fo:block>
+                <fo:table-cell>
+                  <fo:block>Cell 9.2</fo:block>
                 </fo:table-cell>
               </fo:table-row>
-            </fo:table-footer>
-            <fo:table-body border="0.5pt solid black">
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 1.1</fo:block>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 10.1</fo:block>
                 </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 1.2</fo:block>
+                <fo:table-cell>
+                  <fo:block>Cell 10.2</fo:block>
                 </fo:table-cell>
               </fo:table-row>
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 2.1</fo:block>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 11.1</fo:block>
                 </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 2.2</fo:block>
+                <fo:table-cell>
+                  <fo:block>Cell 11.2</fo:block>
                 </fo:table-cell>
               </fo:table-row>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 12.1</fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 12.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 13.1</fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 13.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 14.1</fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 14.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 15.1</fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 15.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 16.1</fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 16.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 17.1</fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 17.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 18.1</fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 18.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 19.1</fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 19.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 20.1</fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 20.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
             </fo:table-body>
           </fo:table>
         </fo:flow>
       </fo:page-sequence>
-      <fo:page-sequence master-reference="page" font-size="8pt" line-height="10pt">
+
+      <fo:page-sequence master-reference="page">
         <fo:flow flow-name="xsl-region-body">
-          <fo:block>Before the table</fo:block>
-          <fo:table table-layout="fixed" width="100%"
-            table-omit-header-at-break="true" table-omit-footer-at-break="true">
-            <fo:table-column column-width="proportional-column-width(1)"/>
-            <fo:table-column column-width="proportional-column-width(1)"/>
-            <fo:table-header border="1pt solid black">
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Header 1.1<fo:footnote>
-                      <fo:inline>*</fo:inline>
+          <fo:block>Footnote in footer of non-split table<fo:footnote><fo:inline>*</fo:inline><fo:footnote-body><fo:block>* Footnote before the 
+                  table</fo:block></fo:footnote-body></fo:footnote></fo:block>
+          <fo:table width="100%" table-layout="fixed">
+            <fo:table-footer>
+              <fo:table-cell>
+                <fo:block>Footer 1.1<fo:footnote>
+                    <fo:inline>†</fo:inline>
+                    <fo:footnote-body>
+                      <fo:block>† Footnote from the table-footer</fo:block>
+                    </fo:footnote-body>
+                </fo:footnote></fo:block>
+              </fo:table-cell>
+              <fo:table-cell>
+                <fo:block>Footer 1.2</fo:block>
+              </fo:table-cell>
+            </fo:table-footer>
+            <fo:table-body>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 1.1</fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 1.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 2.1<fo:footnote>
+                      <fo:inline>¹</fo:inline>
                       <fo:footnote-body>
-                        <fo:block>* Footnote from the table-header.</fo:block>
+                        <fo:block>¹ Footnote from cell 2.1</fo:block>
                       </fo:footnote-body>
-                    </fo:footnote></fo:block>
+                  </fo:footnote></fo:block>
                 </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Header 1.2</fo:block>
+                <fo:table-cell>
+                  <fo:block>Cell 2.2</fo:block>
                 </fo:table-cell>
               </fo:table-row>
-            </fo:table-header>
-            <fo:table-footer border="1pt solid black">
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Footer 1.1</fo:block>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 3.1</fo:block>
                 </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Footer 1.2<fo:footnote>
-                      <fo:inline>†</fo:inline>
-                      <fo:footnote-body>
-                        <fo:block>† Footnote from the table-footer.</fo:block>
-                      </fo:footnote-body>
-                    </fo:footnote></fo:block>
+                <fo:table-cell>
+                  <fo:block>Cell 3.2</fo:block>
                 </fo:table-cell>
               </fo:table-row>
+            </fo:table-body>
+          </fo:table>
+        </fo:flow>
+      </fo:page-sequence>
+
+      <fo:page-sequence master-reference="page">
+        <fo:flow flow-name="xsl-region-body">
+          <fo:block>Footnote in header and footer of split table<fo:footnote><fo:inline>*</fo:inline><fo:footnote-body><fo:block>* Footnote before 
+                  the table</fo:block></fo:footnote-body></fo:footnote></fo:block>
+          <fo:table width="100%" table-layout="fixed">
+            <fo:table-header>
+              <fo:table-cell>
+                <fo:block>Header 1.1<fo:footnote>
+                    <fo:inline>†</fo:inline>
+                    <fo:footnote-body>
+                      <fo:block>† Footnote from the table-header</fo:block>
+                    </fo:footnote-body>
+                </fo:footnote></fo:block>
+              </fo:table-cell>
+              <fo:table-cell>
+                <fo:block>Header 1.2</fo:block>
+              </fo:table-cell>
+            </fo:table-header>
+            <fo:table-footer>
+              <fo:table-cell>
+                <fo:block>Footer 1.1<fo:footnote>
+                    <fo:inline>‡</fo:inline>
+                    <fo:footnote-body>
+                      <fo:block>‡ Footnote from the table-footer</fo:block>
+                    </fo:footnote-body>
+                </fo:footnote></fo:block>
+              </fo:table-cell>
+              <fo:table-cell>
+                <fo:block>Footer 1.2</fo:block>
+              </fo:table-cell>
             </fo:table-footer>
-            <fo:table-body border="0.5pt solid black">
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 1.1</fo:block>
+            <fo:table-body>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 1.1<fo:footnote>
+                      <fo:inline>¹</fo:inline>
+                      <fo:footnote-body>
+                        <fo:block>¹ Footnote from cell 1.1</fo:block>
+                      </fo:footnote-body>
+                  </fo:footnote></fo:block>
                 </fo:table-cell>
-                <fo:table-cell border="inherit">
+                <fo:table-cell>
                   <fo:block>Cell 1.2</fo:block>
                 </fo:table-cell>
               </fo:table-row>
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
+              <fo:table-row>
+                <fo:table-cell>
                   <fo:block>Cell 2.1</fo:block>
                 </fo:table-cell>
-                <fo:table-cell border="inherit">
+                <fo:table-cell>
                   <fo:block>Cell 2.2</fo:block>
                 </fo:table-cell>
               </fo:table-row>
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
+              <fo:table-row>
+                <fo:table-cell>
                   <fo:block>Cell 3.1</fo:block>
                 </fo:table-cell>
-                <fo:table-cell border="inherit">
-                  <fo:block>Cell 3.2</fo:block>
+                <fo:table-cell>
+                  <fo:block>Cell 3.2<fo:footnote>
+                      <fo:inline>²</fo:inline>
+                      <fo:footnote-body>
+                        <fo:block>² Footnote from cell 3.2</fo:block>
+                      </fo:footnote-body>
+                  </fo:footnote></fo:block>
                 </fo:table-cell>
               </fo:table-row>
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
+              <fo:table-row>
+                <fo:table-cell>
                   <fo:block>Cell 4.1</fo:block>
                 </fo:table-cell>
-                <fo:table-cell border="inherit">
+                <fo:table-cell>
                   <fo:block>Cell 4.2</fo:block>
                 </fo:table-cell>
               </fo:table-row>
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
+              <fo:table-row>
+                <fo:table-cell>
                   <fo:block>Cell 5.1</fo:block>
                 </fo:table-cell>
-                <fo:table-cell border="inherit">
+                <fo:table-cell>
                   <fo:block>Cell 5.2</fo:block>
                 </fo:table-cell>
               </fo:table-row>
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
+              <fo:table-row>
+                <fo:table-cell>
                   <fo:block>Cell 6.1</fo:block>
                 </fo:table-cell>
-                <fo:table-cell border="inherit">
+                <fo:table-cell>
                   <fo:block>Cell 6.2</fo:block>
                 </fo:table-cell>
               </fo:table-row>
-              <fo:table-row border="inherit">
-                <fo:table-cell border="inherit">
+              <fo:table-row>
+                <fo:table-cell>
                   <fo:block>Cell 7.1</fo:block>
                 </fo:table-cell>
-                <fo:table-cell border="inherit">
+                <fo:table-cell>
                   <fo:block>Cell 7.2</fo:block>
                 </fo:table-cell>
               </fo:table-row>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 8.1</fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 8.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 9.1</fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 9.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 10.1</fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 10.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 11.1</fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 11.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 12.1</fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 12.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
             </fo:table-body>
           </fo:table>
         </fo:flow>
       </fo:page-sequence>
+
+      <fo:page-sequence master-reference="page">
+        <fo:flow flow-name="xsl-region-body">
+          <fo:block>Footnote in header and footer of non-split table<fo:footnote><fo:inline>*</fo:inline><fo:footnote-body><fo:block>* Footnote 
+                  before the table</fo:block></fo:footnote-body></fo:footnote></fo:block>
+          <fo:table width="100%" table-layout="fixed">
+            <fo:table-header>
+              <fo:table-cell>
+                <fo:block>Header 1.1<fo:footnote>
+                    <fo:inline>†</fo:inline>
+                    <fo:footnote-body>
+                      <fo:block>† Footnote from the table-header</fo:block>
+                    </fo:footnote-body>
+                </fo:footnote></fo:block>
+              </fo:table-cell>
+              <fo:table-cell>
+                <fo:block>Header 1.2</fo:block>
+              </fo:table-cell>
+            </fo:table-header>
+            <fo:table-footer>
+              <fo:table-cell>
+                <fo:block>Footer 1.1<fo:footnote>
+                    <fo:inline>‡</fo:inline>
+                    <fo:footnote-body>
+                      <fo:block>‡ Footnote from the table-footer</fo:block>
+                    </fo:footnote-body>
+                </fo:footnote></fo:block>
+              </fo:table-cell>
+              <fo:table-cell>
+                <fo:block>Footer 1.2</fo:block>
+              </fo:table-cell>
+            </fo:table-footer>
+            <fo:table-body>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 1.1<fo:footnote>
+                      <fo:inline>¹</fo:inline>
+                      <fo:footnote-body>
+                        <fo:block>¹ Footnote from cell 1.1</fo:block>
+                      </fo:footnote-body>
+                  </fo:footnote></fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 1.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
+            </fo:table-body>
+          </fo:table>
+        </fo:flow>
+      </fo:page-sequence>
+
+      <fo:page-sequence master-reference="page">
+        <fo:flow flow-name="xsl-region-body">
+          <fo:block>Footnote in header and footer of split table omitting headings at 
+            breaks<fo:footnote><fo:inline>*</fo:inline><fo:footnote-body><fo:block>* Footnote before the 
+                  table</fo:block></fo:footnote-body></fo:footnote></fo:block>
+          <fo:table width="100%" table-layout="fixed" table-omit-header-at-break="true" table-omit-footer-at-break="true">
+            <fo:table-header>
+              <fo:table-cell>
+                <fo:block>Header 1.1<fo:footnote>
+                    <fo:inline>†</fo:inline>
+                    <fo:footnote-body>
+                      <fo:block>† Footnote from the table-header</fo:block>
+                    </fo:footnote-body>
+                </fo:footnote></fo:block>
+              </fo:table-cell>
+              <fo:table-cell>
+                <fo:block>Header 1.2</fo:block>
+              </fo:table-cell>
+            </fo:table-header>
+            <fo:table-footer>
+              <fo:table-cell>
+                <fo:block>Footer 1.1<fo:footnote>
+                    <fo:inline>‡</fo:inline>
+                    <fo:footnote-body>
+                      <fo:block>‡ Footnote from the table-footer</fo:block>
+                    </fo:footnote-body>
+                </fo:footnote></fo:block>
+              </fo:table-cell>
+              <fo:table-cell>
+                <fo:block>Footer 1.2</fo:block>
+              </fo:table-cell>
+            </fo:table-footer>
+            <fo:table-body>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 1.1<fo:footnote>
+                      <fo:inline>¹</fo:inline>
+                      <fo:footnote-body>
+                        <fo:block>¹ Footnote from cell 1.1</fo:block>
+                      </fo:footnote-body>
+                  </fo:footnote></fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 1.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 2.1</fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 2.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 3.1</fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 3.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:block>Cell 4.1</fo:block>
+                </fo:table-cell>
+                <fo:table-cell>
+                  <fo:block>Cell 4.2</fo:block>
+                </fo:table-cell>
+              </fo:table-row>
+            </fo:table-body>
+          </fo:table>
+          <fo:block>After the table<fo:footnote><fo:inline>**</fo:inline><fo:footnote-body><fo:block>** Footnote after the 
+                  table</fo:block></fo:footnote-body></fo:footnote></fo:block>
+        </fo:flow>
+      </fo:page-sequence>
+
+      <fo:page-sequence master-reference="tall-page">
+        <fo:flow flow-name="xsl-region-body">
+          <fo:block>Nested tables</fo:block>
+          <fo:table width="100%" table-layout="fixed">
+            <fo:table-header>
+              <fo:table-cell>
+                <fo:block>Outer Header<fo:footnote>
+                    <fo:inline>(oh)</fo:inline>
+                    <fo:footnote-body>
+                      <fo:block>oh Footnote from the outer header</fo:block>
+                    </fo:footnote-body>
+                </fo:footnote></fo:block>
+              </fo:table-cell>
+            </fo:table-header>
+            <fo:table-body>
+              <fo:table-row>
+                <fo:table-cell>
+                  <fo:table width="100%" table-layout="fixed">
+                    <fo:table-header>
+                      <fo:table-cell>
+                        <fo:block>Inner Header 1.1<fo:footnote>
+                            <fo:inline>(ih)</fo:inline>
+                            <fo:footnote-body>
+                              <fo:block>ih Footnote from the inner header</fo:block>
+                            </fo:footnote-body>
+                        </fo:footnote></fo:block>
+                      </fo:table-cell>
+                      <fo:table-cell>
+                        <fo:block>Inner Header 1.2</fo:block>
+                      </fo:table-cell>
+                    </fo:table-header>
+                    <fo:table-footer>
+                      <fo:table-cell>
+                        <fo:block>Inner Footer 1.1<fo:footnote>
+                            <fo:inline>(if)</fo:inline>
+                            <fo:footnote-body>
+                              <fo:block>if Footnote from the inner footer</fo:block>
+                            </fo:footnote-body>
+                        </fo:footnote></fo:block>
+                      </fo:table-cell>
+                      <fo:table-cell>
+                        <fo:block>Inner Footer 1.2</fo:block>
+                      </fo:table-cell>
+                    </fo:table-footer>
+                    <fo:table-body>
+                      <fo:table-row>
+                        <fo:table-cell>
+                          <fo:block>Inner 1.1<fo:footnote>
+                              <fo:inline>¹</fo:inline>
+                              <fo:footnote-body>
+                                <fo:block>¹ Footnote from inner 1.1</fo:block>
+                              </fo:footnote-body>
+                          </fo:footnote></fo:block>
+                        </fo:table-cell>
+                        <fo:table-cell>
+                          <fo:block>Inner 1.2</fo:block>
+                        </fo:table-cell>
+                      </fo:table-row>
+                      <fo:table-row>
+                        <fo:table-cell>
+                          <fo:block>Inner 2.1</fo:block>
+                        </fo:table-cell>
+                        <fo:table-cell>
+                          <fo:block>Inner 2.2</fo:block>
+                        </fo:table-cell>
+                      </fo:table-row>
+                      <fo:table-row>
+                        <fo:table-cell>
+                          <fo:block>Inner 3.1</fo:block>
+                        </fo:table-cell>
+                        <fo:table-cell>
+                          <fo:block>Inner 3.2</fo:block>
+                        </fo:table-cell>
+                      </fo:table-row>
+                      <fo:table-row>
+                        <fo:table-cell>
+                          <fo:block>Inner 4.1</fo:block>
+                        </fo:table-cell>
+                        <fo:table-cell>
+                          <fo:block>Inner 4.2</fo:block>
+                        </fo:table-cell>
+                      </fo:table-row>
+                      <fo:table-row>
+                        <fo:table-cell>
+                          <fo:block>Inner 5.1</fo:block>
+                        </fo:table-cell>
+                        <fo:table-cell>
+                          <fo:block>Inner 5.2</fo:block>
+                        </fo:table-cell>
+                      </fo:table-row>
+                      <fo:table-row>
+                        <fo:table-cell>
+                          <fo:block>Inner 6.1</fo:block>
+                        </fo:table-cell>
+                        <fo:table-cell>
+                          <fo:block>Inner 6.2</fo:block>
+                        </fo:table-cell>
+                      </fo:table-row>
+                      <fo:table-row>
+                        <fo:table-cell>
+                          <fo:block>Inner 7.1</fo:block>
+                        </fo:table-cell>
+                        <fo:table-cell>
+                          <fo:block>Inner 7.2</fo:block>
+                        </fo:table-cell>
+                      </fo:table-row>
+                      <fo:table-row>
+                        <fo:table-cell>
+                          <fo:block>Inner 8.1</fo:block>
+                        </fo:table-cell>
+                        <fo:table-cell>
+                          <fo:block>Inner 8.2</fo:block>
+                        </fo:table-cell>
+                      </fo:table-row>
+                      <fo:table-row>
+                        <fo:table-cell>
+                          <fo:block>Inner 9.1</fo:block>
+                        </fo:table-cell>
+                        <fo:table-cell>
+                          <fo:block>Inner 9.2</fo:block>
+                        </fo:table-cell>
+                      </fo:table-row>
+                      <fo:table-row>
+                        <fo:table-cell>
+                          <fo:block>Inner 10.1</fo:block>
+                        </fo:table-cell>
+                        <fo:table-cell>
+                          <fo:block>Inner 10.3</fo:block>
+                        </fo:table-cell>
+                      </fo:table-row>
+                      <fo:table-row>
+                        <fo:table-cell>
+                          <fo:block>Inner 11.1</fo:block>
+                        </fo:table-cell>
+                        <fo:table-cell>
+                          <fo:block>Inner 11.3</fo:block>
+                        </fo:table-cell>
+                      </fo:table-row>
+                      <fo:table-row>
+                        <fo:table-cell>
+                          <fo:block>Inner 12.1</fo:block>
+                        </fo:table-cell>
+                        <fo:table-cell>
+                          <fo:block>Inner 12.3</fo:block>
+                        </fo:table-cell>
+                      </fo:table-row>
+                      <fo:table-row>
+                        <fo:table-cell>
+                          <fo:block>Inner 13.1</fo:block>
+                        </fo:table-cell>
+                        <fo:table-cell>
+                          <fo:block>Inner 13.3</fo:block>
+                        </fo:table-cell>
+                      </fo:table-row>
+                      <fo:table-row>
+                        <fo:table-cell>
+                          <fo:block>Inner 14.1</fo:block>
+                        </fo:table-cell>
+                        <fo:table-cell>
+                          <fo:block>Inner 14.3</fo:block>
+                        </fo:table-cell>
+                      </fo:table-row>
+                    </fo:table-body>
+                  </fo:table>
+                </fo:table-cell>
+              </fo:table-row>
+            </fo:table-body>
+          </fo:table>
+        </fo:flow>
+      </fo:page-sequence>
+
     </fo:root>
   </fo>
   <checks>
-    <eval expected="1"                           xpath="count(//pageSequence[1]/pageViewport)"/>
-    <eval expected="Header 1.1*"                       xpath="//pageSequence[1]//flow/block[2]/block[1]"/>
-    <eval expected="Footer 1.2†"                       xpath="//pageSequence[1]//flow/block[2]/block[8]"/>
-    <eval expected="2"                           xpath="count(//pageSequence[1]//footnote/block)"/>
-    <eval expected="* Footnote from the table-header." xpath="//pageSequence[1]//footnote/block[1]"/>
-    <eval expected="† Footnote from the table-footer." xpath="//pageSequence[1]//footnote/block[2]"/>
+    <eval expected="3"                          xpath="count(//pageSequence[1]/pageViewport[1]//footnote/block)"/>
+    <eval expected="* Footnote before the table"      xpath="//pageSequence[1]/pageViewport[1]//footnote/block[1]"/>
+    <eval expected="† Footnote from the table-header" xpath="//pageSequence[1]/pageViewport[1]//footnote/block[2]"/>
+    <eval expected="¹ Footnote from cell 2.1"         xpath="//pageSequence[1]/pageViewport[1]//footnote/block[3]"/>
+    <eval expected="Cell 4.1"                         xpath="//pageSequence[1]/pageViewport[2]//flow/block[1]/block[3]"/>
+    <eval expected="2"                          xpath="count(//pageSequence[1]/pageViewport[2]//footnote/block)"/>
+    <eval expected="† Footnote from the table-header" xpath="//pageSequence[1]/pageViewport[2]//footnote/block[1]"/>
+    <eval expected="² Footnote from cell 6.2"         xpath="//pageSequence[1]/pageViewport[2]//footnote/block[2]"/>
+    <eval expected="Cell 9.1"                         xpath="//pageSequence[1]/pageViewport[3]//flow/block[1]/block[3]"/>
+    <eval expected="1"                          xpath="count(//pageSequence[1]/pageViewport[3]//footnote/block)"/>
+    <eval expected="† Footnote from the table-header" xpath="//pageSequence[1]/pageViewport[3]//footnote/block"/>
+    <eval expected="Cell 15.1"                        xpath="//pageSequence[1]/pageViewport[4]//flow/block[1]/block[3]"/>
+    <eval expected="1"                          xpath="count(//pageSequence[1]/pageViewport[4]//footnote/block)"/>
+    <eval expected="† Footnote from the table-header" xpath="//pageSequence[1]/pageViewport[4]//footnote/block"/>
 
-    <eval expected="2"                           xpath="count(//pageSequence[2]/pageViewport)"/>
-    <eval expected="1"                           xpath="count(//pageSequence[2]/pageViewport[1]//footnote/block)"/>
-    <eval expected="* Footnote from the table-header." xpath="//pageSequence[2]/pageViewport[1]//footnote/block[1]"/>
-    <eval expected="Cell 6.1"                          xpath="//pageSequence[2]/pageViewport[2]//flow/block[1]/block[3]"/>
-    <eval expected="1"                           xpath="count(//pageSequence[2]/pageViewport[2]//footnote/block)"/>
-    <eval expected="† Footnote from the table-footer." xpath="//pageSequence[2]/pageViewport[2]//footnote/block[1]"/>
+    <eval expected="1"                          xpath="count(//pageSequence[2]/pageViewport)"/>
+    <eval expected="3"                          xpath="count(//pageSequence[2]//footnote/block)"/>
+    <eval expected="* Footnote before the table"      xpath="//pageSequence[2]//footnote/block[1]"/>
+    <eval expected="† Footnote from the table-header" xpath="//pageSequence[2]//footnote/block[2]"/>
+    <eval expected="¹ Footnote from cell 2.1"         xpath="//pageSequence[2]//footnote/block[3]"/>
 
-    <eval expected="1"                           xpath="count(//pageSequence[3]/pageViewport)"/>
-    <eval expected="Header 1.1*"                       xpath="//pageSequence[3]//flow/block[2]/block[1]"/>
-    <eval expected="Footer 1.2†"                       xpath="//pageSequence[3]//flow/block[2]/block[8]"/>
-    <eval expected="2"                           xpath="count(//pageSequence[3]//footnote/block)"/>
-    <eval expected="* Footnote from the table-header." xpath="//pageSequence[3]//footnote/block[1]"/>
-    <eval expected="† Footnote from the table-footer." xpath="//pageSequence[3]//footnote/block[2]"/>
+    <eval expected="3"                          xpath="count(//pageSequence[3]/pageViewport[1]//footnote/block)"/>
+    <eval expected="* Footnote before the table"      xpath="//pageSequence[3]/pageViewport[1]//footnote/block[1]"/>
+    <eval expected="¹ Footnote from cell 2.1"         xpath="//pageSequence[3]/pageViewport[1]//footnote/block[2]"/>
+    <eval expected="† Footnote from the table-footer" xpath="//pageSequence[3]/pageViewport[1]//footnote/block[3]"/>
+    <eval expected="Cell 4.1"                         xpath="//pageSequence[3]/pageViewport[2]//flow/block[1]/block[1]"/>
+    <eval expected="2"                          xpath="count(//pageSequence[3]/pageViewport[2]//footnote/block)"/>
+    <eval expected="² Footnote from cell 6.2"         xpath="//pageSequence[3]/pageViewport[2]//footnote/block[1]"/>
+    <eval expected="† Footnote from the table-footer" xpath="//pageSequence[3]/pageViewport[2]//footnote/block[2]"/>
+    <eval expected="Cell 9.1"                         xpath="//pageSequence[3]/pageViewport[3]//flow/block[1]/block[1]"/>
+    <eval expected="1"                          xpath="count(//pageSequence[3]/pageViewport[3]//footnote/block)"/>
+    <eval expected="† Footnote from the table-footer" xpath="//pageSequence[3]/pageViewport[3]//footnote/block"/>
+    <eval expected="1"                          xpath="count(//pageSequence[3]/pageViewport[4]//footnote/block)"/>
+    <eval expected="Cell 15.1"                        xpath="//pageSequence[3]/pageViewport[4]//flow/block[1]/block[1]"/>
+    <eval expected="† Footnote from the table-footer" xpath="//pageSequence[3]/pageViewport[4]//footnote/block"/>
 
-    <eval expected="2"                           xpath="count(//pageSequence[4]/pageViewport)"/>
-    <eval expected="1"                           xpath="count(//pageSequence[4]/pageViewport[1]//footnote/block)"/>
-    <eval expected="* Footnote from the table-header." xpath="//pageSequence[4]/pageViewport[1]//footnote/block[1]"/>
-    <eval expected="Cell 7.1"                          xpath="//pageSequence[4]/pageViewport[2]//flow/block[1]/block[1]"/>
-    <eval expected="1"                           xpath="count(//pageSequence[4]/pageViewport[2]//footnote/block)"/>
-    <eval expected="† Footnote from the table-footer." xpath="//pageSequence[4]/pageViewport[2]//footnote/block[1]"/>
+    <eval expected="1"                          xpath="count(//pageSequence[4]/pageViewport)"/>
+    <eval expected="3"                          xpath="count(//pageSequence[4]//footnote/block)"/>
+    <eval expected="* Footnote before the table"      xpath="//pageSequence[4]//footnote/block[1]"/>
+    <eval expected="¹ Footnote from cell 2.1"         xpath="//pageSequence[4]//footnote/block[2]"/>
+    <eval expected="† Footnote from the table-footer" xpath="//pageSequence[4]//footnote/block[3]"/>
+
+    <eval expected="4"                          xpath="count(//pageSequence[5]/pageViewport[1]//footnote/block)"/>
+    <eval expected="* Footnote before the table"      xpath="//pageSequence[5]/pageViewport[1]//footnote/block[1]"/>
+    <eval expected="† Footnote from the table-header" xpath="//pageSequence[5]/pageViewport[1]//footnote/block[2]"/>
+    <eval expected="¹ Footnote from cell 1.1"         xpath="//pageSequence[5]/pageViewport[1]//footnote/block[3]"/>
+    <eval expected="‡ Footnote from the table-footer" xpath="//pageSequence[5]/pageViewport[1]//footnote/block[4]"/>
+    <eval expected="Cell 2.1"                         xpath="//pageSequence[5]/pageViewport[2]//flow/block[1]/block[3]"/>
+    <eval expected="3"                          xpath="count(//pageSequence[5]/pageViewport[2]//footnote/block)"/>
+    <eval expected="† Footnote from the table-header" xpath="//pageSequence[5]/pageViewport[2]//footnote/block[1]"/>
+    <eval expected="² Footnote from cell 3.2"         xpath="//pageSequence[5]/pageViewport[2]//footnote/block[2]"/>
+    <eval expected="‡ Footnote from the table-footer" xpath="//pageSequence[5]/pageViewport[2]//footnote/block[3]"/>
+    <eval expected="Cell 5.1"                         xpath="//pageSequence[5]/pageViewport[3]//flow/block[1]/block[3]"/>
+    <eval expected="2"                          xpath="count(//pageSequence[5]/pageViewport[3]//footnote/block)"/>
+    <eval expected="† Footnote from the table-header" xpath="//pageSequence[5]/pageViewport[3]//footnote/block[1]"/>
+    <eval expected="‡ Footnote from the table-footer" xpath="//pageSequence[5]/pageViewport[3]//footnote/block[2]"/>
+    <eval expected="Cell 9.1"                         xpath="//pageSequence[5]/pageViewport[4]//flow/block[1]/block[3]"/>
+    <eval expected="2"                          xpath="count(//pageSequence[5]/pageViewport[4]//footnote/block)"/>
+    <eval expected="† Footnote from the table-header" xpath="//pageSequence[5]/pageViewport[4]//footnote/block[1]"/>
+    <eval expected="‡ Footnote from the table-footer" xpath="//pageSequence[5]/pageViewport[4]//footnote/block[2]"/>
+
+    <eval expected="1"                          xpath="count(//pageSequence[6]/pageViewport)"/>
+    <eval expected="4"                          xpath="count(//pageSequence[6]//footnote/block)"/>
+    <eval expected="* Footnote before the table"      xpath="//pageSequence[6]//footnote/block[1]"/>
+    <eval expected="† Footnote from the table-header" xpath="//pageSequence[6]//footnote/block[2]"/>
+    <eval expected="¹ Footnote from cell 1.1"         xpath="//pageSequence[6]//footnote/block[3]"/>
+    <eval expected="‡ Footnote from the table-footer" xpath="//pageSequence[6]//footnote/block[4]"/>
+
+    <eval expected="3"                          xpath="count(//pageSequence[7]/pageViewport[1]//footnote/block)"/>
+    <eval expected="* Footnote before the table"      xpath="//pageSequence[7]/pageViewport[1]//footnote/block[1]"/>
+    <eval expected="† Footnote from the table-header" xpath="//pageSequence[7]/pageViewport[1]//footnote/block[2]"/>
+    <eval expected="¹ Footnote from cell 1.1"         xpath="//pageSequence[7]/pageViewport[1]//footnote/block[3]"/>
+    <eval expected="2"                          xpath="count(//pageSequence[7]/pageViewport[2]//footnote/block)"/>
+    <eval expected="‡ Footnote from the table-footer" xpath="//pageSequence[7]/pageViewport[2]//footnote/block[1]"/>
+    <eval expected="** Footnote after the table"      xpath="//pageSequence[7]/pageViewport[2]//footnote/block[2]"/>
+
+    <eval expected="4"                           xpath="count(//pageSequence[8]/pageViewport[1]//footnote/block)"/>
+    <eval expected="oh Footnote from the outer header" xpath="//pageSequence[8]/pageViewport[1]//footnote/block[1]"/>
+    <eval expected="ih Footnote from the inner header" xpath="//pageSequence[8]/pageViewport[1]//footnote/block[2]"/>
+    <eval expected="¹ Footnote from inner 1.1"         xpath="//pageSequence[8]/pageViewport[1]//footnote/block[3]"/>
+    <eval expected="if Footnote from the inner footer" xpath="//pageSequence[8]/pageViewport[1]//footnote/block[4]"/>
+    <eval expected="Inner 6.1"                         xpath="//pageSequence[8]/pageViewport[2]//flow/block[1]/block[2]/block/block[3]"/>
+    <eval expected="3"                           xpath="count(//pageSequence[8]/pageViewport[2]//footnote/block)"/>
+    <eval expected="oh Footnote from the outer header" xpath="//pageSequence[8]/pageViewport[2]//footnote/block[1]"/>
+    <eval expected="ih Footnote from the inner header" xpath="//pageSequence[8]/pageViewport[2]//footnote/block[2]"/>
+    <eval expected="if Footnote from the inner footer" xpath="//pageSequence[8]/pageViewport[2]//footnote/block[3]"/>
+    <eval expected="Inner 13.1"                        xpath="//pageSequence[8]/pageViewport[3]//flow/block[1]/block[2]/block/block[3]"/>
+    <eval expected="3"                           xpath="count(//pageSequence[8]/pageViewport[3]//footnote/block)"/>
+    <eval expected="oh Footnote from the outer header" xpath="//pageSequence[8]/pageViewport[3]//footnote/block[1]"/>
+    <eval expected="ih Footnote from the inner header" xpath="//pageSequence[8]/pageViewport[3]//footnote/block[2]"/>
+    <eval expected="if Footnote from the inner footer" xpath="//pageSequence[8]/pageViewport[3]//footnote/block[3]"/>
   </checks>
 </testcase>
