<?xml version="1.0" standalone="no"?>
<!--
  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$ -->
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"
  xmlns:fox="http://xmlgraphics.apache.org/fop/extensions">
  <fo:layout-master-set>
    <fo:simple-page-master master-name="page"
      page-height="220pt" page-width="320pt" margin="10pt">
      <fo:region-body column-count="2" margin-top="15pt"/>
      <fo:region-before extent="12pt"/>
    </fo:simple-page-master>
  </fo:layout-master-set>
  <fo:page-sequence master-reference="page" language="en" country="GB">
    <fo:static-content flow-name="xsl-region-before">
      <fo:block font-size="8pt" text-align-last="justify">This is the page header<fo:leader/>Page 
        <fo:page-number/></fo:block>
    </fo:static-content>
    <fo:static-content flow-name="xsl-footnote-separator">
      <fo:block><fo:leader leader-length="100pt" leader-pattern="rule"/></fo:block>
    </fo:static-content>
    <fo:flow flow-name="xsl-region-body" hyphenate="true" text-align="justify">
      <fo:block>(There’s another page sequence <fo:wrapper color="blue"><fo:basic-link 
            internal-destination="second">below</fo:basic-link></fo:wrapper>.)</fo:block>
      <fo:block>Apache FOP (Formatting Objects Processor) is a print formatter driven by XSL 
        formatting objects (XSL-FO) and an output independent formatter<fo:footnote><fo:inline 
            baseline-shift="super" font-size="70%">1</fo:inline><fo:footnote-body><fo:block>See the 
              <fo:wrapper color="blue"><fo:basic-link 
                  external-destination="http://xmlgraphics.apache.org/fop/">FOP 
                  website</fo:basic-link></fo:wrapper> for more 
              information</fo:block></fo:footnote-body></fo:footnote>. FOP has a nice logo: 
        <fo:external-graphic src="../resources/images/fop-logo-color-24bit.png" 
          inline-progression-dimension.maximum="100%" content-width="scale-to-fit"
          fox:alt-text="FOP Logo"/></fo:block>
      <fo:table space-before="10pt" space-after="10pt" width="100%" table-layout="fixed">
        <fo:table-header>
          <fo:table-row>
            <fo:table-cell border="2pt solid black" padding="2pt 2pt 0">
              <fo:block>Header 1.1</fo:block>
            </fo:table-cell>
            <fo:table-cell border="2pt solid black" padding="2pt 2pt 0">
              <fo:block>Header 1.2</fo:block>
            </fo:table-cell>
          </fo:table-row>
        </fo:table-header>
        <fo:table-body>
          <fo:table-row>
            <fo:table-cell border="1pt solid black" padding="2pt 2pt 0">
              <fo:block>Cell 1.1</fo:block>
            </fo:table-cell>
            <fo:table-cell border="1pt solid black" padding="2pt 2pt 0">
              <fo:block>Cell 1.2</fo:block>
            </fo:table-cell>
          </fo:table-row>
          <fo:table-row>
            <fo:table-cell border="1pt solid black" padding="2pt 2pt 0">
              <fo:block>Cell 2.1</fo:block>
            </fo:table-cell>
            <fo:table-cell border="1pt solid black" padding="2pt 2pt 0">
              <fo:block>Cell 2.2</fo:block>
            </fo:table-cell>
          </fo:table-row>
        </fo:table-body>
      </fo:table>
      <fo:block>Apache FOP (Formatting Objects Processor) is a print formatter driven by XSL 
        formatting objects (XSL-FO) and an output independent formatter. It is a Java application 
        that reads a formatting object (FO) tree and renders the resulting pages to a specified 
        output.</fo:block>
      <fo:block span="all" border-top="1pt solid black" border-bottom="1pt solid black" 
        padding-before="2pt" padding-after="2pt">This fo:block element spans all the columns of the 
        document. This is intended to test the abilities of the text-to-speech program.</fo:block>
      <fo:block>And now we are back to normal content flowing in two columns. Let’s start a numbered 
        list:</fo:block>
      <fo:list-block provisional-distance-between-starts="15pt" provisional-label-separation="0mm" 
        keep-with-previous="auto">
        <fo:list-item keep-with-previous="always">
          <fo:list-item-label end-indent="label-end()">
            <fo:block>1.</fo:block>
          </fo:list-item-label>
          <fo:list-item-body start-indent="body-start()">
            <fo:block>
              <fo:block>Line 1 of item 1</fo:block>
              <fo:block>Line 2 of item 1</fo:block>
              <fo:block>Line 3 of item 1</fo:block>
            </fo:block>
          </fo:list-item-body>
        </fo:list-item>
        <fo:list-item keep-with-previous="always">
          <fo:list-item-label end-indent="label-end()">
            <fo:block>2.</fo:block>
          </fo:list-item-label>
          <fo:list-item-body start-indent="body-start()">
            <fo:block>
              <fo:block>Line 1 of item 2</fo:block>
              <fo:block>Line 2 of item 2</fo:block>
              <fo:block>Line 3 of item 2</fo:block>
            </fo:block>
          </fo:list-item-body>
        </fo:list-item>
      </fo:list-block>
      <fo:block>And now we are going to see how a second page sequence is handled.</fo:block>
    </fo:flow>
  </fo:page-sequence>
  <fo:page-sequence master-reference="page" language="en" country="GB">
    <fo:static-content flow-name="xsl-region-before">
      <fo:block font-size="8pt" text-align-last="justify">This is the page header<fo:leader/>Page 
        <fo:page-number/></fo:block>
    </fo:static-content>
    <fo:static-content flow-name="xsl-footnote-separator">
      <fo:block><fo:leader leader-length="100pt" leader-pattern="rule"/></fo:block>
    </fo:static-content>
    <fo:flow flow-name="xsl-region-body" hyphenate="true" text-align="justify">
      <fo:block id="second">Apache FOP (Formatting Objects Processor) is a print formatter driven by 
        XSL formatting objects (XSL-FO) and an output independent formatter<fo:footnote><fo:inline 
            baseline-shift="super" font-size="70%">1</fo:inline><fo:footnote-body><fo:block>See the 
              <fo:wrapper color="blue"><fo:basic-link 
                  external-destination="http://xmlgraphics.apache.org/fop/">FOP 
                  website</fo:basic-link></fo:wrapper> for more 
              information</fo:block></fo:footnote-body></fo:footnote>. It is a Java application that 
        reads a formatting object (FO) tree and renders the resulting pages to a specified 
        output.</fo:block>
      <fo:table space-before="10pt" space-after="10pt" width="100%" table-layout="fixed">
        <fo:table-header>
          <fo:table-row>
            <fo:table-cell border="2pt solid black" padding="2pt 2pt 0">
              <fo:block>Header 1.1</fo:block>
            </fo:table-cell>
            <fo:table-cell border="2pt solid black" padding="2pt 2pt 0">
              <fo:block>Header 1.2</fo:block>
            </fo:table-cell>
          </fo:table-row>
        </fo:table-header>
        <fo:table-body>
          <fo:table-row>
            <fo:table-cell border="1pt solid black" padding="2pt 2pt 0">
              <fo:block>Cell 1.1</fo:block>
            </fo:table-cell>
            <fo:table-cell border="1pt solid black" padding="2pt 2pt 0">
              <fo:block>Cell 1.2</fo:block>
            </fo:table-cell>
          </fo:table-row>
          <fo:table-row>
            <fo:table-cell border="1pt solid black" padding="2pt 2pt 0">
              <fo:block>Cell 2.1</fo:block>
            </fo:table-cell>
            <fo:table-cell border="1pt solid black" padding="2pt 2pt 0">
              <fo:block>Cell 2.2</fo:block>
            </fo:table-cell>
          </fo:table-row>
        </fo:table-body>
      </fo:table>
      <fo:block language="fr" country="FR">Apache FOP (Formatting Objects Processor) est une 
        application de mise en page de documents respectant le standard XSL-FO. À partir d’un 
        document au format XSL-FO, cette application écrite en Java effectue une mise en page et 
        renvoie un document prêt pour impression.</fo:block>
      <fo:block span="all" border-top="1pt solid black" border-bottom="1pt solid black" 
        padding-before="2pt" padding-after="2pt">This fo:block element spans all the columns of the 
        document. This is intended to test the abilities of the text-to-speech program.</fo:block>
      <fo:block>And now we are back to normal content flowing in two columns. Let’s start a numbered 
        list:</fo:block>
      <fo:list-block provisional-distance-between-starts="15pt" provisional-label-separation="0mm" 
        keep-with-previous="auto">
        <fo:list-item keep-with-previous="always">
          <fo:list-item-label end-indent="label-end()">
            <fo:block>1.</fo:block>
          </fo:list-item-label>
          <fo:list-item-body start-indent="body-start()">
            <fo:block>
              <fo:block>Line 1 of item 1</fo:block>
              <fo:block>Line 2 of item 1</fo:block>
              <fo:block>Line 3 of item 1</fo:block>
            </fo:block>
          </fo:list-item-body>
        </fo:list-item>
        <fo:list-item keep-with-previous="always">
          <fo:list-item-label end-indent="label-end()">
            <fo:block>2.</fo:block>
          </fo:list-item-label>
          <fo:list-item-body start-indent="body-start()">
            <fo:block>
              <fo:block>Line 1 of item 2</fo:block>
              <fo:block>Line 2 of item 2</fo:block>
              <fo:block>Line 3 of item 2</fo:block>
            </fo:block>
          </fo:list-item-body>
        </fo:list-item>
      </fo:list-block>
      <fo:block>The end of the document has now been reached.</fo:block>
    </fo:flow>
  </fo:page-sequence>
</fo:root>
