# Website Parameter Reference

$Id$
Walsh Norman
2002-2005 Norman Walsh

This is reference documentation for all user-configurable parameters in the DocBook XSL Website stylesheet (for generating websites from DocBook XML sources). Note that the Website stylesheet is a customization layer of the DocBook XSL HTML stylesheet. Therefore, in addition to the Website-specific parameters listed in this section, you can also use a number of HTML stylesheet parameters to control Website output.

## General Parameters

autolayout-file filename
autolayout-file Identifies the autolayout.xml file

    <xsl:param name="autolayout-file">autolayout.xml</xsl:param>

#### Description

When the source pages are spread over several directories, this parameter can be set (for example, from the command line of a batch-mode XSLT processor) to indicate the location of the autolayout.xml file.

FIXME: for browser-based use, there needs to be a PI for this...

body.attributes attribute set
body.attributes DEPRECATED

    <xsl:attribute-set name="body.attributes">
      <xsl:attribute name="bgcolor">white</xsl:attribute>
      <xsl:attribute name="text">black</xsl:attribute>
      <xsl:attribute name="link">#0000FF</xsl:attribute>
      <xsl:attribute name="vlink">#840084</xsl:attribute>
      <xsl:attribute name="alink">#0000FF</xsl:attribute>
    </xsl:attribute-set>

#### Description

DEPRECATED

currentpage.marker string
currentpage.marker The text symbol used to mark the current page

    <xsl:param name="currentpage.marker">@</xsl:param>

#### Description

Character to use as identifying the current page in

dry-run boolean
dry-run Indicates that no files should be produced

        <xsl:param name="dry-run" select="0"></xsl:param>

#### Description

When using the XSLT processor to manage dependencies and construct the website, this parameter can be used to suppress the generation of new and updated files. Effectively, this allows you to see what the stylesheet would do, without actually making any changes.

Only applies when XSLT-based chunking is being used.

feedback.href uri
feedback.href HREF (URI) for feedback link

    <xsl:param name="feedback.href"></xsl:param>

#### Description

The `feedback.href` value is used as the value for the href attribute on the feedback link. If `feedback.href` is empty, no feedback link is generated.

feedback.link.text string
feedback.link.text The text of the feedback link

    <xsl:param name="feedback.link.text">Feedback</xsl:param>

#### Description

The contents of this variable is used as the text of the feedback link if `feedback.href` is not empty. If `feedback.href` is empty, no feedback link is generated.

feedback.with.ids boolean
feedback.with.ids Toggle use of IDs in feedback

    <xsl:param name="feedback.with.ids" select="0"></xsl:param>

#### Description

If `feedback.with.ids` is non-zero, the ID of the current page will be added to the feedback link. This can be used, for example, if the `feedback.href` is a CGI script.

filename-prefix string
filename-prefix Prefix added to all filenames

    <xsl:param name="filename-prefix"></xsl:param>

#### Description

To produce the text-only (that is, non-tabular) layout of a website simultaneously with the tabular layout, the filenames have to be distinguished. That's accomplished by adding the `filename-prefix` to the front of each filename.

footer.hr boolean
footer.hr Toggle <HR> before footer

    <xsl:param name="footer.hr" select="1"></xsl:param>

#### Description

If non-zero, an <HR> is generated at the bottom of each web page, before the footer.

header.hr boolean
header.hr Toggle <HR> after header

    <xsl:param name="header.hr" select="1"></xsl:param>

#### Description

If non-zero, an <HR> is generated at the bottom of each web page, before the footer.

output-root filename
output-root Specifies the root directory of the website

    <xsl:param name="output-root">.</xsl:param>

#### Description

When using the XSLT processor to manage dependencies and construct the website, this parameter can be used to indicate the root directory where the resulting pages are placed.

Only applies when XSLT-based chunking is being used.

rebuild-all boolean
rebuild-all Indicates that all files should be produced

    <xsl:param name="rebuild-all" select="0"></xsl:param>

#### Description

When using the XSLT processor to manage dependencies and construct the website, this parameter can be used to regenerate the whole website, updating even pages that don't appear to need to be updated.

The dependency extension only looks at the source documents. So if you change something in the stylesheet, for example, that has a global effect, you can use this parameter to force the stylesheet to rebuild the whole website.

Only applies when XSLT-based chunking is being used.

sequential.links boolean
sequential.links Make sequentional links?

    <xsl:param name="sequential.links" select="0"></xsl:param>

#### Description

FIXME

suppress.homepage.title boolean
suppress.homepage.title Suppress title on homepage?

    <xsl:param name="suppress.homepage.title" select="1"></xsl:param>

#### Description

FIXME:If non-zero, the title on the homepage is suppressed?

table.spacer.image filename
table.spacer.image Invisible pixel for tabular accessibility

    <xsl:param name="table.spacer.image">graphics/spacer.gif</xsl:param>

#### Description

This is the 1x1 pixel, transparent pixel used for the table trick to increase the accessibility of the tabular website presentation.

## Navigation Parameters

banner.before.navigation boolean
banner.before.navigation Put banner before navigation?

    <xsl:param name="banner.before.navigation" select="1"></xsl:param>

#### Description

FIXME

navbgcolor color
navbgcolor The background color of the navigation TOC

    <xsl:param name="navbgcolor">#4080FF</xsl:param>

#### Description

The background color of the navigation TOC.

Only applies with the tabular presentation is being used.

navbodywidth length
navbodywidth Specifies the width of the navigation table body

    <xsl:param name="navbodywidth"></xsl:param>

#### Description

The width of the body column.

Only applies with the tabular presentation is being used.

nav.table.summary string
nav.table.summary HTML Table summary attribute value for navigation tables

    <xsl:param name="nav.table.summary">Navigation</xsl:param>

#### Description

The value of this parameter is used as the value of the table summary attribute for the navigation table.

Only applies with the tabular presentation is being used.

navtocwidth length
navtocwidth Specifies the width of the navigation table TOC

    <xsl:param name="navtocwidth">220</xsl:param>

#### Description

The width, in pixels, of the navigation column.

Only applies with the tabular presentation is being used.

textbgcolor color
textbgcolor The background color of the table body

    <xsl:param name="textbgcolor">white</xsl:param>

#### Description

The background color of the table body.

Only applies with the tabular presentation is being used.

## ToC Parameters

toc.blank.graphic boolean
toc.blank.graphic Use graphic for "blanks" in TOC?

    <xsl:param name="toc.blank.graphic" select="1"></xsl:param>

#### Description

If non-zero, "blanks" in the the TOC will be accomplished with the graphic identified by `toc.spacer.image`.

Only applies with the tabular presentation is being used.

toc.blank.image filename
toc.blank.image The image for "blanks" in the TOC

    <xsl:param name="toc.blank.image">graphics/blank.gif</xsl:param>

#### Description

If `toc.blank.graphic` is non-zero, this image will be used to for "blanks" in the TOC.

Only applies with the tabular presentation is being used.

toc.blank.text string
toc.blank.text The text for "blanks" in the TOC

    <xsl:param name="toc.blank.text">   </xsl:param>

#### Description

If `toc.blank.graphic` is zero, this text string will be used for "blanks" in the TOC.

Only applies with the tabular presentation is being used.

toc.pointer.graphic boolean
toc.pointer.graphic Use graphic for TOC pointer?

    <xsl:param name="toc.pointer.graphic" select="1"></xsl:param>

#### Description

If non-zero, the "pointer" in the TOC will be displayed with the graphic identified by `toc.pointer.image`.

Only applies with the tabular presentation is being used.

toc.pointer.image filename
toc.pointer.image The image for the "pointer" in the TOC

    <xsl:param name="toc.pointer.image">graphics/arrow.gif</xsl:param>

#### Description

If `toc.pointer.graphic` is non-zero, this image will be used for the "pointer" in the TOC.

Only applies with the tabular presentation is being used.

toc.pointer.text string
toc.pointer.text The text for the "pointer" in the TOC

    <xsl:param name="toc.pointer.text"> > </xsl:param>

#### Description

If `toc.pointer.graphic` is zero, this text string will be used to display the "pointer" in the TOC.

Only applies with the tabular presentation is being used.

toc.spacer.graphic boolean
toc.spacer.graphic Use graphic for TOC spacer?

    <xsl:param name="toc.spacer.graphic" select="1"></xsl:param>

#### Description

If non-zero, the indentation in the TOC will be accomplished with the graphic identified by `toc.spacer.image`.

Only applies with the tabular presentation is being used.

toc.spacer.image filename
toc.spacer.image The image for spacing the TOC

    <xsl:param name="toc.spacer.image">graphics/blank.gif</xsl:param>

#### Description

If `toc.spacer.graphic` is non-zero, this image will be used to indent the TOC.

Only applies with the tabular presentation is being used.

toc.spacer.text string
toc.spacer.text The text for spacing the TOC

    <xsl:param name="toc.spacer.text">   </xsl:param>

#### Description

If `toc.spacer.graphic` is zero, this text string will be used to indent the TOC.

Only applies with the tabular presentation is being used.

## The Stylesheet

The `param.xsl` stylesheet is just a wrapper around all these parameters.

    <!-- This file is generated from param.xweb -->

    <xsl:stylesheet exclude-result-prefixes="src" version="1.0">

    <!-- ********************************************************************
         $Id$
         ********************************************************************

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

         ******************************************************************** -->

    <src:fragref linkend="autolayout-file.frag"></src:fragref>
    <src:fragref linkend="header.hr.frag"></src:fragref>
    <src:fragref linkend="footer.hr.frag"></src:fragref>
    <src:fragref linkend="feedback.href.frag"></src:fragref>
    <src:fragref linkend="feedback.with.ids.frag"></src:fragref>
    <src:fragref linkend="feedback.link.text.frag"></src:fragref>
    <src:fragref linkend="filename-prefix.frag"></src:fragref>
    <src:fragref linkend="output-root.frag"></src:fragref>
    <src:fragref linkend="dry-run.frag"></src:fragref>
    <src:fragref linkend="rebuild-all.frag"></src:fragref>
    <src:fragref linkend="nav.table.summary.frag"></src:fragref>
    <src:fragref linkend="navtocwidth.frag"></src:fragref>
    <src:fragref linkend="navbodywidth.frag"></src:fragref>
    <src:fragref linkend="textbgcolor.frag"></src:fragref>
    <src:fragref linkend="navbgcolor.frag"></src:fragref>
    <src:fragref linkend="toc.spacer.graphic.frag"></src:fragref>
    <src:fragref linkend="toc.spacer.text.frag"></src:fragref>
    <src:fragref linkend="toc.spacer.image.frag"></src:fragref>
    <src:fragref linkend="toc.pointer.graphic.frag"></src:fragref>
    <src:fragref linkend="toc.pointer.text.frag"></src:fragref>
    <src:fragref linkend="toc.pointer.image.frag"></src:fragref>
    <src:fragref linkend="toc.blank.graphic.frag"></src:fragref>
    <src:fragref linkend="toc.blank.text.frag"></src:fragref>
    <src:fragref linkend="toc.blank.image.frag"></src:fragref>
    <src:fragref linkend="suppress.homepage.title.frag"></src:fragref>
    <src:fragref linkend="body.attributes.frag"></src:fragref>
    <src:fragref linkend="sequential.links.frag"></src:fragref>
    <src:fragref linkend="currentpage.marker.frag"></src:fragref>
    <src:fragref linkend="banner.before.navigation.frag"></src:fragref>
    <src:fragref linkend="table.spacer.image.frag"></src:fragref>

    </xsl:stylesheet>