--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+
+
+<!-- example for a simple fo file. At the beginning the page layout is set.
+Below fo:root there is always
+- a single fo:layout-master-set which defines one or more page layouts
+- an optional fo:declarations,
+- and a sequence of one or more fo:page-sequences containing the text and formatting instructions -->
+
+<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
+
+ <fo:layout-master-set>
+ <!-- fo:layout-master-set defines in its children the page layout:
+ the pagination and layout specifications
+ - page-masters: have the role of describing the intended subdivisions
+ of a page and the geometry of these subdivisions
+ - page-sequence-masters: have the role of describing the sequence
+ of page-masters that will be used to generate
+ pages during the formatting of an fo:page-sequence
+
+ -->
+
+ <!-- layout for the first page -->
+ <fo:simple-page-master master-name="first"
+ page-height="29.7cm"
+ page-width="21cm"
+ margin-top="1cm"
+ margin-bottom="2cm"
+ margin-left="2.0cm + 0.5cm"
+ margin-right="(5cm * 1cm) div 2cm">
+ <fo:region-body margin-top="3cm"/>
+ <fo:region-before extent="3cm"/>
+ <fo:region-after extent="1.5cm"/>
+ </fo:simple-page-master>
+
+ <!-- layout for the other pages -->
+ <fo:simple-page-master master-name="rest"
+ page-height="abs(-30cm + .3cm)"
+ page-width="(10cm * 2) + 1cm"
+ margin-top="round(.5) * 1cm"
+ margin-bottom="round(2.4) * 1cm"
+ margin-left="2.5 * 1cm"
+ margin-right="5.5cm - 3cm">
+ <fo:region-body margin-top="2.5cm"/>
+ <fo:region-before extent="2.5cm"/>
+ <fo:region-after extent="1.5cm"/>
+ </fo:simple-page-master>
+
+<fo:page-sequence-master master-name="basicPSM" >
+ <fo:repeatable-page-master-alternatives>
+ <fo:conditional-page-master-reference master-name="first"
+ page-position="first" />
+ <fo:conditional-page-master-reference master-name="rest"
+ page-position="rest" />
+ <!-- recommended fallback procedure -->
+ <fo:conditional-page-master-reference master-name="rest" />
+ </fo:repeatable-page-master-alternatives>
+</fo:page-sequence-master>
+
+ </fo:layout-master-set>
+ <!-- end: defines page layout -->
+
+ <!-- actual layout -->
+ <fo:page-sequence master-name="basicPSM">
+
+ <!-- header -->
+ <fo:static-content flow-name="xsl-region-before">
+ <fo:block text-align="end"
+ font-size="10pt"
+ font-family="serif"
+ line-height="1em + 4pt"
+ >
+ Border and Padding Shorthand Tests - p. <fo:page-number/>
+ </fo:block>
+ </fo:static-content>
+
+ <fo:flow flow-name="xsl-region-body">
+
+ <!-- defines text title level 1-->
+ <fo:block font-size="min(18pt,20pt)"
+ font-family="sans-serif"
+ line-height="max(24pt,18pt)"
+ space-after.optimum="5 mod 3 * 7.5pt"
+ background-color="rgb(128,128,128)"
+ color="rgb(255,255,255)"
+ text-align="center"
+ padding-top="3pt">
+ Border and Padding Shorthand Tests
+ </fo:block>
+
+ <!-- Normal text -->
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
+ line-height="1.25em"
+ space-after="12pt"
+ text-align="start"
+ background-color="rgb(150,150,150)"
+ start-indent="3mm" end-indent="3mm"
+ padding-left="3mm" padding-right="3mm"
+ padding-top="4mm" padding-bottom="4mm"
+ border-style="dashed"
+ border-left-width="1pt" border-right-width="1pt"
+ border-top-width="2pt" border-bottom-width="2pt"
+ border-top-color="rgb(100,100,100)" border-bottom-color="rgb(200,200,200)">
+In this example, padding and border properties are specified using absolute properties:
+padding-left, padding-right, padding-top, and padding-bottom, etc.
+According to the specification, a request for the absolute (top, bottom, left, right) versions of these properties should use the relative ones if they are specified.
+</fo:block>
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
+ line-height="1.25em"
+ space-after="12pt"
+ text-align="start"
+ background-color="rgb(150,150,150)"
+ start-indent="3mm" end-indent="3mm"
+ padding="3mm + 1mm 3mm"
+ border-top="rgb(100,100,100) 1pt + 1pt dashed"
+ border-bottom="2pt rgb(200,200,200) solid"
+ border-left="solid 1pt" border-right="solid 1pt">
+In this example, padding and border properties are specified using shorthand properties:
+padding, border-width, border-color.
+According to the specification, a request for the absolute (top, bottom, left, right) versions of these properties should use the relative ones if they are specified.
+</fo:block>
+
+ <!-- Normal text -->
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
+ line-height="1.25em"
+ space-after="3pt"
+ text-align="start"
+ background-color="rgb(150,150,150)"
+ start-indent="3mm" end-indent="3mm"
+ padding-before="4mm" padding-after="4mm"
+ padding-start.length="3mm" padding-end.length="3mm"
+ border-style="solid"
+ border-start-width="1pt" border-end-width="1pt"
+ border-before-width="2pt" border-after-width="2pt"
+ border-before-color="rgb(100,100,100)"
+ border-after-color="rgb(200,200,200)">
+In this example, padding and border properties are specified using writing-mode relative properties:
+padding-before, padding-after, padding-start, and padding-end, etc.
+According to the specification, a request for the absolute (top, bottom, left, right) versions of these properties should use the relative ones if they are specified.
+</fo:block>
+
+ <!-- Normal text -->
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
+ line-height="1.25em"
+ space-after="3pt"
+ text-align="start"
+ background-color="rgb(200,200,200)"
+ start-indent="3mm" end-indent="3mm"
+ padding = "3mm"
+ padding-before="4mm" padding-after="4mm"
+ border-width = "2pt" border-style="solid"
+ border-color="black"
+ border-start-width="1pt" border-end-width="1pt"
+ border-before-width="2pt" border-after-width="2pt"
+ border-before-color="rgb(200,200,200)"
+ border-after-color="rgb(100,100,100)">
+In this example, padding and border properties are specified using
+shorthand and writing-mode relative properties:
+padding-before, padding-after, padding-start, and padding-end, etc.
+According to the specification, a request for the absolute (top, bottom, left, right) versions of these properties should use the relative ones if they are specified.
+</fo:block>
+
+ </fo:flow>
+ </fo:page-sequence>
+</fo:root>