<?xml version="1.0" encoding="ASCII"?>
<book version="5.0">
  <info>
    <title>Roundtrip Parameter Reference</title>
    <releaseinfo role="meta">
      $Id$
    </releaseinfo>
    <author>
      <personname>
      <surname>Ball</surname>
      <firstname>Steve</firstname>
      </personname>
    </author>
    <copyright>
      <year>2004-2011</year>
     
      <holder>Steve Ball</holder>
    </copyright>
    <abstract>
      <para>This is reference documentation for all user-configurable
      parameters in the DocBook &#8220;Roundtrip&#8221; Stylesheets (for
      transforming DocBook to WordML, OpenDocument, and Apple Pages,
      and for converting from those formats back to DocBook).</para>
    </abstract>
  </info>
  <reference xml:id="params">
  <title>Parameters</title>
<refentry version="5.0" xml:id="wordml.template">
<refmeta>
<refentrytitle>wordml.template</refentrytitle>
<refmiscinfo class="other" otherclass="datatype">uri</refmiscinfo>
</refmeta>
<refnamediv>
<refname>wordml.template</refname>
<refpurpose>Specify the template WordML document</refpurpose>
</refnamediv>

<refsynopsisdiv>
<programlisting xml:id="wordml.template.frag">
&lt;xsl:param name="wordml.template"&gt;&lt;/xsl:param&gt;
</programlisting>
</refsynopsisdiv>

<refsection><info><title>Description</title></info>

<para>The <parameter>wordml.template</parameter> parameter specifies a WordML document to use as a template for the generated document.  The template document is used to define the (extensive) headers for the generated document, in particular the paragraph and character styles that are used to format the various elements.  Any content in the template document is ignored.</para>

<para>A template document is used in order to allow maintenance of the paragraph and character styles to be done using Word itself, rather than these XSL stylesheets.</para>

</refsection>
</refentry>

<refentry version="5.0" xml:id="pages.template">
<refmeta>
<refentrytitle>pages.template</refentrytitle>
<refmiscinfo class="other" otherclass="datatype">uri</refmiscinfo>
</refmeta>
<refnamediv>
<refname>pages.template</refname>
<refpurpose>Specify the template Pages document</refpurpose>
</refnamediv>

<refsynopsisdiv>
<programlisting xml:id="pages.template.frag">
&lt;xsl:param name="pages.template"&gt;&lt;/xsl:param&gt;
</programlisting>
</refsynopsisdiv>

<refsection><info><title>Description</title></info>

<para>The <parameter>pages.template</parameter> parameter specifies a Pages (the Apple word processing application) document to use as a template for the generated document.  The template document is used to define the (extensive) headers for the generated document, in particular the paragraph and character styles that are used to format the various elements.  Any content in the template document is ignored.</para>

<para>A template document is used in order to allow maintenance of the paragraph and character styles to be done using Pages itself, rather than these XSL stylesheets.</para>

</refsection>
</refentry>

  </reference>
  <appendix xml:id="stylesheet">
    <title>The Stylesheet</title>
    <para>The <filename>param.xsl</filename> stylesheet is just a
      wrapper around all of these parameters.</para>
    <programlisting xml:id="top">
&lt;xsl:stylesheet exclude-result-prefixes="src" version="1.0"&gt;

&lt;!-- This file is generated from param.xweb --&gt;

&lt;!-- ********************************************************************
     $Id$
     ********************************************************************

     This file is part of the XSL DocBook Stylesheet distribution.
     See ../README or http://docbook.sf.net/release/xsl/current/ for
     copyright and other information.

     ******************************************************************** --&gt;

&lt;src:fragref linkend="wordml.template.frag"&gt;&lt;/src:fragref&gt;
&lt;src:fragref linkend="pages.template.frag"&gt;&lt;/src:fragref&gt;
&lt;/xsl:stylesheet&gt;
    </programlisting>
  </appendix>
</book>
