could use them.
</releaseinfo>
<author><surname>Walsh</surname>
<firstname>Norman</firstname></author>
-<copyright><year>1999</year><year>2007</year>
+<copyright><year>1999-2007</year>
<holder>Norman Walsh</holder>
</copyright>
</referenceinfo>
<doc:template name="is.component" xmlns="">
<refpurpose>Tests if a given node is a component-level element</refpurpose>
-<refdescription>
+<refdescription id="is.component-desc">
<para>This template returns '1' if the specified node is a component
(Chapter, Appendix, etc.), and '0' otherwise.</para>
</refdescription>
-<refparameter>
+<refparameter id="is.component-params">
<variablelist>
<varlistentry><term>node</term>
<listitem>
</variablelist>
</refparameter>
-<refreturn>
+<refreturn id="is.component-returns">
<para>This template returns '1' if the specified node is a component
(Chapter, Appendix, etc.), and '0' otherwise.</para>
</refreturn>
<doc:template name="is.section" xmlns="">
<refpurpose>Tests if a given node is a section-level element</refpurpose>
-<refdescription>
+<refdescription id="is.section-desc">
<para>This template returns '1' if the specified node is a section
(Section, Sect1, Sect2, etc.), and '0' otherwise.</para>
</refdescription>
-<refparameter>
+<refparameter id="is.section-params">
<variablelist>
<varlistentry><term>node</term>
<listitem>
</variablelist>
</refparameter>
-<refreturn>
+<refreturn id="is.section-returns">
<para>This template returns '1' if the specified node is a section
(Section, Sect1, Sect2, etc.), and '0' otherwise.</para>
</refreturn>
<doc:template name="section.level" xmlns="">
<refpurpose>Returns the hierarchical level of a section</refpurpose>
-<refdescription>
+<refdescription id="section.level-desc">
<para>This template calculates the hierarchical level of a section.
The element <sgmltag>sect1</sgmltag> is at level 1, <sgmltag>sect2</sgmltag> is
at level 2, etc.</para>
<para>Recursive sections are calculated down to the fifth level.</para>
</refdescription>
-<refparameter>
+<refparameter id="section.level-params">
<variablelist>
<varlistentry><term>node</term>
<listitem>
</variablelist>
</refparameter>
-<refreturn>
+<refreturn id="section.level-returns">
<para>The section level, <quote>1</quote>, <quote>2</quote>, etc.
</para>
</refreturn>
<doc:template name="qanda.section.level" xmlns="">
<refpurpose>Returns the hierarchical level of a QandASet</refpurpose>
-<refdescription>
+<refdescription id="qanda.section.level-desc">
<para>This template calculates the hierarchical level of a QandASet.
</para>
</refdescription>
-<refreturn>
+<refreturn id="qanda.section.level-returns">
<para>The level, <quote>1</quote>, <quote>2</quote>, etc.
</para>
</refreturn>
<doc:template name="select.mediaobject" xmlns="">
<refpurpose>Selects and processes an appropriate media object from a list</refpurpose>
-<refdescription>
+<refdescription id="select.mediaobject-desc">
<para>This template takes a list of media objects (usually the
children of a mediaobject or inlinemediaobject) and processes
the "right" object.</para>
<para>If no acceptable object is located, nothing happens.</para>
</refdescription>
-<refparameter>
+<refparameter id="select.mediaobject-params">
<variablelist>
<varlistentry><term>olist</term>
<listitem>
</variablelist>
</refparameter>
-<refreturn>
+<refreturn id="select.mediaobject-returns">
<para>Calls <xsl:apply-templates> on the selected object.</para>
</refreturn>
</doc:template>
<doc:template name="select.mediaobject.index" xmlns="">
<refpurpose>Selects the position of the appropriate media object from a list</refpurpose>
-<refdescription>
+<refdescription id="select.mediaobject.index-desc">
<para>This template takes a list of media objects (usually the
children of a mediaobject or inlinemediaobject) and determines
the "right" object. It returns the position of that object
<para>If no acceptable object is located, no index is returned.</para>
</refdescription>
-<refparameter>
+<refparameter id="select.mediaobject.index-params">
<variablelist>
<varlistentry><term>olist</term>
<listitem>
</variablelist>
</refparameter>
-<refreturn>
+<refreturn id="select.mediaobject.index-returns">
<para>Returns the position in the original list of the selected object.</para>
</refreturn>
</doc:template>
<doc:template name="is.acceptable.mediaobject" xmlns="">
<refpurpose>Returns '1' if the specified media object is recognized</refpurpose>
-<refdescription>
+<refdescription id="is.acceptable.mediaobject-desc">
<para>This template examines a media object and returns '1' if the
object is recognized as a graphic.</para>
</refdescription>
-<refparameter>
+<refparameter id="is.acceptable.mediaobject-params">
<variablelist>
<varlistentry><term>object</term>
<listitem>
</variablelist>
</refparameter>
-<refreturn>
+<refreturn id="is.acceptable.mediaobject-returns">
<para>0 or 1</para>
</refreturn>
</doc:template>
<doc:template name="check.id.unique" xmlns="">
<refpurpose>Warn users about references to non-unique IDs</refpurpose>
-<refdescription>
+<refdescription id="check.id.unique-desc">
<para>If passed an ID in <varname>linkend</varname>,
<function>check.id.unique</function> prints
a warning message to the user if either the ID does not exist or
<doc:template name="check.idref.targets" xmlns="">
<refpurpose>Warn users about incorrectly typed references</refpurpose>
-<refdescription>
+<refdescription id="check.idref.targets-desc">
<para>If passed an ID in <varname>linkend</varname>,
<function>check.idref.targets</function> makes sure that the element
pointed to by the link is one of the elements listed in
<doc:template name="copyright.years" xmlns="">
<refpurpose>Print a set of years with collapsed ranges</refpurpose>
-<refdescription>
+<refdescription id="copyright.years-desc">
<para>This template prints a list of year elements with consecutive
years printed as a range. In other words:</para>
(<quote>1999</quote> not <quote>99</quote>) notation.</para>
</refdescription>
-<refparameter>
+<refparameter id="copyright.years-params">
<variablelist>
<varlistentry><term>years</term>
<listitem>
</variablelist>
</refparameter>
-<refreturn>
+<refreturn id="copyright.years-returns">
<para>This template returns the formatted list of years.</para>
</refreturn>
</doc:template>
<doc:template name="find.path.params" xmlns="">
<refpurpose>Search in a table for the "best" match for the node</refpurpose>
-<refdescription>
+<refdescription id="find.path.params-desc">
<para>This template searches in a table for the value that most-closely
(in the typical best-match sense of XSLT) matches the current (element)
node location.</para>
<doc:template name="string.upper" xmlns="">
<refpurpose>Converts a string to all uppercase letters</refpurpose>
-<refdescription>
+<refdescription id="string.upper-desc">
<para>Given a string, this template does a language-aware conversion
of that string to all uppercase letters, based on the values of the
<literal>lowercase.alpha</literal> and
unchanged.</para>
</refdescription>
-<refparameter>
+<refparameter id="string.upper-params">
<variablelist>
<varlistentry><term>string</term>
<listitem>
<doc:template name="string.lower" xmlns="">
<refpurpose>Converts a string to all lowercase letters</refpurpose>
-<refdescription>
+<refdescription id="string.lower-desc">
<para>Given a string, this template does a language-aware conversion
of that string to all lowercase letters, based on the values of the
<literal>uppercase.alpha</literal> and
unchanged.</para>
</refdescription>
-<refparameter>
+<refparameter id="string.lower-params">
<variablelist>
<varlistentry><term>string</term>
<listitem>
<doc:template name="select.choice.separator" xmlns="">
<refpurpose>Returns localized choice separator</refpurpose>
- <refdescription>
+ <refdescription id="select.choice.separator-desc">
<para>This template enables auto-generation of an appropriate
localized "choice" separator (for example, "and" or "or") before
the final item in an inline list (though it could also be useful
<doc:template name="evaluate.info.profile" xmlns="">
<refpurpose>Evaluates an info profile</refpurpose>
- <refdescription>
+ <refdescription id="evaluate.info.profile-desc">
<para>This template evaluates an "info profile" matching the XPath
expression given by the <parameter>profile</parameter>
parameter. It relies on the XSLT <function>evaluate()</function>
expression is then evaluated using the XSLT
<function>evaluate()</function> extension function.</para>
</refdescription>
- <refparameter>
+ <refparameter id="evaluate.info.profile-params">
<variablelist>
<varlistentry>
<term>profile</term>
</variablelist>
</refparameter>
- <refreturn>
+ <refreturn id="evaluate.info.profile-returns">
<para>Returns a node (the result of evaluating the
<parameter>profile</parameter> parameter)</para>
</refreturn>
<doc:mode mode="label.markup" xmlns="">
<refpurpose>Provides access to element labels</refpurpose>
-<refdescription>
+<refdescription id="label.markup-desc">
<para>Processing an element in the
<literal role="mode">label.markup</literal> mode produces the
element label.</para>
<doc:template name="label.this.section" xmlns="">
<refpurpose>Returns true if $section should be labelled</refpurpose>
-<refdescription>
+<refdescription id="label.this.section-desc">
<para>Returns true if the specified section should be labelled.
By default, this template returns zero unless
the section level is less than or equal to the value of the
<doc:template name="autolabel.format" xmlns="">
<refpurpose>Returns format for autolabel parameters</refpurpose>
-<refdescription>
+<refdescription id="autolabel.format-desc">
<para>Returns format passed as parameter if non zero. Supported
format are 'arabic' or '1', 'loweralpha' or 'a', 'lowerroman' or 'i',
'upperlapha' or 'A', 'upperroman' or 'I', 'arabicindic' or '١'.
<!-- ==================================================================== -->
<doc:template name="get.refentry.metadata" xmlns="">
<refpurpose>Gathers metadata from a refentry and its ancestors</refpurpose>
- <refdescription>
+ <refdescription id="get.refentry.metadata-desc">
<para>Reference documentation for particular commands, functions,
etc., is sometimes viewed in isolation from its greater "context". For
example, users view Unix man pages as, well, individual pages, not as
</note>
</refdescription>
- <refparameter>
+ <refparameter id="get.refentry.metadata-params">
<variablelist>
<varlistentry>
<term>refname</term>
</varlistentry>
</variablelist>
</refparameter>
- <refreturn>
+ <refreturn id="get.refentry.metadata-returns">
<para>Returns a node set with the following elements. The
descriptions are verbatim from the <literal>man(7)</literal> man
page.
<!-- ====================================================================== -->
<doc:template name="get.refentry.title" xmlns="">
<refpurpose>Gets title metadata for a refentry</refpurpose>
- <refdescription>
+ <refdescription id="get.refentry.title-desc">
<para>The <literal>man(7)</literal> man page describes this as "the
title of the man page (e.g., <literal>MAN</literal>). This differs
from <sgmltag>refname</sgmltag> in that, if the <sgmltag>refentry</sgmltag> has a
otherwise, we just use first <sgmltag>refname</sgmltag> in the first
<sgmltag>refnamediv</sgmltag> in the source.</para>
</refdescription>
- <refparameter>
+ <refparameter id="get.refentry.title-params">
<variablelist>
<varlistentry>
<term>refname</term>
</varlistentry>
</variablelist>
</refparameter>
- <refreturn>
+ <refreturn id="get.refentry.title-returns">
<para>Returns a <sgmltag>title</sgmltag> node.</para></refreturn>
</doc:template>
<xsl:template name="get.refentry.title">
<!-- ==================================================================== -->
<doc:template name="get.refentry.section" xmlns="">
<refpurpose>Gets section metadata for a refentry</refpurpose>
- <refdescription>
+ <refdescription id="get.refentry.section-desc">
<para>The <literal>man(7)</literal> man page describes this as "the
section number the man page should be placed in (e.g.,
<literal>7</literal>)". If we do not find a <sgmltag>manvolnum</sgmltag>
default to using <literal>1</literal> ["Executable programs or shell
commands"].</para>
</refdescription>
- <refparameter>
+ <refparameter id="get.refentry.section-params">
<variablelist>
<varlistentry>
<term>refname</term>
</varlistentry>
</variablelist>
</refparameter>
- <refreturn>
+ <refreturn id="get.refentry.section-returns">
<para>Returns a string representing a section number.</para></refreturn>
</doc:template>
<xsl:template name="get.refentry.section">
<!-- ==================================================================== -->
<doc:template name="get.refentry.date" xmlns="">
<refpurpose>Gets date metadata for a refentry</refpurpose>
- <refdescription>
+ <refdescription id="get.refentry.date-desc">
<para>The <literal>man(7)</literal> man page describes this as "the
date of the last revision". If we cannot find a date in the source, we
generate one.</para>
</refdescription>
- <refparameter>
+ <refparameter id="get.refentry.date-params">
<variablelist>
<varlistentry>
<term>refname</term>
</varlistentry>
</variablelist>
</refparameter>
- <refreturn>
+ <refreturn id="get.refentry.date-returns">
<para>Returns a <sgmltag>date</sgmltag> node.</para>
</refreturn>
</doc:template>
<!-- ==================================================================== -->
<doc:template name="get.refentry.source" xmlns="">
<refpurpose>Gets source metadata for a refentry</refpurpose>
- <refdescription>
+ <refdescription id="get.refentry.source-desc">
<para>The <literal>man(7)</literal> man page describes this as "the
source of the command", and provides the following examples:
<itemizedlist>
probably will be no <replaceable>Version</replaceable>.
</para>
</refdescription>
- <refparameter>
+ <refparameter id="get.refentry.source-params">
<variablelist>
<varlistentry>
<term>refname</term>
</varlistentry>
</variablelist>
</refparameter>
- <refreturn>
+ <refreturn id="get.refentry.source-returns">
<para>Returns a <sgmltag>source</sgmltag> node.</para>
</refreturn>
</doc:template>
<!-- ==================================================================== -->
<doc:template name="get.refentry.source.name" xmlns="">
<refpurpose>Gets source-name metadata for a refentry</refpurpose>
- <refdescription>
+ <refdescription id="get.refentry.source.name-desc">
<para>A "source name" is one part of a (potentially) two-part
<replaceable>Name</replaceable> <replaceable>Version</replaceable>
source field. For more details, see the documentation for the
<function>get.refentry.source</function> template.</para>
</refdescription>
- <refparameter>
+ <refparameter id="get.refentry.source.name-params">
<variablelist>
<varlistentry>
<term>refname</term>
</varlistentry>
</variablelist>
</refparameter>
- <refreturn>
+ <refreturn id="get.refentry.source.name-returns">
<para>Depending on what output method is used for the
current stylesheet, either returns a text node or possibly an element
node, containing "source name" data.</para>
<!-- ==================================================================== -->
<doc:template name="get.refentry.version" xmlns="">
<refpurpose>Gets version metadata for a refentry</refpurpose>
- <refdescription>
+ <refdescription id="get.refentry.version-desc">
<para>A "version" is one part of a (potentially) two-part
<replaceable>Name</replaceable> <replaceable>Version</replaceable>
source field. For more details, see the documentation for the
<function>get.refentry.source</function> template.</para>
</refdescription>
- <refparameter>
+ <refparameter id="get.refentry.version-params">
<variablelist>
<varlistentry>
<term>refname</term>
</varlistentry>
</variablelist>
</refparameter>
- <refreturn>
+ <refreturn id="get.refentry.version-returns">
<para>Depending on what output method is used for the
current stylesheet, either returns a text node or possibly an element
node, containing "version" data.</para>
<!-- ==================================================================== -->
<doc:template name="get.refentry.manual" xmlns="">
<refpurpose>Gets source metadata for a refentry</refpurpose>
- <refdescription>
+ <refdescription id="get.refentry.manual-desc">
<para>The <literal>man(7)</literal> man page describes this as "the
title of the manual (e.g., <citetitle>Linux Programmer's
Manual</citetitle>)". Here are some examples from existing man pages:
</para>
</refdescription>
- <refparameter>
+ <refparameter id="get.refentry.manual-params">
<variablelist>
<varlistentry>
<term>refname</term>
</varlistentry>
</variablelist>
</refparameter>
- <refreturn>
+ <refreturn id="get.refentry.manual-returns">
<para>Returns a <sgmltag>manual</sgmltag> node.</para>
</refreturn>
</doc:template>
<!-- ====================================================================== -->
<doc:template name="get.refentry.metadata.prefs" xmlns="">
<refpurpose>Gets user preferences for refentry metadata gathering</refpurpose>
- <refdescription>
+ <refdescription id="get.refentry.metadata.prefs-desc">
<para>The DocBook XSL stylesheets include several user-configurable
global stylesheet parameters for controlling <sgmltag>refentry</sgmltag>
metadata gathering. Those parameters are not read directly by the
template is the only interface to collecting stylesheet parameters for
controlling <sgmltag>refentry</sgmltag> metadata gathering.</para>
</refdescription>
- <refparameter>
+ <refparameter id="get.refentry.metadata.prefs-params">
<para>There are no local parameters for this template; however, it
does rely on a number of global parameters.</para>
</refparameter>
- <refreturn>
+ <refreturn id="get.refentry.metadata.prefs-returns">
<para>Returns a <sgmltag>manual</sgmltag> node.</para>
</refreturn>
</doc:template>
<!-- ====================================================================== -->
<doc:template name="set.refentry.metadata" xmlns="">
<refpurpose>Sets content of a refentry metadata item</refpurpose>
- <refdescription>
+ <refdescription id="set.refentry.metadata-desc">
<para>The <function>set.refentry.metadata</function> template is
called each time a suitable source element is found for a certain
metadata field.</para>
</refdescription>
- <refparameter>
+ <refparameter id="set.refentry.metadata-params">
<variablelist>
<varlistentry>
<term>refname</term>
</varlistentry>
</variablelist>
</refparameter>
- <refreturn>
+ <refreturn id="set.refentry.metadata-returns">
<para>Returns formatted contents of a selected source element.</para></refreturn>
</doc:template>
<xsl:template name="set.refentry.metadata">
<doc:mode mode="subtitle.markup" xmlns="">
<refpurpose>Provides access to element subtitles</refpurpose>
-<refdescription>
+<refdescription id="subtitle.markup-desc">
<para>Processing an element in the
<literal role="mode">subtitle.markup</literal> mode produces the
subtitle of the element.
<doc:template name="entry.colnum" xmlns="">
<refpurpose>Determine the column number in which a given entry occurs</refpurpose>
-<refdescription>
+<refdescription id="entry.colnum-desc">
<para>If an <sgmltag>entry</sgmltag> has a
<sgmltag class="attribute">colname</sgmltag> or
<sgmltag class="attribute">namest</sgmltag> attribute, this template
will determine the number of the column in which the entry should occur.
For other <sgmltag>entry</sgmltag>s, nothing is returned.</para>
</refdescription>
-<refparameter>
+<refparameter id="entry.colnum-params">
<variablelist>
<varlistentry><term>entry</term>
<listitem>
</variablelist>
</refparameter>
-<refreturn>
+<refreturn id="entry.colnum-returns">
<para>This template returns the column number if it can be determined,
or 0 (the empty string)</para>
</refreturn>
<doc:mode mode="collect.targets" xmlns="">
<refpurpose>Collects information for potential cross reference targets</refpurpose>
-<refdescription>
+<refdescription id="collect.targets-desc">
<para>Processing the root element in the
<literal role="mode">collect.targets</literal> mode produces
a set of target database elements that can be used by
<doc:mode mode="title.markup" xmlns="">
<refpurpose>Provides access to element titles</refpurpose>
-<refdescription>
+<refdescription id="title.markup-desc">
<para>Processing an element in the
<literal role="mode">title.markup</literal> mode produces the
title of the element. This does not include the label.
<doc:template name="log.message" xmlns="">
<refpurpose>Logs/emits formatted notes and warnings</refpurpose>
- <refdescription>
+ <refdescription id="log.message-desc">
<para>The <function>log.message</function> template is a utility
template for logging/emitting formatted messages – that is,
notes and warnings, along with a given log “level” and an
identifier for the “source” that the message relates to.</para>
</refdescription>
- <refparameter>
+ <refparameter id="log.message-params">
<variablelist>
<varlistentry>
<term>level</term>
</varlistentry>
</variablelist>
</refparameter>
- <refreturn>
+ <refreturn id="log.message-returns">
<para>Outputs a message (generally, to standard error).</para></refreturn>
</doc:template>
<xsl:template name="log.message">
<!-- ===================================== -->
<doc:template name="get.doc.title" xmlns="">
<refpurpose>Gets a title from the current document</refpurpose>
- <refdescription>
+ <refdescription id="get.doc.title-desc">
<para>The <function>get.doc.title</function> template is a
utility template for returning the first title found in the
current document.</para>
</refdescription>
- <refreturn>
+ <refreturn id="get.doc.title-returns">
<para>Returns a string containing some identifying title for the
current document .</para></refreturn>
</doc:template>
<!-- ===================================== -->
<doc:template name="pad-string" xmlns="">
<refpurpose>Right-pads or left-pads a string out to a certain length</refpurpose>
- <refdescription>
+ <refdescription id="pad-string-desc">
<para>This function takes string <parameter>padVar</parameter> and
pads it out in the direction <parameter>rightLeft</parameter> to
the string-length <parameter>length</parameter>, using string
FAQ</ulink>.</para>
</note>
</refdescription>
- <refreturn>
+ <refreturn id="pad-string-returns">
<para>Returns a (padded) string.</para></refreturn>
</doc:template>
<xsl:template name="pad-string">
<refpurpose>Filename for chunk</refpurpose>
</refnamediv>
-<refsect1>
+<refsect1 id="dbhtml.filename-desc">
<title>Description</title>
<para>Sets the name for chunked file. PI must be child of element
</refsect1>
-<refsect1>
+<refsect1 id="dbhtml.filename-exampl">
<title>Example</title>
<programlisting><![CDATA[<section>
<refpurpose>Directory for chunk</refpurpose>
</refnamediv>
-<refsect1>
+<refsect1 id="dbhtml.dir-desc">
<title>Description</title>
<para>Sets the directory for chunked file. PI must be child of element
</refsect1>
-<refsect1>
+<refsect1 id="dbhtml.dir-example">
<title>Example</title>
<programlisting><![CDATA[<section>