<?xml version='1.0' encoding='ISO-8859-1'?>

<!-- This file makes part of an XSL Test Suite -->
<!-- Paragraph styles: lists                   -->

<plain-doc xmlns:fo="http://www.w3.org/1999/XSL/Format">

  <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
           xmlns:dcterms="http://purl.org/dc/terms/"
           xmlns:dc="http://purl.org/dc/elements/1.1/"
           xmlns:db="http://www.oasis-open.org/docbook/xml/4.2/">
     <rdf:Description rdf:about="http://xep.xattic.com/testsuite/features/lists.xml">
        <dc:title>Lists and Bullets</dc:title>
        <dc:description>
          <db:para>
             Tests XSL-FO elements to build various lists.
          </db:para>
        </dc:description>
        <dc:date>2003-07-25</dc:date><dcterms:requires rdf:resource="http://xep.xattic.com/testsuite/features/macro.xsl"/>
    </rdf:Description>
  </rdf:RDF> 

<!-- ================================================ -->
<!-- Macros.                                          -->

<define-macro name="ordinal-1">first</define-macro>
<define-macro name="ordinal-2">second</define-macro>
<define-macro name="ordinal-3">third</define-macro>
<define-macro name="ordinal-4">fourth</define-macro>
<define-macro name="ordinal-5">fifth</define-macro>
<define-macro name="ordinal-6">sixth</define-macro>
<define-macro name="ordinal-7">seventh</define-macro>
<define-macro name="ordinal-8">eighth</define-macro>
<define-macro name="ordinal-9">ninth</define-macro>
<define-macro name="ordinal-10">tenth</define-macro>

<define-macro name="ZapfBullet">
  <fo:list-item-label  end-indent="label-end()">
    <p font-family="ZapfDingbats"><arg/></p>
  </fo:list-item-label>
</define-macro>

<define-macro name="ZapfList">
  <ul provisional-distance-between-starts="0.25in"
      provisional-label-separation="3pt">
    <repeat times="$arg">
     <fo:list-item>
      <macro name="ZapfBullet" arg="$arg1"/>
      <fo:list-item-body start-indent="body-start()">
        <p><macro name="ordinal-{$counter}"/> item</p>
      </fo:list-item-body>      
     </fo:list-item>
    </repeat>
  </ul>
</define-macro>


<!-- ================================================ -->
<!-- Document body                                    -->

<title> Lists and Bullets  </title>
<text> This text aims at testing list functionality. </text>

<h2> Plain lists </h2>

<ul font-family="Times">
  <repeat times="5"> 
    <fo:list-item>
      <macro name="ZapfBullet" arg="&#x2713;"/>
      <fo:list-item-body start-indent="body-start()">
        <p>
          This is the <macro name="ordinal-{$counter}"/> entry 
          in a plain unordered list. 
          A check symbol is displayed in the bullet.
        </p>
      </fo:list-item-body>
    </fo:list-item>
  </repeat> 
</ul>

<!-- ================================================ -->
<h2> 
  <code>Provisional-distance-between-starts</code> and 
  <code>provisional-label-separation</code> attributes
</h2>

<repeat from="0" times="5">
  <ul provisional-distance-between-starts="{[2 + 0.25 * $counter]}in"
      provisional-label-separation="{[0.5 * $counter]}in"
      space-after.optimum="3pt">
    <fo:list-item>
    <fo:list-item-label end-indent="label-end()">
      <fo:block background-color="#FFE0E0"
                padding="3pt 0pt"
                text-align="center">
        <formula expr="$counter + 1"/>.
      </fo:block>
    </fo:list-item-label>

    <fo:list-item-body start-indent="body-start()">
      <fo:block background-color="#E0E0FF"
                font="10pt Courier"
                padding="3pt 0pt"
                text-align="center">
        <p>distance-between-starts = <formula expr="2 + 0.25 * $counter"/> in</p>
        <p>label-separation = <formula expr="0.5 * $counter"/> in </p>
      </fo:block>
    </fo:list-item-body>
    </fo:list-item>
  </ul>
</repeat>


<!-- ================================================ -->
<h2> 
  <code>Start-indent</code> and <code>end-indent</code>
  attributes on list-item / list-body
</h2>

<repeat from="0" times="4">
  <ul space-after.optimum="3pt" font="10pt Courier" text-align="center">
    <fo:list-item>
    <fo:list-item-label end-indent="{[$counter * 0.5 + 3]}in">
      <fo:block border="thin solid #C00000"
                background-color="#FFE0E0"
                padding="3pt 6pt">
        <p>end-indent = <formula expr="$counter * 0.5 + 3"/> in </p>
      </fo:block>
    </fo:list-item-label>

    <fo:list-item-body start-indent="{[4.5 - $counter * 0.5]}in">
      <fo:block border="thin solid #0000C0"
                background-color="#E0E0FF"
                padding="3pt 6pt">
        <p>start-indent = <formula expr="4.5 - $counter * 0.5"/> in</p>
      </fo:block>
    </fo:list-item-body>
    </fo:list-item>
  </ul>
</repeat>




<!-- ================================================ -->
<h2> Nested lists </h2>

<ul provisional-distance-between-starts="3in"
    provisional-label-separation="0.1in"
    space-after.optimum="3pt">

  <repeat times="4">
    <fo:list-item>
    <fo:list-item-label  end-indent="label-end()">
      <p> 
        This is the <i>label</i> area of the 
        <macro name="ordinal-{$counter}"/> item 
      </p>
      <macro name="ZapfList" arg="{[$counter + 1]}" arg1="&#x27A1;"/>
    </fo:list-item-label>

    <fo:list-item-body  start-indent="body-start()">
      <p>
        This is the <i>body</i> area of the 
        <macro name="ordinal-{$counter}"/> item 
      </p>
     <macro name="ZapfList" arg="{[2 * $counter]}" arg1="&#x27B2;"/>
    </fo:list-item-body>
    </fo:list-item>

  </repeat>
</ul>

</plain-doc>

