]> source.dussan.org Git - xmlgraphics-fop.git/commitdiff
new fop examples and tests
authorfotis <fotis@unknown>
Tue, 14 Mar 2000 09:39:27 +0000 (09:39 +0000)
committerfotis <fotis@unknown>
Tue, 14 Mar 2000 09:39:27 +0000 (09:39 +0000)
fixes: page-height, page-width (Jon Smirl)

git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@193298 13f79535-47bb-0310-9956-ffa450edef68

docs/examples/fo/border.fo [new file with mode: 0644]
docs/examples/fo/extensive.fo [new file with mode: 0644]
docs/examples/fo/link.fo [new file with mode: 0644]
docs/examples/fo/list.fo [new file with mode: 0644]
docs/examples/fo/normal.fo [new file with mode: 0644]
docs/examples/fo/readme.fo [new file with mode: 0644]
docs/examples/fo/table.fo [new file with mode: 0644]

diff --git a/docs/examples/fo/border.fo b/docs/examples/fo/border.fo
new file mode 100644 (file)
index 0000000..919f291
--- /dev/null
@@ -0,0 +1,168 @@
+<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
+    <fo:layout-master-set>
+        <fo:simple-page-master margin-right="0.5cm" margin-left="0.5cm" margin-bottom="0.5cm" margin-top="0.75cm" page-width="21cm" page-height="29.7cm" page-master-name="first">
+            <fo:region-body>
+            </fo:region-body>
+        </fo:simple-page-master>
+        <fo:simple-page-master margin-right="2.5cm" margin-left="2.5cm" margin-bottom="2cm" margin-top="1cm" page-width="21cm" page-height="29.7cm" page-master-name="rest">
+            <fo:region-body>
+            </fo:region-body>
+        </fo:simple-page-master>
+    </fo:layout-master-set>
+    <fo:page-sequence>
+        <fo:sequence-specification>
+            <fo:sequence-specifier-repeating page-master-repeating="rest" page-master-first="first">
+            </fo:sequence-specifier-repeating>
+        </fo:sequence-specification>
+        <fo:flow flow-name="xsl-body">
+            <fo:block-container height="4cm" width="12cm" top="0cm" left="0cm" position="absolute">
+                <fo:block text-align="start" line-height="18pt" font-family="sans-serif" font-weight="bold" font-size="14pt">
+                                       PX7.net
+                               </fo:block>
+                <fo:block text-align="start" line-height="18pt" font-family="sans-serif" font-weight="bold" font-size="14pt">
+                                       44 Liberty St
+                               </fo:block>
+                <fo:block text-align="start" line-height="18pt" font-family="sans-serif" font-weight="bold" font-size="14pt">
+                                       Newburyport, MA 01950
+                               </fo:block>
+                <fo:block text-align="start" line-height="18pt" font-family="sans-serif" font-weight="bold" font-size="14pt">
+                                       978-462-1152    
+                               </fo:block>
+            </fo:block-container>
+            <fo:block-container height="1cm" width="6cm" top="0cm" left="14cm" position="absolute">
+                <fo:block text-align="start" space-after.optimum="3pt" line-height="22pt" font-family="sans-serif" font-size="23pt">
+                                  Sales Receipt
+                               </fo:block>
+            </fo:block-container>
+            <fo:block-container border-color="black" border-style="solid" border-width="1pt" height="0.5cm" width="2.5cm" top="1.2cm" left="14cm" padding="2pt" position="absolute">
+                <fo:block text-align="start" space-after.optimum="3pt" line-height="15pt" font-family="sans-serif" font-size="12pt">
+                                  DATE
+                               </fo:block>
+            </fo:block-container>
+            <fo:block-container border-color="black" border-style="solid" border-width="1pt" height="0.5cm" width="2.5cm" top="1.7cm" left="14cm" padding="2pt" position="absolute">
+                <fo:block text-align="start" space-after.optimum="3pt" line-height="15pt" font-family="sans-serif" font-size="10pt">
+                                       01/01/20000
+                               </fo:block>
+            </fo:block-container>
+            <fo:block-container border-color="black" border-style="solid" border-width="1pt" height="0.5cm" width="2.5cm" top="1.2cm" left="16.5cm" padding="2pt" position="absolute">
+                <fo:block text-align="start" space-after.optimum="3pt" line-height="15pt" font-family="sans-serif" font-size="12pt">
+                                       SALE #
+                               </fo:block>
+            </fo:block-container>
+            <fo:block-container border-color="black" border-style="solid" border-width="1pt" height="0.5cm" width="2.5cm" top="1.7cm" left="16.5cm" padding="2pt" position="absolute">
+                <fo:block text-align="start" space-after.optimum="3pt" line-height="15pt" font-family="sans-serif" font-size="10pt">
+                                       1
+                               </fo:block>
+            </fo:block-container>
+            <fo:block-container border-color="black" border-style="solid" border-width="1pt" height="0.5cm" width="9cm" top="3cm" left="0cm" padding="2pt" position="absolute">
+                <fo:block text-align="start" line-height="15pt" font-family="sans-serif" font-size="12pt">
+                                   SOLD TO
+                               </fo:block>
+            </fo:block-container>
+            <fo:block-container border-color="black" border-style="solid" border-width="1pt" height="3cm" width="9cm" top="3.5cm" left="0cm" padding="2pt" position="absolute">
+                <fo:block text-align="start" space-after.optimum="3pt" line-height="15pt" font-family="sans-serif" font-size="12pt">
+                </fo:block>
+            </fo:block-container>
+            <fo:block-container border-color="black" border-style="solid" border-width="1pt" height="0.5cm" width="9cm" top="3cm" left="10cm" padding="2pt" position="absolute">
+                <fo:block text-align="start" space-after.optimum="3pt" line-height="15pt" font-family="sans-serif" font-size="12pt">
+                                       SHIP TO
+                               </fo:block>
+            </fo:block-container>
+            <fo:block-container border-color="black" border-style="solid" border-width="1pt" height="3cm" width="9cm" top="3.5cm" left="10cm" padding="2pt" position="absolute">
+                <fo:block text-align="start" space-after.optimum="3pt" line-height="15pt" font-family="sans-serif" font-size="12pt">
+                </fo:block>
+            </fo:block-container>
+            <fo:block-container border-color="black" border-style="solid" border-width="1pt" height="0.5cm" width="4cm" top="7cm" left="11cm" padding="2pt" position="absolute">
+                <fo:block text-align="start" space-after.optimum="3pt" line-height="15pt" font-family="sans-serif" font-size="12pt">
+                                  PMT METHOD
+                               </fo:block>
+            </fo:block-container>
+            <fo:block-container border-color="black" border-style="solid" border-width="1pt" height="0.5cm" width="4cm" top="7.5cm" left="11cm" padding="2pt" position="absolute">
+                <fo:block text-align="start" space-after.optimum="3pt" line-height="15pt" font-family="sans-serif" font-size="10pt">
+                                       Check
+                               </fo:block>
+            </fo:block-container>
+            <fo:block-container border-color="black" border-style="solid" border-width="1pt" height="0.5cm" width="4cm" top="7cm" left="15cm" padding="2pt" position="absolute">
+                <fo:block text-align="start" space-after.optimum="3pt" line-height="15pt" font-family="sans-serif" font-size="12pt">
+                                       CHECK #
+                               </fo:block>
+            </fo:block-container>
+            <fo:block-container border-color="black" border-style="solid" border-width="1pt" height="0.5cm" width="4cm" top="7.5cm" left="15cm" padding="2pt" position="absolute">
+                <fo:block text-align="start" space-after.optimum="3pt" line-height="15pt" font-family="sans-serif" font-size="10pt">
+                                       1234
+                               </fo:block>
+            </fo:block-container>
+            <fo:block-container height="17cm" width="19cm" top="8cm" left="0cm" position="absolute">
+                <fo:table border-color="yellow" border-style="solid" border-width="1pt" height="17cm">
+                    <fo:table-column column-width="2.5cm" border-color="red" border-style="solid" border-width="1pt">
+                    </fo:table-column>
+                    <fo:table-column column-width="11.5cm" border-color="red" border-style="solid" border-width="1pt">
+                    </fo:table-column>
+                    <fo:table-column column-width="2.5cm" border-color="red" border-style="solid" border-width="1pt">
+                    </fo:table-column>
+                    <fo:table-column column-width="2.5cm" border-color="red" border-style="solid" border-width="1pt">
+                    </fo:table-column>
+                    <fo:table-body font-family="sans-serif" font-weight="normal" font-size="10pt">
+                        <fo:table-row line-height="12pt">
+                            <fo:table-cell border-width="1pt" border-color="green" border-style="solid" padding="6pt">
+                                <fo:block text-align="end">QUANTITY</fo:block>
+                            </fo:table-cell>
+                            <fo:table-cell border-width="1pt" border-color="red" border-style="solid" padding="4pt">
+                                <fo:block text-align="start">DESCRIPTION</fo:block>
+                            </fo:table-cell>
+                            <fo:table-cell border-width="1pt" border-color="blue" border-style="solid" padding="3pt">
+                                <fo:block text-align="centered">RATE</fo:block>
+                            </fo:table-cell>
+                            <fo:table-cell border-width="1pt" border-color="orange" border-style="solid" padding="2pt">
+                                <fo:block text-align="centered">AMOUNT</fo:block>
+                            </fo:table-cell>
+                        </fo:table-row>
+                        <fo:table-row line-height="12pt">
+                            <fo:table-cell padding="2pt">
+                                <fo:block text-align="end">1</fo:block>
+                            </fo:table-cell>
+                            <fo:table-cell padding="2pt">
+                                <fo:block text-align="start">Widget</fo:block>
+                            </fo:table-cell>
+                            <fo:table-cell padding="2pt">
+                                <fo:block text-align="end">$22.23</fo:block>
+                            </fo:table-cell>
+                            <fo:table-cell padding="2pt">
+                                <fo:block text-align="end">22.31</fo:block>
+                            </fo:table-cell>
+                        </fo:table-row>
+                        <fo:table-row line-height="12pt">
+                            <fo:table-cell padding="2pt">
+                                <fo:block text-align="end">3</fo:block>
+                            </fo:table-cell>
+                            <fo:table-cell padding="2pt">
+                                <fo:block text-align="start">Nuts</fo:block>
+                            </fo:table-cell>
+                            <fo:table-cell padding="2pt">
+                                <fo:block text-align="end">$12.00</fo:block>
+                            </fo:table-cell>
+                            <fo:table-cell padding="2pt">
+                                <fo:block text-align="end">36.00</fo:block>
+                            </fo:table-cell>
+                        </fo:table-row>
+                    </fo:table-body>
+                </fo:table>
+            </fo:block-container>
+            <fo:block-container border-color="black" border-style="solid" border-width="1pt" height="1cm" width="14cm" top="25cm" left="0cm" padding="2pt" position="absolute">
+                <fo:block text-align="start" space-after.optimum="3pt" line-height="15pt" font-family="sans-serif" font-size="12pt">
+                                       Please remit to the above address
+                               </fo:block>
+            </fo:block-container>
+            <fo:block-container border-color="black" border-style="solid" border-width="1pt" height="1cm" width="2.5cm" top="25cm" left="14cm" padding="2pt" position="absolute">
+                <fo:block text-align="start" space-after.optimum="3pt" line-height="25pt" font-family="sans-serif" font-size="22pt">
+                                       Total
+                               </fo:block>
+            </fo:block-container>
+            <fo:block-container border-color="black" border-style="solid" border-width="1pt" height="1cm" width="2.5cm" top="25cm" left="16.5cm" padding="2pt" position="absolute">
+                <fo:block text-align="start" space-after.optimum="3pt" line-height="15pt" font-family="sans-serif" font-size="10pt">
+                                       $3.00
+                               </fo:block>
+            </fo:block-container>
+        </fo:flow>
+    </fo:page-sequence>
+</fo:root>
diff --git a/docs/examples/fo/extensive.fo b/docs/examples/fo/extensive.fo
new file mode 100644 (file)
index 0000000..5647fe7
--- /dev/null
@@ -0,0 +1,148 @@
+<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:svg="http://www.w3.org/Graphics/SVG/SVG-19990812.dtd">
+<fo:layout-master-set>
+<fo:simple-page-master page-master-name="one">
+<fo:region-body margin-top="50pt" margin-bottom="50pt" margin-left="100pt" margin-right="100pt"/>
+</fo:simple-page-master>
+</fo:layout-master-set>
+<fo:page-sequence>
+<fo:sequence-specification>
+<fo:sequence-specifier-repeating page-master-first="one" page-master-repeating="one"/>
+</fo:sequence-specification>
+<fo:flow>
+<fo:block>A Block</fo:block>
+<fo:block text-align="end">An End Aligned Block</fo:block>
+<fo:block text-align="centered">A Centered Block</fo:block>
+<fo:block>This is a multiple line block that extends over more than one line. There should be appropriate line breaks. Alignment is default.</fo:block>
+<fo:block text-align="end">This is a multiple line block that extends over more than one line. There should be appropriate line breaks. Alignment is end.</fo:block>
+<fo:block text-align="centered">This is a multiple line block that extends over more than one line. There should be appropriate line breaks. Alignment is centered.</fo:block>
+<fo:block text-align="justified">This is a multiple line block that extends over more than one line. There should be appropriate line breaks. I'm going to keep going so I can get three lines to check how all but the last justify. There, that should do it. Alignment is justified.</fo:block>
+<fo:block>A block for comparison</fo:block>
+<fo:block space-before.optimum="12pt">A block with 12pt space-before</fo:block>
+<fo:block>A block for comparison</fo:block>
+<fo:block space-after.optimum="12pt">A block with 12pt space-after</fo:block>
+<fo:block>A block for comparison</fo:block>
+<fo:block space-before.optimum="12pt" space-after.optimum="12pt">A block with both 12pt space-before and space-after</fo:block>
+<fo:block>A block for comparison</fo:block>
+<fo:block start-indent="50pt">This is a multiple line block that extends over more than one line. There should be appropriate line breaks. There is a start-indent of 50pt.</fo:block>
+<fo:block end-indent="50pt">This is a multiple line block that extends over more than one line. There should be appropriate line breaks. There is an end-indent of 50pt.</fo:block>
+<fo:block start-indent="50pt" end-indent="50pt">This is a multiple line block that extends over more than one line. There should be appropriate line breaks. There is a start-indent and end-indent of 50pt.</fo:block>
+<fo:block font-size="15pt">This is a multiple line block that extends over more than one line. There should be appropriate line breaks. The font-size is set to 15pt.</fo:block>
+<fo:block line-height="20pt">This is a multiple line block that extends over more than one line. There should be appropriate line breaks. The line-height is set to 20pt.</fo:block>
+<fo:block font-size="15pt" line-height="20pt">This is a multiple line block that extends over more than one line. There should be appropriate line breaks. The font-size is set to 15pt and the line-height is set to 20pt.</fo:block>
+<fo:block font-size="15pt" line-height="15pt">This is a multiple line block that extends over more than one line. There should be appropriate line breaks. The font-size is set to 15pt and the line-height is set to 15pt.</fo:block>
+<fo:block space-before.optimum="12pt" space-after.optimum="12pt"><fo:block space-before.optimum="12pt" space-after.optimum="12pt">A block within a block</fo:block></fo:block>
+<fo:block space-before.optimum="12pt" space-after.optimum="12pt">Text before<fo:block space-before.optimum="12pt" space-after.optimum="12pt">A block within a block</fo:block>Text after</fo:block>
+<fo:block space-before.optimum="12pt" space-after.optimum="12pt" start-indent="50pt">Text before<fo:block space-before.optimum="12pt" space-after.optimum="12pt">A block within a block with 50pt start-intent</fo:block>Text after</fo:block>
+<fo:block space-before.optimum="12pt" space-after.optimum="12pt" start-indent="50pt">And again for the page break, text before<fo:block space-before.optimum="12pt" space-after.optimum="12pt">A block within a block with 50pt start-intent</fo:block>Text after</fo:block>
+<fo:block space-before.optimum="12pt" space-after.optimum="12pt" start-indent="50pt">Text before<fo:block space-before.optimum="12pt" space-after.optimum="12pt">A block with 50pt start-indent within a block with 50pt start-intent</fo:block>Text after</fo:block>
+<fo:block space-before.optimum="12pt" space-after.optimum="12pt" start-indent="50pt">Text before<fo:block space-before.optimum="12pt" space-after.optimum="12pt" start-indent="100pt">A block with 100pt start-indent within a block with 50pt start-intent</fo:block>Text after</fo:block>
+<fo:list-block provisional-distance-between-starts="12pt" space-before.optimum="12pt" text-align="justified">
+<fo:list-item>
+<fo:list-item-label><fo:block>&#x2022;</fo:block></fo:list-item-label>
+<fo:list-item-body><fo:block>This is a multiple line block that extends over more than one line. There should be appropriate line breaks.</fo:block></fo:list-item-body>
+</fo:list-item>
+<fo:list-item>
+<fo:list-item-label><fo:block>&#x2022;</fo:block></fo:list-item-label>
+<fo:list-item-body><fo:block>This is a multiple line block that extends over more than one line. There should be appropriate line breaks.</fo:block><fo:block>This is a multiple line block that extends over more than one line. There should be appropriate line breaks.</fo:block><fo:block>This is a multiple line block that extends over more than one line. There should be appropriate line breaks.</fo:block></fo:list-item-body>
+</fo:list-item>
+</fo:list-block>
+<fo:list-block start-indent="50pt" provisional-distance-between-starts="12pt" space-before.optimum="12pt" text-align="justified">
+<fo:list-item>
+<fo:list-item-label><fo:block>&#x2022;</fo:block></fo:list-item-label>
+<fo:list-item-body><fo:block>This is a multiple line block that extends over more than one line. There should be appropriate line breaks. The list-block has a start-indent of 50pt and a text-align of justified.</fo:block></fo:list-item-body>
+</fo:list-item>
+<fo:list-item>
+<fo:list-item-label><fo:block>&#x2022;</fo:block></fo:list-item-label>
+<fo:list-item-body><fo:block>This is a multiple line block that extends over more than one line. There should be appropriate line breaks.</fo:block><fo:block>This is a second multiple line block that extends over more than one line. There should be appropriate line breaks.</fo:block><fo:block>This is a third multiple line block that extends over more than one line. There should be appropriate line breaks.</fo:block></fo:list-item-body>
+</fo:list-item>
+</fo:list-block>
+<fo:list-block provisional-distance-between-starts="12pt" space-before.optimum="12pt" text-align="justified">
+<fo:list-item>
+<fo:list-item-label><fo:block>&#x2022;</fo:block></fo:list-item-label>
+<fo:list-item-body><fo:block>This is a multiple line block that extends over more than one line. There should be appropriate line breaks.</fo:block><fo:block start-indent="100pt">This is a multiple line block with start-indent 100pt that extends over more than one line. There should be appropriate line breaks.</fo:block><fo:block>This is a multiple line block that extends over more than one line. There should be appropriate line breaks.</fo:block></fo:list-item-body>
+</fo:list-item>
+<fo:list-item>
+<fo:list-item-label><fo:block>&#x2022;</fo:block></fo:list-item-label>
+<fo:list-item-body><fo:block>This is a multiple line block that extends over more than one line. There should be appropriate line breaks.<fo:block>This is an embedded multiple line block that extends over more than one line. There should be appropriate line breaks.</fo:block>This is a multiple line block that extends over more than one line. There should be appropriate line breaks.</fo:block></fo:list-item-body>
+</fo:list-item>
+</fo:list-block>
+      <fo:list-block provisional-distance-between-starts="12pt" space-before.optimum="12pt">
+        <fo:list-item>
+          <fo:list-item-label><fo:block>&#x2022;</fo:block></fo:list-item-label>
+          <fo:list-item-body><fo:block>A block in a list-item-body</fo:block></fo:list-item-body>
+        </fo:list-item>
+        <fo:list-item>
+          <fo:list-item-label><fo:block>&#x2022;</fo:block></fo:list-item-label>
+          <fo:list-item-body>
+            <fo:list-block provisional-distance-between-starts="12pt">
+              <fo:list-item>
+                <fo:list-item-label><fo:block>&#x2022;</fo:block></fo:list-item-label>
+                <fo:list-item-body><fo:block>This is a list item in a list that is itself a list item</fo:block></fo:list-item-body>
+              </fo:list-item>
+            </fo:list-block>
+          </fo:list-item-body>
+        </fo:list-item>
+      </fo:list-block>
+      <fo:block break-before="page" font-size="24pt" line-height="28pt" space-before.optimum="12pt" space-after.optimum="12pt">Next Stage</fo:block>
+      <fo:block>Right, now we are ready to try some newly implemented things like rules. What follows is a display rule of default thickness 1pt and a space-before and space-after of 12pt.</fo:block>
+      <fo:display-rule space-before.optimum="12pt" space-after.optimum="12pt"/>
+      <fo:block>Now what follows is a display-rule of thickness 5pt with start-indent of 100pt (same space-before/after as before).</fo:block>
+      <fo:display-rule space-before.optimum="12pt" space-after.optimum="12pt" rule-thickness="5pt" start-indent="100pt"/>
+      <fo:block font-size="24pt" line-height="28pt" space-before.optimum="12pt" space-after.optimum="12pt"
+      ><fo:inline-sequence color="#500">C</fo:inline-sequence
+      ><fo:inline-sequence color="#700">o</fo:inline-sequence
+      ><fo:inline-sequence color="#900">l</fo:inline-sequence
+      ><fo:inline-sequence color="#B00">o</fo:inline-sequence
+      ><fo:inline-sequence color="#D00">u</fo:inline-sequence
+      ><fo:inline-sequence color="#F00">r</fo:inline-sequence
+      ></fo:block>
+      <fo:block color="black">black</fo:block>
+      <fo:block color="green">green</fo:block>
+      <fo:block color="silver">silver</fo:block>
+      <fo:block color="lime">lime</fo:block>
+      <fo:block color="gray">gray</fo:block>
+      <fo:block color="olive">olive</fo:block>
+      <fo:block color="white">white</fo:block>
+      <fo:block color="yellow">yellow</fo:block>
+      <fo:block color="maroon">maroon</fo:block>
+      <fo:block color="navy">navy</fo:block>
+      <fo:block color="red">red</fo:block>
+      <fo:block color="blue">blue</fo:block>
+      <fo:block color="purple">purple</fo:block>
+      <fo:block color="teal">teal</fo:block>
+      <fo:block color="fuchsia">fuchsia</fo:block>
+      <fo:block color="aqua">aqua</fo:block>
+      <fo:block break-before="even-page" font-size="24pt" line-height="28pt" space-before.optimum="12pt" space-after.optimum="12pt">Wrap</fo:block>
+      <fo:block space-before.optimum="12pt">This is a rather long sentence that is going to keep on going and going, not really to demonstrate anything other that normal wrapping because the following paragraph will show what happens when wrap-option is set to no-wrap.</fo:block>
+      <fo:block space-before.optimum="12pt" wrap-option="no-wrap">This is a rather long sentence that is going to keep on going and going to demonstrate what happens when wrap-option is set to no-wrap which is unlike the preceding sentence where it defaults to wrap.</fo:block>
+      <fo:block space-before.optimum="12pt" wrap-option="wrap">This is a rather long sentence that is going to keep on going and going, not really to demonstrate anything other that normal wrapping but it differs from the first of these three sentences in that wrap is set explicitly.</fo:block>
+      <fo:block font-size="24pt" line-height="28pt" space-before.optimum="12pt" space-after.optimum="12pt">White Space Treatment</fo:block>
+<fo:block>This            is            default!</fo:block>
+<fo:block white-space-treatment="preserve">This            is            preserve!</fo:block>
+<fo:block white-space-treatment="collapse">This            is            collapse!</fo:block>
+<fo:block white-space-treatment="ignore">This            is            ignore!</fo:block>
+<fo:block font-family="monospace" white-space-treatment="preserve">
+<![CDATA[
+<?xml version="1.0"?>
+<document>
+    <heading>This is a heading</heading>
+    <list>
+        <item>Item one</item>
+        <item>Item two</item>
+    </list>
+</document>
+]]>
+</fo:block>
+      <fo:block break-before="page" font-size="24pt" line-height="28pt" space-before.optimum="12pt" space-after.optimum="12pt">Embedded SVG</fo:block>
+      <svg:svg width="400pt" height="200pt">
+        <svg:rect x="20pt" y="20pt" width="100pt" height="100pt"/>
+        <svg:line x1="20pt" y1="20pt" x2="120pt" y2="120pt"/>
+        <svg:line x1="120pt" y1="20pt" x2="20pt" y2="120pt"/>
+        <svg:text x="20pt" y="150pt">Hello SVG!</svg:text>
+      </svg:svg>
+      <fo:block>The above is an example of an SVG graphic</fo:block>
+    </fo:flow>
+  </fo:page-sequence>
+</fo:root>
+
+
diff --git a/docs/examples/fo/link.fo b/docs/examples/fo/link.fo
new file mode 100644 (file)
index 0000000..5a15050
--- /dev/null
@@ -0,0 +1,123 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
+
+  <!-- defines page layout -->
+  <fo:layout-master-set>
+    <fo:simple-page-master page-master-name="first" 
+                           page-height="29.7cm" page-width="21cm" 
+                           margin-top="1cm" 
+                           margin-bottom="2cm" 
+                           margin-left="2.5cm" 
+                           margin-right="2.5cm">
+      <fo:region-before extent="3cm"/>
+      <fo:region-body margin-top="3cm"/>
+      <fo:region-after extent="1.5cm"/>
+    </fo:simple-page-master>
+  </fo:layout-master-set>
+  <!-- end: defines page layout -->
+
+  <!-- actual layout -->
+  <fo:page-sequence>
+
+    <!-- applies layout master -->
+    <fo:sequence-specification>
+      <fo:sequence-specifier-single page-master-name="first"/>
+    </fo:sequence-specification>
+
+    <!-- text body -->
+    <fo:flow flow-name="xsl-body">
+
+      <!-- Normal text -->
+      <fo:block text-align="centered">1. <fo:simple-link external-destination="normal.pdf">normal.pdf</fo:simple-link>
+      </fo:block>
+
+      <!-- Normal text -->
+      <fo:block text-align="centered">---</fo:block>
+
+      <!-- Normal text -->
+      <fo:block text-align="centered">
+        2. A one line example (text-align='start'): <fo:simple-link external-destination="normal.pdf">normal.pdf</fo:simple-link>
+      </fo:block>
+
+      <!-- Normal text -->
+      <fo:block text-align="centered">---</fo:block>
+
+      <!-- Normal text -->
+      <fo:block text-align="start">
+        3. A multiline text (text-align='start'). The Extensible Markup Language (XML) is a subset of SGML that is completely described in this document. Its goal is to
+        enable generic SGML to be served, received, and processed on the Web in the way that is now possible with HTML. XML
+        has been designed for ease of implementation and for interoperability with both SGML and HTML. For further information 
+        go to <fo:simple-link external-destination="normal.pdf">normal.pdf</fo:simple-link>
+      </fo:block>
+
+      <!-- Normal text -->
+      <fo:block text-align="centered">---</fo:block>
+
+      <!-- Normal text -->
+      <fo:block text-align="centered">
+        4. A multiline text (text-align='centered'). The Extensible Markup Language (XML) is a subset of SGML that is completely described in this document. Its goal is to
+        enable generic SGML to be served, received, and processed on the Web in the way that is now possible with HTML. XML
+        has been designed for ease of implementation and for interoperability with both SGML and HTML. For further information 
+        go to <fo:simple-link external-destination="normal.pdf">normal.pdf</fo:simple-link>
+      </fo:block>
+
+      <!-- Normal text -->
+      <fo:block text-align="centered">---</fo:block>
+
+      <!-- Normal text -->
+      <fo:block text-align="end">
+        5. A multiline text (text-align='end'). The Extensible Markup Language (XML) is a subset of SGML that is completely described in this document. Its goal is to
+        enable generic SGML to be served, received, and processed on the Web in the way that is now possible with HTML. XML
+        has been designed for ease of implementation and for interoperability with both SGML and HTML. For further information 
+        go to <fo:simple-link external-destination="normal.pdf">normal.pdf</fo:simple-link>
+      </fo:block>
+
+      <!-- Normal text -->
+      <fo:block text-align="centered">---</fo:block>
+
+      <!-- Normal text -->
+      <fo:block text-align="start"
+                space-before.optimum="6pt" 
+                line-height="24pt"
+                font-family="serif"
+                padding-top="3pt"
+                >
+        6. A multiline text (text-align='start', space-before.optimum=6pt, font-family=serif padding-top="3pt"). The Extensible Markup Language (XML) is a subset of SGML that is completely described in this document. Its goal is to
+        enable <fo:simple-link external-destination="normal.pdf">generic</fo:simple-link> SGML to be served, received, and processed on the Web in the way that is now possible with HTML. XML
+        has been designed for ease of implementation and for interoperability with both SGML and HTML. For further information 
+        go to <fo:simple-link external-destination="normal.pdf">normal.pdf</fo:simple-link>
+      </fo:block>
+
+      <!-- Normal text -->
+      <fo:block text-align="start"
+                space-before.optimum="6pt" 
+                line-height="24pt"
+                font-family="serif"
+                padding-top="3pt"
+                >
+        7. A multiline text (text-align='start', space-before.optimum=6pt, font-family=serif, padding-top="3pt"). The Extensible Markup Language (XML) is a subset of SGML that is completely described in this document. Its goal is to
+        enable <fo:simple-link external-destination="normal.pdf">generic</fo:simple-link> SGML to be served, received, and processed on the Web in the way that is now possible with HTML. XML
+        has been designed for ease of implementation and for interoperability with both SGML and HTML. For further information 
+        go to <fo:simple-link external-destination="normal.pdf">normal.pdf</fo:simple-link>
+      </fo:block>
+
+
+      <!-- Normal text -->
+<!--      <fo:block text-align="start"
+                space-before.optimum="6pt" 
+                line-height="24pt"
+                font-family="serif"
+                padding-top="3pt"
+                >
+        8. A multiline text (text-align='start', space-before.optimum=6pt, font-family=serif, padding-top="3pt"). The Extensible Markup Language (XML) is a subset of SGML that is completely described in this document. Its goal is to
+        enable <fo:simple-link external-destination="normal.pdf">generic</fo:simple-link> SGML to be served, received, and processed on the Web in the way that is now possible with HTML. XML
+        has been designed for ease of implementation and for interoperability with both SGML and HTML. For further information 
+        go to <fo:simple-link external-destination="normal.pdf">normal.pdf</fo:simple-link>
+      </fo:block>
+-->
+
+
+    </fo:flow>
+  </fo:page-sequence>
+</fo:root>
diff --git a/docs/examples/fo/list.fo b/docs/examples/fo/list.fo
new file mode 100644 (file)
index 0000000..56d1e22
--- /dev/null
@@ -0,0 +1,135 @@
+<?xml version="1.0" encoding="utf-8"?>
+<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
+
+  <!-- defines the layout master -->
+  <fo:layout-master-set>
+    <fo:simple-page-master page-master-name="first" 
+                           page-height="29.7cm" page-width="21cm" 
+                           margin-top="1cm" 
+                           margin-bottom="2cm" 
+                           margin-left="2.5cm" 
+                           margin-right="2.5cm">
+      <fo:region-before extent="3cm"/>
+      <fo:region-body margin-top="3cm"/>
+      <fo:region-after extent="1.5cm"/>
+    </fo:simple-page-master>
+  </fo:layout-master-set>
+
+  <!-- starts actual layout -->
+  <fo:page-sequence>
+
+    <!-- applies layout master -->
+    <fo:sequence-specification>
+      <fo:sequence-specifier-single page-master-name="first"/>
+    </fo:sequence-specification>
+
+  <!-- Inserts a header with the page number -->
+  <fo:static-content flow-name="xsl-before">
+    <fo:block text-align="end" font-size="10pt" font-family="serif" line-height="14pt">
+          XSL-FO Example: simple list - p. <fo:page-number/>
+    </fo:block>
+  </fo:static-content>
+
+  <fo:flow flow-name="xsl-body">
+
+      <!-- title -->
+      <fo:block font-size="14pt" 
+                font-family="sans-serif" 
+                line-height="18pt" 
+                space-before.optimum="3pt" 
+                space-after.optimum="3pt" 
+                font-weight="bold" 
+                start-indent="15pt">
+          Validity Constraint: Standalone Document Declaration
+      </fo:block>
+
+      <!-- normal text -->
+      <fo:block font-size="12pt" 
+                font-family="sans-serif" 
+                line-height="15pt" 
+                space-after.optimum="3pt" >
+          The standalone document declaration must have the value "no" if 
+          any external markup declarations contain declarations of:
+      </fo:block>
+
+      <!-- list -->
+      <fo:list-block>
+        
+        <!-- list item -->
+        <fo:list-item>
+          <!-- insert a bullet -->
+          <fo:list-item-label>
+            <fo:block>&#x2022;</fo:block>
+          </fo:list-item-label>
+          <!-- list text --> 
+          <fo:list-item-body>
+            <fo:block>
+              attributes with default values, if elements to which these attributes apply appear in the document without specifications of values for these attributes, or 
+            </fo:block>
+          </fo:list-item-body>
+        </fo:list-item>
+
+        <!-- list item -->
+        <fo:list-item>
+          <!-- insert a bullet -->
+          <fo:list-item-label>
+            <fo:block>&#x2022;</fo:block>
+          </fo:list-item-label>
+          <!-- list text --> 
+          <fo:list-item-body>
+            <fo:block>
+              entities (other than amp, lt, gt, apos, quot), if references to those entities appear in the document, or 
+            </fo:block>
+          </fo:list-item-body>
+        </fo:list-item>
+
+        <!-- list entry -->
+        <fo:list-item>
+          <!-- insert a bullet -->
+          <fo:list-item-label>
+            <fo:block>&#x2022;</fo:block>
+          </fo:list-item-label>
+          <!-- list text --> 
+          <fo:list-item-body>
+            <fo:block>
+              attributes with values subject to normalization, where the attribute appears in the document with a value which will
+            </fo:block>
+          </fo:list-item-body>
+        </fo:list-item>
+
+        <!-- list entry -->
+        <fo:list-item>
+          <!-- insert a bullet -->
+          <fo:list-item-label>
+            <fo:block>&#x2022;</fo:block>
+          </fo:list-item-label>
+          <!-- list text --> 
+          <fo:list-item-body>
+            <fo:block>
+              change as a result of normalization, or 
+            </fo:block>
+          </fo:list-item-body>
+        </fo:list-item>
+
+        <!-- list entry -->
+        <fo:list-item>
+          <!-- insert a bullet -->
+          <fo:list-item-label>
+            <fo:block>&#x2022;</fo:block>
+          </fo:list-item-label>
+          <!-- list text --> 
+          <fo:list-item-body>
+            <fo:block>
+              element types with element content, if white space occurs directly within any instance of those types. 
+            </fo:block>
+          </fo:list-item-body>
+        </fo:list-item>
+
+      </fo:list-block>
+      <!-- end list -->
+
+    </fo:flow>
+  </fo:page-sequence>
+</fo:root>
+
+
diff --git a/docs/examples/fo/normal.fo b/docs/examples/fo/normal.fo
new file mode 100644 (file)
index 0000000..4a078ec
--- /dev/null
@@ -0,0 +1,128 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
+
+  <!-- defines page layout -->
+  <fo:layout-master-set>
+
+    <!-- layout for the first page -->
+    <fo:simple-page-master page-master-name="first"
+                  page-height="29.7cm" 
+                  page-width="21cm"
+                  margin-top="1cm" 
+                  margin-bottom="2cm" 
+                  margin-left="2.5cm" 
+                  margin-right="2.5cm">
+      <fo:region-before extent="3cm"/>
+      <fo:region-body margin-top="3cm"/>
+      <fo:region-after extent="1.5cm"/>
+    </fo:simple-page-master>
+
+    <!-- layout for the other pages -->
+    <fo:simple-page-master page-master-name="rest"
+                  height="29.7cm" 
+                  width="21cm"
+                  margin-top="1cm" 
+                  margin-bottom="2cm" 
+                  margin-left="2.5cm" 
+                  margin-right="2.5cm">
+      <fo:region-before extent="2.5cm"/>
+      <fo:region-body margin-top="2.5cm"/>
+      <fo:region-after extent="1.5cm"/>
+    </fo:simple-page-master>
+
+  </fo:layout-master-set>
+  <!-- end: defines page layout -->
+
+  <!-- actual layout -->
+  <fo:page-sequence>
+
+    <!-- usage of page layout -->
+    <fo:sequence-specification>
+      <fo:sequence-specifier-repeating page-master-first="first" 
+                                       page-master-repeating="rest"/>
+    </fo:sequence-specification>
+
+    <!-- header -->
+    <fo:static-content flow-name="xsl-before">
+      <fo:block text-align="end" 
+            font-size="10pt" 
+            font-family="serif" 
+            line-height="14pt" >
+        XML Recommendation - p. <fo:page-number/>
+      </fo:block>
+    </fo:static-content> 
+
+    <fo:flow flow-name="xsl-body">
+
+      <!-- defines text title level 1-->
+      <fo:block font-size="18pt" 
+            font-family="sans-serif" 
+            line-height="24pt"
+            space-after.optimum="15pt"
+            background-color="blue"
+            color="white"
+            text-align="centered"
+            padding-top="3pt">
+        Extensible Markup Language (XML) 1.0
+      </fo:block>
+
+      <!-- defines text title level 2-->
+      <fo:block font-size="16pt" 
+            font-family="sans-serif" 
+            line-height="20pt"
+            space-before.optimum="10pt"
+            space-after.optimum="10pt"
+            text-align="start"
+            padding-top="3pt">
+        Abstract
+      </fo:block>
+
+      <!-- Normal text -->
+      <fo:block font-size="12pt" 
+                font-family="sans-serif" 
+                line-height="15pt"
+                space-after.optimum="3pt"
+                text-align="start">
+        The Extensible Markup Language (XML) is a subset of SGML that is completely described in this document. Its goal is to
+        enable generic SGML to be served, received, and processed on the Web in the way that is now possible with HTML. XML
+        has been designed for ease of implementation and for interoperability with both SGML and HTML.
+      </fo:block>
+
+      <!-- defines text title level 2-->
+      <fo:block font-size="16pt" 
+            font-family="sans-serif" 
+            line-height="20pt"
+            space-before.optimum="10pt"
+            space-after.optimum="10pt"
+            text-align="start"
+            padding-top="3pt">
+        Status of this document
+      </fo:block>
+
+      <!-- Normal text -->
+      <fo:block font-size="12pt" 
+                font-family="sans-serif" 
+                line-height="15pt"
+                space-after.optimum="3pt"
+                text-align="start">
+        This document has been reviewed by W3C Members and other interested parties and has been endorsed by the Director as a
+        W3C Recommendation. It is a stable document and may be used as reference material or cited as a normative reference from
+        another document. W3C's role in making the Recommendation is to draw attention to the specification and to promote its
+        widespread deployment. This enhances the functionality and interoperability of the Web.
+      </fo:block>
+
+      <!-- Normal text -->
+      <fo:block font-size="12pt" 
+                font-family="sans-serif" 
+                line-height="15pt"
+                space-after.optimum="3pt"
+                text-align="start">
+        This document specifies a syntax created by subsetting an existing, widely used international text processing standard
+        (Standard Generalized Markup Language, ISO 8879:1986(E) as amended and corrected) for use on the World Wide Web. It
+        is a product of the W3C XML Activity, details of which can be found at http://www.w3.org/XML. A list of current W3C
+        Recommendations and other technical documents can be found at http://www.w3.org/TR. 
+      </fo:block>
+    </fo:flow>
+  </fo:page-sequence>
+</fo:root>
diff --git a/docs/examples/fo/readme.fo b/docs/examples/fo/readme.fo
new file mode 100644 (file)
index 0000000..4d2537f
--- /dev/null
@@ -0,0 +1,1281 @@
+<?xml version="1.0" encoding="utf-8"?>
+<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
+<fo:layout-master-set>
+<fo:simple-page-master page-master-name="first" height="29.7cm" width="21cm" margin-top="1cm" margin-bottom="2cm" margin-left="2.5cm" margin-right="2.5cm">
+<fo:region-before extent="3cm"/>
+<fo:region-body margin-top="3cm"/>
+<fo:region-after extent="1.5cm"/>
+</fo:simple-page-master>
+<fo:simple-page-master page-master-name="rest" height="29.7cm" width="21cm" margin-top="1cm" margin-bottom="2cm" margin-left="2.5cm" margin-right="2.5cm">
+<fo:region-before extent="2.5cm"/>
+<fo:region-body margin-top="2.5cm"/>
+<fo:region-after extent="1.5cm"/>
+</fo:simple-page-master>
+</fo:layout-master-set>
+<fo:page-sequence>
+<fo:sequence-specification>
+<fo:sequence-specifier-repeating page-master-first="first" page-master-repeating="rest"/>
+</fo:sequence-specification>
+<fo:static-content flow-name="xsl-before">
+<fo:block text-align="end" font-size="10pt" font-family="serif" line-height="14pt">
+                                       FOP - p. <fo:page-number/>
+</fo:block>
+</fo:static-content>
+<fo:flow flow-name="xsl-body">
+
+
+
+<fo:block font-size="18pt" font-family="sans-serif" line-height="24pt" space-after.optimum="15pt" background-color="blue" color="white" text-align="centered" padding-top="3pt">FOP: An Open-Source XSL Formatter and Renderer</fo:block>
+<fo:block font-size="10pt" font-family="sans-serif" line-height="10pt" space-after.optimum="3pt" font-weight="bold" start-indent="15pt">
+            Content
+         </fo:block>
+<fo:table>
+<fo:table-column column-width="1cm"/>
+<fo:table-column column-width="15cm"/>
+<fo:table-body font-size="10pt" font-family="sans-serif">
+<fo:table-row line-height="12pt">
+<fo:table-cell>
+<fo:block text-align="end">A) 
+                     </fo:block>
+</fo:table-cell>
+<fo:table-cell>
+<fo:block text-align="start">What is FOP?</fo:block>
+</fo:table-cell>
+</fo:table-row>
+<fo:table-row line-height="12pt">
+<fo:table-cell>
+<fo:block text-align="end">B) 
+                     </fo:block>
+</fo:table-cell>
+<fo:table-cell>
+<fo:block text-align="start">Downloading FOP</fo:block>
+</fo:table-cell>
+</fo:table-row>
+<fo:table-row line-height="12pt">
+<fo:table-cell>
+<fo:block text-align="end">C) 
+                     </fo:block>
+</fo:table-cell>
+<fo:table-cell>
+<fo:block text-align="start">Running FOP</fo:block>
+</fo:table-cell>
+</fo:table-row>
+<fo:table-row line-height="12pt">
+<fo:table-cell>
+<fo:block text-align="end">D) 
+                     </fo:block>
+</fo:table-cell>
+<fo:table-cell>
+<fo:block text-align="start">Embedding FOP </fo:block>
+</fo:table-cell>
+</fo:table-row>
+<fo:table-row line-height="12pt">
+<fo:table-cell>
+<fo:block text-align="end">E) 
+                     </fo:block>
+</fo:table-cell>
+<fo:table-cell>
+<fo:block text-align="start">What's Implemented?</fo:block>
+</fo:table-cell>
+</fo:table-row>
+<fo:table-row line-height="12pt">
+<fo:table-cell>
+<fo:block text-align="end">F) 
+                     </fo:block>
+</fo:table-cell>
+<fo:table-cell>
+<fo:block text-align="start">Limitations</fo:block>
+</fo:table-cell>
+</fo:table-row>
+<fo:table-row line-height="12pt">
+<fo:table-cell>
+<fo:block text-align="end">G) 
+                     </fo:block>
+</fo:table-cell>
+<fo:table-cell>
+<fo:block text-align="start">Bugs</fo:block>
+</fo:table-cell>
+</fo:table-row>
+<fo:table-row line-height="12pt">
+<fo:table-cell>
+<fo:block text-align="end">H) 
+                     </fo:block>
+</fo:table-cell>
+<fo:table-cell>
+<fo:block text-align="start">Compiling FOP</fo:block>
+</fo:table-cell>
+</fo:table-row>
+<fo:table-row line-height="12pt">
+<fo:table-cell>
+<fo:block text-align="end">I) 
+                     </fo:block>
+</fo:table-cell>
+<fo:table-cell>
+<fo:block text-align="start">Getting involved</fo:block>
+</fo:table-cell>
+</fo:table-row>
+<fo:table-row line-height="12pt">
+<fo:table-cell>
+<fo:block text-align="end">J) 
+                     </fo:block>
+</fo:table-cell>
+<fo:table-cell>
+<fo:block text-align="start">FOP Relevant Specifications</fo:block>
+</fo:table-cell>
+</fo:table-row>
+<fo:table-row line-height="12pt">
+<fo:table-cell>
+<fo:block text-align="end">K) 
+                     </fo:block>
+</fo:table-cell>
+<fo:table-cell>
+<fo:block text-align="start">Licence</fo:block>
+</fo:table-cell>
+</fo:table-row>
+</fo:table-body>
+</fo:table>
+
+
+
+
+
+  fop logo
+  <fo:block font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" keep-with-next="true">A) 
+      What is FOP?</fo:block>
+  <fo:block space-after.optimum="3pt" font-family="serif">FOP is the world's first print formatter driven by XSL formatting
+     objects. It is a Java 1.1 application that reads a formatting object
+     tree and then turns it into a PDF document. The formatting object
+     tree, can be in the form of an XML document (output by an XSLT engine
+     like XT or Xalan) or can be passed in memory as a DOM Document or (in
+     the case of XT) SAX events.
+
+  </fo:block>
+  <fo:block space-after.optimum="3pt" font-family="serif">FOP is part of Apache's XML project. The homepage of FOP is 
+     <fo:inline-sequence font-style="italic" font-family="serif">http:/xml.apache.org/fop</fo:inline-sequence>
+<fo:inline-sequence font-family="serif">
+      (http:/xml.apache.org/fop)
+   </fo:inline-sequence>. 
+  </fo:block>
+
+
+
+
+
+
+  <fo:block font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" keep-with-next="true">B) 
+      Downloading FOP</fo:block>
+  <fo:block space-after.optimum="3pt" font-family="serif">The latest release version is <fo:inline-sequence font-style="italic" font-family="serif">FOP 12.0</fo:inline-sequence>
+<fo:inline-sequence font-family="serif">
+      ()
+   </fo:inline-sequence>. </fo:block>
+  <fo:block space-after.optimum="3pt" font-family="serif">NOTE: you do not have to unjar or unzip this jar file.</fo:block>
+  <fo:block space-after.optimum="3pt" font-family="serif">Documentation can be downloaded here as <fo:inline-sequence font-style="italic" font-family="serif">HMTL file</fo:inline-sequence>
+<fo:inline-sequence font-family="serif">
+      ()
+   </fo:inline-sequence> or 
+     as <fo:inline-sequence font-style="italic" font-family="serif">PDF file</fo:inline-sequence>
+<fo:inline-sequence font-family="serif">
+      ()
+   </fo:inline-sequence>.</fo:block>
+  <fo:block space-after.optimum="3pt" font-family="serif">To run FOP from the command line, see Running FOP. If you are interested in 
+     embedding FOP in a Java application of your own, see Embedding FOP.
+  </fo:block>
+  <fo:block space-after.optimum="3pt" font-family="serif">You can also download the <fo:inline-sequence font-style="italic" font-family="serif">source code v. 12.0</fo:inline-sequence>
+<fo:inline-sequence font-family="serif">
+      ()
+   </fo:inline-sequence> as jar file</fo:block>
+
+
+
+
+
+  <fo:block font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" keep-with-next="true">C) 
+      Running FOP</fo:block>
+  
+    <fo:block font-size="16pt" font-family="serif" line-height="18pt" space-before.optimum="8pt" space-after.optimum="8pt" keep-with-next="true">1) Prerequisites</fo:block>
+    <fo:block space-after.optimum="3pt" font-family="serif">Following software must be installed:</fo:block>
+    <fo:block space-after.optimum="3pt" font-family="serif">a) Java 1.1.x or later</fo:block>
+      <fo:block space-after.optimum="3pt" font-family="serif">For the fo-file viewer mode of FOP (see below) you must have the swing classes installed. 
+         From Java 1.2 on (aka Java 2) they are part of the standard java distribution. 
+         If you use Java 1.1.x you must seperately include the swing classes, which can
+         be found at the <fo:inline-sequence font-style="italic" font-family="serif">
+         Sun website</fo:inline-sequence>
+<fo:inline-sequence font-family="serif">
+      (http://java.sun.com/products/jfc/#download-swing)
+   </fo:inline-sequence>. 
+      </fo:block>
+    <fo:block space-after.optimum="3pt" font-family="serif">b) An XML parser which supports SAX and DOM like 
+          <fo:inline-sequence font-style="italic" font-family="serif">Xerces-J</fo:inline-sequence>
+<fo:inline-sequence font-family="serif">
+      (http://xml.apache.org/xerces-j/index.html)
+   </fo:inline-sequence>.</fo:block>
+    <fo:block space-after.optimum="3pt" font-family="serif">c) If you have to produce the flow objects files, which are the input for FOP, 
+       you need a transformation utility to create this files from your xml files. 
+       Normally this is an XSLT stylesheet processor like 
+       <fo:inline-sequence font-style="italic" font-family="serif">XT</fo:inline-sequence>
+<fo:inline-sequence font-family="serif">
+      (http://www.jclark.com/xml/xt.html)
+   </fo:inline-sequence> 
+       or <fo:inline-sequence font-style="italic" font-family="serif">XALAN</fo:inline-sequence>
+<fo:inline-sequence font-family="serif">
+      (http://xml.apache.org/xalan/index.html)
+   </fo:inline-sequence>. 
+    </fo:block>
+  
+  
+    <fo:block font-size="16pt" font-family="serif" line-height="18pt" space-before.optimum="8pt" space-after.optimum="8pt" keep-with-next="true">2) Starting FOP as an standalone application</fo:block>
+    <fo:block space-after.optimum="3pt" font-family="serif">There are three ways to run FOP from the command line.</fo:block>
+    <fo:block space-after.optimum="3pt" font-family="serif">a) Batch processing formatting objects (fo) files: </fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">java org.apache.fop.apps.CommandLine fo-file pdf-file</fo:block>
+    <fo:block space-after.optimum="3pt" font-family="serif">b) Batch processing xml files (includes production of the fo-files):</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">java org.apache.fop.apps.CommandLine xml-file xsl-file pdf-file</fo:block>
+    <fo:block space-after.optimum="3pt" font-family="serif">c) Previewing the fo-file:</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">java org.apache.fop.apps.AWTCommandLine fo-file</fo:block>
+    <fo:block space-after.optimum="3pt" font-family="serif">Each method uses next to the fop classes other packages. The following describes 
+       each method in detail.</fo:block>
+    
+      <fo:block font-size="14pt" font-family="serif" line-height="16pt" space-before.optimum="8pt" space-after.optimum="4pt" keep-with-next="true">a) Method One</fo:block>
+      <fo:block space-after.optimum="3pt" font-family="serif">One is to first use an XSLT engine to produce the formatting object tree as an 
+         XML document and then running the class org.apache.fop.apps.CommandLine with the
+         formatting object file name and PDF filename as arguments. You will need to include 
+         FOP and your XML Parser in your classpath and so you might invoke 
+      </fo:block>
+      <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">java -cp fop_x_xx_x.jar;xerces.jar</fo:block>
+      <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">org.apache.fop.apps.CommandLine fo-file pdf-file</fo:block>
+      <fo:block space-after.optimum="3pt" font-family="serif">If your SAX Parser is other than Xerces, you will need to set the property 
+         org.xml.sax.parser to the SAX Parser class to use. The following example shows 
+         the command line, if you use XP, the XML parser from James Clark: 
+      </fo:block>
+      <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">java -Dorg.xml.sax.parser=com.jclark.xml.sax.Driver</fo:block>
+      <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">-cp fop_x_xx_x.jar;sax.jar;xt.jar;xp.jar;xerces.jar</fo:block>
+      <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">org.apache.fop.apps.AWTCommandLine formatting-tree-file pdf-file</fo:block>
+      <fo:block space-after.optimum="3pt" font-family="serif">(You have to include xerces.jar or another xml parser which supports DOM in your classpath.) </fo:block>
+    
+    
+      <fo:block font-size="14pt" font-family="serif" line-height="16pt" space-before.optimum="8pt" space-after.optimum="4pt" keep-with-next="true">b) Method Two</fo:block>
+      <fo:block space-after.optimum="3pt" font-family="serif">Rather than performing transformation with an XSLT before invoking FOP, it is 
+         possible, if you use XT as your XSLT engine, to just call FOP and have it call 
+         XT for you. To do this, run the class org.apache.fop.apps.CommandLine with the 
+         source XML file name, XSL file name and PDF file name as arguments. You will 
+         need to include FOP, SAX, your SAX Parser and XT in your classpath and so you might 
+         invoke 
+      </fo:block>
+      <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">java -Dorg.xml.sax.parser=com.jclark.xml.sax.Driver</fo:block>
+      <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">-cp fop_x_xx_x.jar;xt.jar;xerces.jar</fo:block>
+      <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">org.apache.fop.apps.CommandLine xml-file xsl-file pdf-file</fo:block>
+      <fo:block space-after.optimum="3pt" font-family="serif">Again, if your SAX Parser is other than Xerces, you will need to set the property
+         org.xml.sax.parser to the SAX Parser class to use.
+      </fo:block>
+    
+    
+      <fo:block font-size="14pt" font-family="serif" line-height="16pt" space-before.optimum="8pt" space-after.optimum="4pt" keep-with-next="true">c) Method Three</fo:block>
+      <fo:block space-after.optimum="3pt" font-family="serif">If you already produced the FO file, you can preview the results of your 
+         transformation without using any pdf viewer by invoking FOP with the viewer 
+         application. You will need to include FOP and your XML Parser in your classpath 
+      </fo:block>
+      <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">java -cp fop_x_xx_x.jar;xerces.jar</fo:block>
+      <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">org.apache.fop.apps.AWTCommandLine fo-file </fo:block>
+      <fo:block space-after.optimum="3pt" font-family="serif">The viewer uses the swing classes.</fo:block> 
+      <fo:block space-after.optimum="3pt" font-family="serif">Note: If you are using java 2 or later (i.e. jdk 1.2. or later) you can put all 
+         needed jar files into the subdirectory jdk1.2.x\jre\lib\ext (windows example). Then 
+         FOP can be started without classpath: 
+      </fo:block>
+      <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">java org.apache.fop.apps.CommandLine fo-file pdf-file</fo:block>
+    
+  
+  
+    <fo:block font-size="16pt" font-family="serif" line-height="18pt" space-before.optimum="8pt" space-after.optimum="8pt" keep-with-next="true">3) Running FOP on MacOS</fo:block>  
+    
+    <fo:block space-after.optimum="3pt" font-family="serif">Ensure that you have a recent MRJ, and that you have downloaded and
+       unpacked the XP and SAX distributions. The xp.jar and sax.jar files work
+       as is on MacOS.
+    </fo:block>
+    <fo:block space-after.optimum="3pt" font-family="serif">Drag the FOP jarfile onto the JBindery icon. When the first dialog
+       appears, type "org.apache.fop.apps.CommandLine" in the "Class name" field.
+       Using UNIX syntax, type the names of the input formatting-object file and
+       the output PDF in the "Optional parameters" field.
+    </fo:block>
+    <fo:block space-after.optimum="3pt" font-family="serif">Click on the Classpath icon. To add the xp.jar and sax.jar files, click
+       the "Add .zip file" button, navigate to the file in question, and click
+       Open.
+    </fo:block>
+    <fo:block space-after.optimum="3pt" font-family="serif">Once both are added (the FOP jarfile will already be in the list), click
+       Run. A "stdout" window will appear and display FOP runtime messages.
+    </fo:block>  
+  
+  
+    <fo:block font-size="16pt" font-family="serif" line-height="18pt" space-before.optimum="8pt" space-after.optimum="8pt" keep-with-next="true">4) Problems</fo:block>
+    <fo:block space-after.optimum="3pt" font-family="serif">If you have problems running FOP, please have a look at the 
+       <fo:inline-sequence font-style="italic" font-family="serif">FOP FAQ</fo:inline-sequence>
+<fo:inline-sequence font-family="serif">
+      (faq.html)
+   </fo:inline-sequence>. If you don't find a solution there,
+       you can ask for help on the list fop-dev@xml.apache.org. Maybe it's bug and 
+       maybe somebody is already working on it. 
+    </fo:block>
+  
+
+
+
+
+
+
+
+
+  <fo:block font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" keep-with-next="true">D) 
+      Embedding FOP </fo:block>
+  <fo:block space-after.optimum="3pt" font-family="serif">Instantiate org.apache.fop.apps.Driver. Once this class is 
+     instantiated, methods are called to set the
+     Renderer to use, the (possibly multiple) ElementMapping(s) to
+     use and the PrintWriter to use to output the results of the
+     rendering (where applicable). In the case of the Renderer and
+     ElementMapping(s), the Driver may be supplied either with the
+     object itself, or the name of the class, in which case Driver will
+     instantiate the class itself. The advantage of the latter is it
+     enables runtime determination of Renderer and ElementMapping(s).
+  </fo:block>
+  <fo:block space-after.optimum="3pt" font-family="serif">Once the Driver is set up, the buildFOTree method
+     is called. Depending on whether DOM or SAX is being used, the
+     invocation of the method is either buildFOTree(Document) or
+     buildFOTree(Parser, InputSource) respectively.
+  </fo:block>
+  <fo:block space-after.optimum="3pt" font-family="serif">A third possibility may be used to build the FO Tree, namely
+     calling getDocumentHandler() and firing the SAX events yourself.
+  </fo:block>
+  <fo:block space-after.optimum="3pt" font-family="serif">Once the FO Tree is built, the format() and render() methods may be
+     called in that order.
+  </fo:block>
+  <fo:block space-after.optimum="3pt" font-family="serif">Here is an example use of Driver from CommandLine.java:</fo:block>
+  <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">Driver driver = new Driver();</fo:block>
+  <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">driver.setRenderer("org.apache.fop.render.pdf.PDFRenderer", version);</fo:block>
+  <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">driver.addElementMapping("org.apache.fop.fo.StandardElementMapping");</fo:block>
+  <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">driver.addElementMapping("org.apache.fop.svg.SVGElementMapping");</fo:block>
+  <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">driver.setWriter(new PrintWriter(new FileWriter(args[1])));</fo:block>
+  <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">driver.buildFOTree(parser, fileInputSource(args[0]));</fo:block>
+  <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">driver.format();</fo:block>
+  <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">driver.render();</fo:block>
+
+
+
+
+
+
+  <fo:block font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" keep-with-next="true">E) 
+      What's Implemented?</fo:block>
+      <fo:block space-after.optimum="3pt" font-family="serif">Also see STATUS for what is being worked on.</fo:block>
+  
+    <fo:block font-size="16pt" font-family="serif" line-height="18pt" space-before.optimum="8pt" space-after.optimum="8pt" keep-with-next="true">1) Formatting Objects</fo:block>
+    <fo:list-block start-indent="1cm" provisional-distance-between-starts="12pt" font-family="serif">
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>root </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>layout-master-set </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>simple-page-master </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>region-body </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>region-before </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>region-after </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>page-sequence </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>sequence-specification </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>sequence-specifier-single </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>sequence-specifier-repeating </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>sequence-specifier-alternating </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>flow </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>static-content </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>block </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>list-block </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>list-item </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>list-item-label </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>list-item-body </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>page-number </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>display-sequence </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>inline-sequence </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>display-rule </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>display-graphic </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>table (minimal support)</fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>table-column (minimal support)</fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>table-body (minimal support)</fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>table-row (minimal support)</fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>table-cell (minimal support)</fo:block>
+</fo:list-item-body>
+</fo:list-item>
+  </fo:list-block>
+  
+
+  
+    <fo:block font-size="16pt" font-family="serif" line-height="18pt" space-before.optimum="8pt" space-after.optimum="8pt" keep-with-next="true">2) Properties</fo:block>
+    <fo:list-block start-indent="1cm" provisional-distance-between-starts="12pt" font-family="serif">
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>end-indent </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>page-master-name </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>page-master-first </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>page-master-repeating </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>page-master-odd </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>page-master-even </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>margin-top (only on pages and regions)</fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>margin-bottom (only on pages and regions)</fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>margin-left (only on pages and regions)</fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>margin-right (only on pages and regions)</fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>extent </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>page-width </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>page-height </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>flow-name </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>font-family </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>font-style </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>font-weight </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>font-size </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>line-height </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>text-align </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>text-align-last </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>space-before.optimum </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>space-after.optimum </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>start-indent </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>end-indent </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>provisional-distance-between-starts </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>provisional-label-separation </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>rule-thickness </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>color </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>wrap-option </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>white-space-treatment </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>break-before </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>break-after </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>text-indent </fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>href</fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>column-width</fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>background-color</fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>padding-top (only in conjunction with background color)</fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>padding-left (only in conjunction with background color)</fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>padding-bottom (only in conjunction with background color)</fo:block>
+</fo:list-item-body>
+</fo:list-item>
+      <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>padding-right (only in conjunction with background color)</fo:block>
+</fo:list-item-body>
+</fo:list-item>
+    </fo:list-block>
+  
+
+
+
+
+  <fo:block font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" keep-with-next="true">F) 
+      Limitations</fo:block>
+  <fo:block space-after.optimum="3pt" font-family="serif">Although FOP implements the above listed fo objects and properties, sometimes it does so 
+     only in a limited way. 
+  </fo:block>
+  
+    <fo:block font-size="16pt" font-family="serif" line-height="18pt" space-before.optimum="8pt" space-after.optimum="8pt" keep-with-next="true">list-block</fo:block>
+    <fo:block space-after.optimum="3pt" font-family="serif">The fo working draft allows describes two ways to markup lists.The list-block must have as 
+       children either: 1) pairs of fo:list-item-label and fo:list-item-body formatting objects, or
+       2) fo:list-item formatting objects.</fo:block>
+    <fo:block space-after.optimum="3pt" font-family="serif">At the moment FOP only implements the second way. Therefore a list has a basic structure like this:</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">&lt;fo:list-block&gt;</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">&lt;fo:list-item&gt;</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">&lt;fo:list-item-label&gt;&lt;fo:block&gt;&lt;/fo:block&gt;&lt;/fo:list-item-label&gt;</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">&lt;fo:list-item-body&gt;&lt;fo:block&gt;&lt;/fo:block&gt;&lt;/fo:list-item-body&gt;</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">&lt;/fo:list-item&gt;</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">&lt;/fo:list-block&gt;</fo:block>
+  
+  
+    <fo:block font-size="16pt" font-family="serif" line-height="18pt" space-before.optimum="8pt" space-after.optimum="8pt" keep-with-next="true">Padding</fo:block>
+    <fo:block space-after.optimum="3pt" font-family="serif">Padding works in conjunction with indents and spaces. It is only implemented 
+       for blocks. At the moment padding can't be used to make extra space (indents+spaces
+       must be used), but only to control how much the background-color extends beyond
+       the content rectangle.
+    </fo:block>  
+  
+  
+    <fo:block font-size="16pt" font-family="serif" line-height="18pt" space-before.optimum="8pt" space-after.optimum="8pt" keep-with-next="true">Tables</fo:block>
+    <fo:block space-after.optimum="3pt" font-family="serif">There two limitations for tables: 1) FOP needs you to explicitly specify column widths 
+       2) Cells have to contain block-level FOs. They can't contain straight character data.
+    </fo:block>
+    <fo:block space-after.optimum="3pt" font-family="serif">A working basic example of a table looks like this: </fo:block>  
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">&lt;fo:table&gt;</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">                &lt;fo:table-column column-width="150pt"/&gt;</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">                &lt;fo:table-column column-width="150pt"/&gt;</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">        &lt;fo:table-body font-size="10pt" font-family="sans-serif"&gt;</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">                &lt;fo:table-row&gt;</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">                        &lt;fo:table-cell&gt;</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">                                &lt;fo:block&gt;text&lt;/fo:block&gt;</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">                        &lt;/fo:table-cell&gt;</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">                        &lt;fo:table-cell&gt;</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">                                &lt;fo:block&gt;text&lt;/fo:block&gt;</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">                        &lt;/fo:table-cell&gt;</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">                &lt;/fo:table-row&gt;</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">                &lt;fo:table-row&gt;</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">                        &lt;fo:table-cell&gt;</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">                                &lt;fo:block&gt;text&lt;/fo:block&gt;</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">                        &lt;/fo:table-cell&gt;</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">                        &lt;fo:table-cell&gt;</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">                                &lt;fo:block&gt;text&lt;/fo:block&gt;</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">                        &lt;/fo:table-cell&gt;</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">                &lt;/fo:table-row&gt;</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">                &lt;fo:table-row&gt;</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">                        &lt;fo:table-cell&gt;</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">                                &lt;fo:block&gt;text&lt;/fo:block&gt;</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">                        &lt;/fo:table-cell&gt;</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">                        &lt;fo:table-cell&gt;</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">                                &lt;fo:block&gt;text&lt;/fo:block&gt;</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">                        &lt;/fo:table-cell&gt;</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">                &lt;/fo:table-row&gt;</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">        &lt;/fo:table-body&gt;</fo:block>
+    <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">&lt;/fo:table&gt;</fo:block>
+  
+
+  
+  
+
+
+
+
+
+
+
+  <fo:block font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" keep-with-next="true">G) 
+      Bugs</fo:block>
+  <fo:block space-after.optimum="3pt" font-family="serif">see STATUS file</fo:block>
+
+
+
+
+
+
+  <fo:block font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" keep-with-next="true">H) 
+      Compiling FOP</fo:block>
+  
+    <fo:block font-size="16pt" font-family="serif" line-height="18pt" space-before.optimum="8pt" space-after.optimum="8pt" keep-with-next="true">1. Prerequisites</fo:block>
+    
+      <fo:block font-size="14pt" font-family="serif" line-height="16pt" space-before.optimum="8pt" space-after.optimum="4pt" keep-with-next="true">a) Java 1.1.x or later</fo:block>
+      <fo:block space-after.optimum="3pt" font-family="serif">If you use Java 1.1.x you must also seperately include the swing classes, which can
+         be found at the <fo:inline-sequence font-style="italic" font-family="serif">
+         Sun website</fo:inline-sequence>
+<fo:inline-sequence font-family="serif">
+      (http://java.sun.com/products/jfc/#download-swing)
+   </fo:inline-sequence>. From Java 1.2 on (aka Java 2) they are part of the standard 
+         distribution. 
+      </fo:block>
+    
+    
+      <fo:block font-size="14pt" font-family="serif" line-height="16pt" space-before.optimum="8pt" space-after.optimum="4pt" keep-with-next="true">b) An XML parser</fo:block>
+      <fo:block space-after.optimum="3pt" font-family="serif">An XML parser which supports DOM like 
+         <fo:inline-sequence font-style="italic" font-family="serif">Xerces-J</fo:inline-sequence>
+<fo:inline-sequence font-family="serif">
+      (http://xml.apache.org/xerces-j/index.html)
+   </fo:inline-sequence>.</fo:block>
+    
+    
+      <fo:block font-size="14pt" font-family="serif" line-height="16pt" space-before.optimum="8pt" space-after.optimum="4pt" keep-with-next="true">c) XT from James Clark</fo:block>
+      <fo:block space-after.optimum="3pt" font-family="serif">Some of the Java source code in FOP is generated from XML using
+         XSLT. XT must be used to generate this code.</fo:block>
+      <fo:block space-after.optimum="3pt" font-family="serif">XT is an XSL stylesheet processor written in java. At the moment you
+         can't use any other processor, because the make file makes use of some
+         proprietary features of Clark's xt which allow to write output in more
+         then one document. You can find XT at <fo:inline-sequence font-style="italic" font-family="serif">
+        James Clark's website</fo:inline-sequence>
+<fo:inline-sequence font-family="serif">
+      (http://www.jclark.com/xml/xt.html)
+   </fo:inline-sequence>. You have to use XT version 19991105 or later.</fo:block>
+      <fo:block space-after.optimum="3pt" font-family="serif">(Under windows you shouldn't use the prepackaged xt.exe but also the
+         generic jar file, otherwise make won't work)
+      </fo:block>
+      <fo:block space-after.optimum="3pt" font-family="serif">XT relies on an sax parser like XP (also J. Clark), which can be
+         downloaded at <fo:inline-sequence font-style="italic" font-family="serif">James 
+         Clark's Website</fo:inline-sequence>
+<fo:inline-sequence font-family="serif">
+      (http://www.jclark.com/xml/xp/index.html)
+   </fo:inline-sequence>
+      </fo:block>
+    
+    
+      <fo:block font-size="14pt" font-family="serif" line-height="16pt" space-before.optimum="8pt" space-after.optimum="4pt" keep-with-next="true">d) make</fo:block>
+      <fo:block space-after.optimum="3pt" font-family="serif">Under windows it has been reported that the use of the cygnus solutions port 
+         of the GNU utilities works. You can find it at 
+         <fo:inline-sequence font-style="italic" font-family="serif">Cygnus Solutions</fo:inline-sequence>
+<fo:inline-sequence font-family="serif">
+      (http://sourceware.cygnus.com/cygwin/)
+   </fo:inline-sequence>
+      </fo:block>
+    
+  
+  
+    <fo:block font-size="16pt" font-family="serif" line-height="18pt" space-before.optimum="8pt" space-after.optimum="8pt" keep-with-next="true">Compiling FOP on MacOS</fo:block>
+    
+    <fo:block space-after.optimum="3pt" font-family="serif">We strongly recommend the use of Codewarrior Java. This Readme will
+       contain a link to more information in the near future.
+    </fo:block>
+  
+
+
+
+
+
+
+  <fo:block font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" keep-with-next="true">I) 
+      Getting involved</fo:block>
+  <fo:block space-after.optimum="3pt" font-family="serif">1. Subscribe to fop-dev@xml.apache.org by sending an email 
+        to fop-dev-subscribe@xml.apache.org</fo:block>
+  <fo:block space-after.optimum="3pt" font-family="serif">2. Read the archives to fop-dev to get an idea of the issues being 
+        discussed. </fo:block>
+  <fo:block space-after.optimum="3pt" font-family="serif">3. Subscribe to fop-cvs@xml.apache.org by sending an email to 
+        fop-cvs-subscribe@xml.apache.org (it is important 
+        that you follow changes being made). </fo:block>
+  <fo:block space-after.optimum="3pt" font-family="serif">4. Try :-) to wrap your head around the XSL working draft. </fo:block>
+  <fo:block space-after.optimum="3pt" font-family="serif">5. Get CVS working on your system. </fo:block>
+  <fo:block space-after.optimum="3pt" font-family="serif">6. Ask, on fop-dev, any questions you have at all about the code, design, etc. </fo:block>
+  <fo:block space-after.optimum="3pt" font-family="serif">7. When you feel comfortable modifying the code, send diffs to 
+        fop-dev with your contributions. </fo:block>
+  <fo:block space-after.optimum="3pt" font-family="serif">8. Have fun!</fo:block>
+
+
+
+
+
+
+  <fo:block font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" keep-with-next="true">J) 
+      FOP Relevant Specifications</fo:block>
+  <fo:list-block start-indent="1cm" provisional-distance-between-starts="12pt" font-family="serif">
+    <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>
+<fo:inline-sequence font-style="italic" font-family="serif">XML Recommendation</fo:inline-sequence>
+<fo:inline-sequence font-family="serif">
+      (http://www.w3.org/TR/REC-xml)
+   </fo:inline-sequence>
+</fo:block>
+</fo:list-item-body>
+</fo:list-item>
+    <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>
+<fo:inline-sequence font-style="italic" font-family="serif">XSL-FO Working Draft</fo:inline-sequence>
+<fo:inline-sequence font-family="serif">
+      (http://www.w3.org/TR/WD-xsl/)
+   </fo:inline-sequence>
+</fo:block>
+</fo:list-item-body>
+</fo:list-item>
+    <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>
+<fo:inline-sequence font-style="italic" font-family="serif">XSLT Recommendation</fo:inline-sequence>
+<fo:inline-sequence font-family="serif">
+      (http://www.w3.org/TR/xslt)
+   </fo:inline-sequence>
+</fo:block>
+</fo:list-item-body>
+</fo:list-item>
+    <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>
+<fo:inline-sequence font-style="italic" font-family="serif">PDF Documentation</fo:inline-sequence>
+<fo:inline-sequence font-family="serif">
+      (http://partners.adobe.com/asn/developer/acrosdk/DOCS/pdfspec.pdf)
+   </fo:inline-sequence>
+</fo:block>
+</fo:list-item-body>
+</fo:list-item>
+    <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>
+<fo:inline-sequence font-style="italic" font-family="serif">Simple API for XML (SAX)</fo:inline-sequence>
+<fo:inline-sequence font-family="serif">
+      (http://www.megginson.com/SAX/)
+   </fo:inline-sequence>
+</fo:block>
+</fo:list-item-body>
+</fo:list-item>
+    <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>
+<fo:inline-sequence font-style="italic" font-family="serif">Document Object Model (DOM)</fo:inline-sequence>
+<fo:inline-sequence font-family="serif">
+      (http://www.w3.org/TR/REC-DOM-Level-1)
+   </fo:inline-sequence>
+</fo:block>
+</fo:list-item-body>
+</fo:list-item>
+    <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>
+<fo:inline-sequence font-style="italic" font-family="serif">Namespaces in XML Recommendation</fo:inline-sequence>
+<fo:inline-sequence font-family="serif">
+      (http://www.w3.org/TR/REC-xml-names/)
+   </fo:inline-sequence>
+</fo:block>
+</fo:list-item-body>
+</fo:list-item>
+    <fo:list-item>
+<fo:list-item-label>
+<fo:block>*</fo:block>
+</fo:list-item-label>
+<fo:list-item-body>
+<fo:block>
+<fo:inline-sequence font-style="italic" font-family="serif">Java JDK 1.1 Documentation</fo:inline-sequence>
+<fo:inline-sequence font-family="serif">
+      (http://java.sun.com/products/jdk/1.1/docs/index.html)
+   </fo:inline-sequence>
+</fo:block>
+</fo:list-item-body>
+</fo:list-item>
+  </fo:list-block>
+
+
+
+
+
+
+  <fo:block font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" keep-with-next="true">K) 
+      Licence</fo:block>
+  <fo:block space-after.optimum="3pt" font-family="serif"> ============================================================================</fo:block>
+  <fo:block space-after.optimum="3pt" font-family="serif">                   The Apache Software License, Version 1.1</fo:block>
+  <fo:block space-after.optimum="3pt" font-family="serif"> ============================================================================</fo:block>
+  <fo:block space-after.optimum="3pt" font-family="serif">    Copyright (C) 1999 The Apache Software Foundation. All rights reserved.</fo:block>
+  <fo:block space-after.optimum="3pt" font-family="serif"> Redistribution and use in source and binary forms, with or without modification, 
+      are permitted provided that the following conditions are met:</fo:block>
+  <fo:block space-after.optimum="3pt" font-family="serif">1. Redistributions of  source code must  retain the above copyright  notice,
+      this list of conditions and the following disclaimer.
+  </fo:block>
+
+  <fo:block space-after.optimum="3pt" font-family="serif">2. Redistributions in binary form must reproduce the above copyright notice,
+      this list of conditions and the following disclaimer in the documentation
+      and/or other materials provided with the distribution.
+  </fo:block>
+
+  <fo:block space-after.optimum="3pt" font-family="serif">3. The end-user documentation included with the redistribution, if any, must
+      include  the following  acknowledgment:  "This product includes  software
+      developed  by the  Apache Software Foundation  (http://www.apache.org/)."
+      Alternately, this  acknowledgment may  appear in the software itself,  if
+      and wherever such third-party acknowledgments normally appear.
+  </fo:block>
+
+  <fo:block space-after.optimum="3pt" font-family="serif">4. The names "FOP" and  "Apache Software Foundation"  must not be used to
+      endorse  or promote  products derived  from this  software without  prior
+      written permission. For written permission, please contact
+      apache@apache.org.
+  </fo:block>
+
+  <fo:block space-after.optimum="3pt" font-family="serif">5. Products  derived from this software may not  be called "Apache", nor may
+      "Apache" appear  in their name,  without prior written permission  of the
+      Apache Software Foundation.
+  </fo:block> 
+  <fo:block space-after.optimum="3pt" font-family="serif">THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES,
+     INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
+     FITNESS  FOR A PARTICULAR  PURPOSE ARE  DISCLAIMED.  IN NO  EVENT SHALL  THE
+     APACHE SOFTWARE  FOUNDATION  OR ITS CONTRIBUTORS  BE LIABLE FOR  ANY DIRECT,
+     INDIRECT, INCIDENTAL, SPECIAL,  EXEMPLARY, OR CONSEQUENTIAL  DAMAGES (INCLU-
+     DING, BUT NOT LIMITED TO, PROCUREMENT  OF SUBSTITUTE GOODS OR SERVICES; LOSS
+     OF USE, DATA, OR  PROFITS; OR BUSINESS  INTERRUPTION)  HOWEVER CAUSED AND ON
+     ANY  THEORY OF LIABILITY,  WHETHER  IN CONTRACT,  STRICT LIABILITY,  OR TORT
+     (INCLUDING  NEGLIGENCE OR  OTHERWISE) ARISING IN  ANY WAY OUT OF THE  USE OF
+     THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+  </fo:block>
+   
+  <fo:block space-after.optimum="3pt" font-family="serif">
+     This software  consists of voluntary contributions made  by many individuals
+     on  behalf of the Apache Software  Foundation and was  originally created by
+     James Tauber &lt;jtauber@jtauber.com&gt;. For more  information on the Apache 
+     Software Foundation, please see <fo:inline-sequence font-style="italic" font-family="serif">http://www.apache.org/</fo:inline-sequence>
+<fo:inline-sequence font-family="serif">
+      (http://www.apache.org/)
+   </fo:inline-sequence>.
+  </fo:block>
+
+
+
+</fo:flow>
+</fo:page-sequence>
+</fo:root>
diff --git a/docs/examples/fo/table.fo b/docs/examples/fo/table.fo
new file mode 100644 (file)
index 0000000..73d6ca1
--- /dev/null
@@ -0,0 +1,138 @@
+<?xml version="1.0" encoding="utf-8"?>
+<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
+
+
+  <!-- defines the layout master -->
+  <fo:layout-master-set>
+    <fo:simple-page-master page-master-name="first" 
+                           page-height="29.7cm" 
+                           page-width="21cm" 
+                           margin-top="1cm" 
+                           margin-bottom="2cm" 
+                           margin-left="2.5cm" 
+                           margin-right="2.5cm">
+      <fo:region-before extent="3cm"/>
+      <fo:region-body margin-top="3cm"/>
+      <fo:region-after extent="1.5cm"/>
+    </fo:simple-page-master>
+  </fo:layout-master-set>
+
+  <!-- starts actual layout -->
+  <fo:page-sequence>
+
+    <!-- applies layout master -->
+    <fo:sequence-specification>
+      <fo:sequence-specifier-single page-master-name="first"/>
+    </fo:sequence-specification>
+
+  <!-- Inserts a header with the page number -->
+  <fo:static-content flow-name="xsl-before">
+    <fo:block text-align="end" font-size="10pt" font-family="serif" line-height="14pt">
+          FOP - p. <fo:page-number/>
+    </fo:block>
+  </fo:static-content>
+
+  <fo:flow flow-name="xsl-body">
+
+      <fo:block font-size="10pt" font-family="sans-serif" line-height="10pt" space-after.optimum="3pt" font-weight="bold" start-indent="15pt">
+          Content
+      </fo:block>
+
+      <!-- Here starts the table -->
+      <fo:table>
+        <fo:table-column column-width="1cm"/>
+        <fo:table-column column-width="15cm"/>
+        <fo:table-body font-size="10pt" font-family="sans-serif">
+        <fo:table-row line-height="12pt">
+        <fo:table-cell>
+          <fo:block text-align="end">A) </fo:block>
+        </fo:table-cell>
+        <fo:table-cell>
+        <fo:block text-align="start">What is FOP?</fo:block>
+        </fo:table-cell>
+        </fo:table-row>
+        <fo:table-row line-height="12pt">
+        <fo:table-cell>
+        <fo:block text-align="end">B) </fo:block>
+        </fo:table-cell>
+        <fo:table-cell>
+        <fo:block text-align="start">Downloading FOP</fo:block>
+        </fo:table-cell>
+        </fo:table-row>
+        <fo:table-row line-height="12pt">
+        <fo:table-cell>
+        <fo:block text-align="end">C) </fo:block>
+        </fo:table-cell>
+        <fo:table-cell>
+        <fo:block text-align="start">Running FOP</fo:block>
+        </fo:table-cell>
+        </fo:table-row>
+        <fo:table-row line-height="12pt">
+        <fo:table-cell>
+        <fo:block text-align="end">D) </fo:block>
+        </fo:table-cell>
+        <fo:table-cell>
+        <fo:block text-align="start">Embedding FOP </fo:block>
+        </fo:table-cell>
+        </fo:table-row>
+        <fo:table-row line-height="12pt">
+        <fo:table-cell>
+        <fo:block text-align="end">E) </fo:block>
+        </fo:table-cell>
+        <fo:table-cell>
+        <fo:block text-align="start">What's Implemented?</fo:block>
+        </fo:table-cell>
+        </fo:table-row>
+        <fo:table-row line-height="12pt">
+        <fo:table-cell>
+        <fo:block text-align="end">F) </fo:block>
+        </fo:table-cell>
+        <fo:table-cell>
+        <fo:block text-align="start">Limitations</fo:block>
+        </fo:table-cell>
+        </fo:table-row>
+        <fo:table-row line-height="12pt">
+        <fo:table-cell>
+        <fo:block text-align="end">G) </fo:block>
+        </fo:table-cell>
+        <fo:table-cell>
+        <fo:block text-align="start">Bugs</fo:block>
+        </fo:table-cell>
+        </fo:table-row>
+        <fo:table-row line-height="12pt">
+        <fo:table-cell>
+        <fo:block text-align="end">H) </fo:block>
+        </fo:table-cell>
+        <fo:table-cell>
+        <fo:block text-align="start">Compiling FOP</fo:block>
+        </fo:table-cell>
+        </fo:table-row>
+        <fo:table-row line-height="12pt">
+        <fo:table-cell>
+        <fo:block text-align="end">I) </fo:block>
+        </fo:table-cell>
+        <fo:table-cell>
+        <fo:block text-align="start">Getting involved</fo:block>
+        </fo:table-cell>
+        </fo:table-row>
+        <fo:table-row line-height="12pt">
+        <fo:table-cell>
+        <fo:block text-align="end">J) </fo:block>
+        </fo:table-cell>
+        <fo:table-cell>
+        <fo:block text-align="start">FOP Relevant Specifications</fo:block>
+        </fo:table-cell>
+        </fo:table-row>
+        <fo:table-row line-height="12pt">
+        <fo:table-cell>
+        <fo:block text-align="end">K) </fo:block>
+        </fo:table-cell>
+        <fo:table-cell>
+        <fo:block text-align="start">Licence</fo:block>
+        </fo:table-cell>
+        </fo:table-row>
+        </fo:table-body>
+      </fo:table>
+    </fo:flow>
+  </fo:page-sequence>
+</fo:root>