]> git.stg.codes - stg.git/blobdiff - doc/help/xslt/common/common.xml
xslt filters moved upper, Makefiles fixed to use bundled xslt filters
[stg.git] / doc / help / xslt / common / common.xml
diff --git a/doc/help/xslt/common/common.xml b/doc/help/xslt/common/common.xml
deleted file mode 100644 (file)
index da79980..0000000
+++ /dev/null
@@ -1,622 +0,0 @@
-<?xml version="1.0"?>
-
-<reference xml:id="base">
-  <info>
-    <title>Common » Base Template Reference</title>
-    <releaseinfo role="meta">
-      $Id: common.xsl 8784 2010-07-28 12:32:54Z mzjn $
-    </releaseinfo>
-  </info>
-  
-  <partintro xml:id="partintro">
-    <title>Introduction</title>
-    
-<para>This is technical reference documentation for the “base”
-      set of common templates in the DocBook XSL Stylesheets.</para>
-
-    
-<para>This is not intended to be user documentation. It is
-      provided for developers writing customization layers for the
-      stylesheets.</para>
-
-  </partintro>
-
-<refentry xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="template.is.component">
-<refnamediv>
-<refname>is.component</refname>
-<refpurpose>Tests if a given node is a component-level element</refpurpose>
-</refnamediv>
-<refsynopsisdiv>
-<synopsis>&lt;xsl:template name="is.component"&gt;
-&lt;xsl:param name="node" select="."/&gt;
-  ...
-&lt;/xsl:template&gt;</synopsis>
-</refsynopsisdiv>
-<refsect1><title>Description</title>
-
-<para>This template returns '1' if the specified node is a component
-(Chapter, Appendix, etc.), and '0' otherwise.</para>
-
-</refsect1><refsect1><title>Parameters</title>
-
-<variablelist>
-<varlistentry><term>node</term>
-<listitem>
-
-<para>The node which is to be tested.</para>
-
-</listitem>
-</varlistentry>
-</variablelist>
-
-</refsect1><refsect1><title>Returns</title>
-
-<para>This template returns '1' if the specified node is a component
-(Chapter, Appendix, etc.), and '0' otherwise.</para>
-
-</refsect1></refentry>
-
-<refentry xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="template.is.section">
-<refnamediv>
-<refname>is.section</refname>
-<refpurpose>Tests if a given node is a section-level element</refpurpose>
-</refnamediv>
-<refsynopsisdiv>
-<synopsis>&lt;xsl:template name="is.section"&gt;
-&lt;xsl:param name="node" select="."/&gt;
-  ...
-&lt;/xsl:template&gt;</synopsis>
-</refsynopsisdiv>
-<refsect1><title>Description</title>
-
-<para>This template returns '1' if the specified node is a section
-(Section, Sect1, Sect2, etc.), and '0' otherwise.</para>
-
-</refsect1><refsect1><title>Parameters</title>
-
-<variablelist>
-<varlistentry><term>node</term>
-<listitem>
-
-<para>The node which is to be tested.</para>
-
-</listitem>
-</varlistentry>
-</variablelist>
-
-</refsect1><refsect1><title>Returns</title>
-
-<para>This template returns '1' if the specified node is a section
-(Section, Sect1, Sect2, etc.), and '0' otherwise.</para>
-
-</refsect1></refentry>
-
-<refentry xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="template.section.level">
-<refnamediv>
-<refname>section.level</refname>
-<refpurpose>Returns the hierarchical level of a section</refpurpose>
-</refnamediv>
-<refsynopsisdiv>
-<synopsis>&lt;xsl:template name="section.level"&gt;
-&lt;xsl:param name="node" select="."/&gt;
-  ...
-&lt;/xsl:template&gt;</synopsis>
-</refsynopsisdiv>
-<refsect1><title>Description</title>
-
-<para>This template calculates the hierarchical level of a section.
-The element <tag>sect1</tag> is at level 1, <tag>sect2</tag> is
-at level 2, etc.</para>
-
-
-
-<para>Recursive sections are calculated down to the fifth level.</para>
-
-</refsect1><refsect1><title>Parameters</title>
-
-<variablelist>
-<varlistentry><term>node</term>
-<listitem>
-
-<para>The section node for which the level should be calculated.
-Defaults to the context node.</para>
-
-</listitem>
-</varlistentry>
-</variablelist>
-
-</refsect1><refsect1><title>Returns</title>
-
-<para>The section level, <quote>1</quote>, <quote>2</quote>, etc.
-</para>
-
-</refsect1></refentry>
-
-<refentry xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="template.qanda.section.level">
-<refnamediv>
-<refname>qanda.section.level</refname>
-<refpurpose>Returns the hierarchical level of a QandASet</refpurpose>
-</refnamediv>
-<refsynopsisdiv>
-<synopsis>&lt;xsl:template name="qanda.section.level"/&gt;</synopsis>
-</refsynopsisdiv>
-<refsect1><title>Description</title>
-
-<para>This template calculates the hierarchical level of a QandASet.
-</para>
-
-</refsect1><refsect1><title>Returns</title>
-
-<para>The level, <quote>1</quote>, <quote>2</quote>, etc.
-</para>
-
-</refsect1></refentry>
-
-<refentry xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="template.select.mediaobject">
-<refnamediv>
-<refname>select.mediaobject</refname>
-<refpurpose>Selects and processes an appropriate media object from a list</refpurpose>
-</refnamediv>
-<refsynopsisdiv>
-<synopsis>&lt;xsl:template name="select.mediaobject"&gt;
-&lt;xsl:param name="olist" select="imageobject|imageobjectco                      |videoobject|audioobject|textobject"/&gt;
-  ...
-&lt;/xsl:template&gt;</synopsis>
-</refsynopsisdiv>
-<refsect1><title>Description</title>
-
-<para>This template takes a list of media objects (usually the
-children of a mediaobject or inlinemediaobject) and processes
-the "right" object.</para>
-
-
-
-<para>This template relies on a template named 
-"select.mediaobject.index" to determine which object
-in the list is appropriate.</para>
-
-
-
-<para>If no acceptable object is located, nothing happens.</para>
-
-</refsect1><refsect1><title>Parameters</title>
-
-<variablelist>
-<varlistentry><term>olist</term>
-<listitem>
-
-<para>The node list of potential objects to examine.</para>
-
-</listitem>
-</varlistentry>
-</variablelist>
-
-</refsect1><refsect1><title>Returns</title>
-
-<para>Calls &lt;xsl:apply-templates&gt; on the selected object.</para>
-
-</refsect1></refentry>
-
-<refentry xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="template.select.mediaobject.index">
-<refnamediv>
-<refname>select.mediaobject.index</refname>
-<refpurpose>Selects the position of the appropriate media object from a list</refpurpose>
-</refnamediv>
-<refsynopsisdiv>
-<synopsis>&lt;xsl:template name="select.mediaobject.index"&gt;
-&lt;xsl:param name="olist" select="imageobject|imageobjectco                      |videoobject|audioobject|textobject"/&gt;
-&lt;xsl:param name="count"&gt;1&lt;/xsl:param&gt;
-  ...
-&lt;/xsl:template&gt;</synopsis>
-</refsynopsisdiv>
-<refsect1><title>Description</title>
-
-<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
-to be used by the calling template.</para>
-
-
-
-<para>If the parameter <parameter>use.role.for.mediaobject</parameter>
-is nonzero, then it first checks for an object with
-a role attribute of the appropriate value.  It takes the first
-of those.  Otherwise, it takes the first acceptable object
-through a recursive pass through the list.</para>
-
-
-
-<para>This template relies on a template named "is.acceptable.mediaobject"
-to determine if a given object is an acceptable graphic. The semantics
-of media objects is that the first acceptable graphic should be used.
-</para>
-
-
-
-<para>If no acceptable object is located, no index is returned.</para>
-
-</refsect1><refsect1><title>Parameters</title>
-
-<variablelist>
-<varlistentry><term>olist</term>
-<listitem>
-
-<para>The node list of potential objects to examine.</para>
-
-</listitem>
-</varlistentry>
-<varlistentry><term>count</term>
-<listitem>
-
-<para>The position in the list currently being considered by the 
-recursive process.</para>
-
-</listitem>
-</varlistentry>
-</variablelist>
-
-</refsect1><refsect1><title>Returns</title>
-
-<para>Returns the position in the original list of the selected object.</para>
-
-</refsect1></refentry>
-
-<refentry xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="template.is.acceptable.mediaobject">
-<refnamediv>
-<refname>is.acceptable.mediaobject</refname>
-<refpurpose>Returns '1' if the specified media object is recognized</refpurpose>
-</refnamediv>
-<refsynopsisdiv>
-<synopsis>&lt;xsl:template name="is.acceptable.mediaobject"&gt;
-&lt;xsl:param name="object"/&gt;
-  ...
-&lt;/xsl:template&gt;</synopsis>
-</refsynopsisdiv>
-<refsect1><title>Description</title>
-
-<para>This template examines a media object and returns '1' if the
-object is recognized as a graphic.</para>
-
-</refsect1><refsect1><title>Parameters</title>
-
-<variablelist>
-<varlistentry><term>object</term>
-<listitem>
-
-<para>The media object to consider.</para>
-
-</listitem>
-</varlistentry>
-</variablelist>
-
-</refsect1><refsect1><title>Returns</title>
-
-<para>0 or 1</para>
-
-</refsect1></refentry>
-
-<refentry xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="template.check.id.unique">
-<refnamediv>
-<refname>check.id.unique</refname>
-<refpurpose>Warn users about references to non-unique IDs</refpurpose>
-</refnamediv>
-<refsynopsisdiv>
-<synopsis>&lt;xsl:template name="check.id.unique"&gt;
-&lt;xsl:param name="linkend"/&gt;
-  ...
-&lt;/xsl:template&gt;</synopsis>
-</refsynopsisdiv>
-<refsect1><title>Description</title>
-
-<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
-the ID is not unique.</para>
-
-</refsect1></refentry>
-
-<refentry xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="template.check.idref.targets">
-<refnamediv>
-<refname>check.idref.targets</refname>
-<refpurpose>Warn users about incorrectly typed references</refpurpose>
-</refnamediv>
-<refsynopsisdiv>
-<synopsis>&lt;xsl:template name="check.idref.targets"&gt;
-&lt;xsl:param name="linkend"/&gt;
-&lt;xsl:param name="element-list"/&gt;
-  ...
-&lt;/xsl:template&gt;</synopsis>
-</refsynopsisdiv>
-<refsect1><title>Description</title>
-
-<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
-<varname>element-list</varname> and warns the user otherwise.</para>
-
-</refsect1></refentry>
-
-<refentry xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="template.copyright.years">
-<refnamediv>
-<refname>copyright.years</refname>
-<refpurpose>Print a set of years with collapsed ranges</refpurpose>
-</refnamediv>
-<refsynopsisdiv>
-<synopsis>&lt;xsl:template name="copyright.years"&gt;
-&lt;xsl:param name="years"/&gt;
-&lt;xsl:param name="print.ranges" select="1"/&gt;
-&lt;xsl:param name="single.year.ranges" select="0"/&gt;
-&lt;xsl:param name="firstyear" select="0"/&gt;
-&lt;xsl:param name="nextyear" select="0"/&gt;
-  ...
-&lt;/xsl:template&gt;</synopsis>
-</refsynopsisdiv>
-<refsect1><title>Description</title>
-
-<para>This template prints a list of year elements with consecutive
-years printed as a range. In other words:</para>
-
-
-<screen>&lt;year&gt;1992&lt;/year&gt;
-&lt;year&gt;1993&lt;/year&gt;
-&lt;year&gt;1994&lt;/year&gt;</screen>
-
-
-<para>is printed <quote>1992-1994</quote>, whereas:</para>
-
-
-<screen>&lt;year&gt;1992&lt;/year&gt;
-&lt;year&gt;1994&lt;/year&gt;</screen>
-
-
-<para>is printed <quote>1992, 1994</quote>.</para>
-
-
-
-<para>This template assumes that all the year elements contain only
-decimal year numbers, that the elements are sorted in increasing
-numerical order, that there are no duplicates, and that all the years
-are expressed in full <quote>century+year</quote>
-(<quote>1999</quote> not <quote>99</quote>) notation.</para>
-
-</refsect1><refsect1><title>Parameters</title>
-
-<variablelist>
-<varlistentry><term>years</term>
-<listitem>
-
-<para>The initial set of year elements.</para>
-
-</listitem>
-</varlistentry>
-<varlistentry><term>print.ranges</term>
-<listitem>
-
-<para>If non-zero, multi-year ranges are collapsed. If zero, all years
-are printed discretely.</para>
-
-</listitem>
-</varlistentry>
-<varlistentry><term>single.year.ranges</term>
-<listitem>
-
-<para>If non-zero, two consecutive years will be printed as a range,
-otherwise, they will be printed discretely. In other words, a single
-year range is <quote>1991-1992</quote> but discretely it's
-<quote>1991, 1992</quote>.</para>
-
-</listitem>
-</varlistentry>
-</variablelist>
-
-</refsect1><refsect1><title>Returns</title>
-
-<para>This template returns the formatted list of years.</para>
-
-</refsect1></refentry>
-
-<refentry xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="template.find.path.params">
-<refnamediv>
-<refname>find.path.params</refname>
-<refpurpose>Search in a table for the "best" match for the node</refpurpose>
-</refnamediv>
-<refsynopsisdiv>
-<synopsis>&lt;xsl:template name="find.path.params"&gt;
-&lt;xsl:param name="node" select="."/&gt;
-&lt;xsl:param name="table" select="''"/&gt;
-&lt;xsl:param name="location"&gt;
-    &lt;xsl:call-template name="xpath.location"&gt;
-      &lt;xsl:with-param name="node" select="$node"/&gt;
-    &lt;/xsl:call-template&gt;
-  &lt;/xsl:param&gt;
-  ...
-&lt;/xsl:template&gt;</synopsis>
-</refsynopsisdiv>
-<refsect1><title>Description</title>
-
-<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>
-
-</refsect1></refentry>
-
-<refentry xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="template.string.upper">
-<refnamediv>
-<refname>string.upper</refname>
-<refpurpose>Converts a string to all uppercase letters</refpurpose>
-</refnamediv>
-<refsynopsisdiv>
-<synopsis>&lt;xsl:template name="string.upper"&gt;
-&lt;xsl:param name="string" select="''"/&gt;
-  ...
-&lt;/xsl:template&gt;</synopsis>
-</refsynopsisdiv>
-<refsect1><title>Description</title>
-
-<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
-<literal>uppercase.alpha</literal> gentext keys for the current
-locale. It affects only those characters found in the values of
-<literal>lowercase.alpha</literal> and
-<literal>uppercase.alpha</literal>. All other characters are left
-unchanged.</para>
-
-</refsect1><refsect1><title>Parameters</title>
-
-<variablelist>
-<varlistentry><term>string</term>
-<listitem>
-
-<para>The string to convert to uppercase.</para>
-
-</listitem>
-</varlistentry>
-</variablelist>
-
-</refsect1></refentry>
-
-<refentry xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="template.string.lower">
-<refnamediv>
-<refname>string.lower</refname>
-<refpurpose>Converts a string to all lowercase letters</refpurpose>
-</refnamediv>
-<refsynopsisdiv>
-<synopsis>&lt;xsl:template name="string.lower"&gt;
-&lt;xsl:param name="string" select="''"/&gt;
-  ...
-&lt;/xsl:template&gt;</synopsis>
-</refsynopsisdiv>
-<refsect1><title>Description</title>
-
-<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
-<literal>lowercase.alpha</literal> gentext keys for the current
-locale. It affects only those characters found in the values of
-<literal>uppercase.alpha</literal> and
-<literal>lowercase.alpha</literal>. All other characters are left
-unchanged.</para>
-
-</refsect1><refsect1><title>Parameters</title>
-
-<variablelist>
-<varlistentry><term>string</term>
-<listitem>
-
-<para>The string to convert to lowercase.</para>
-
-</listitem>
-</varlistentry>
-</variablelist>
-
-</refsect1></refentry>
-
-<refentry xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="template.select.choice.separator">
-<refnamediv>
-<refname>select.choice.separator</refname>
-<refpurpose>Returns localized choice separator</refpurpose>
-</refnamediv>
-<refsynopsisdiv>
-<synopsis>&lt;xsl:template name="select.choice.separator"/&gt;</synopsis>
-</refsynopsisdiv>
-<refsect1><title>Description</title>
-    
-<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
-    for generating choice separators for non-inline lists).</para>
-
-    
-<para>It currently works by evaluating a processing instruction
-    (PI) of the form &lt;?dbchoice choice="foo"?&gt; :
-    
-<itemizedlist>
-      <listitem>
-        <simpara>if the value of the <tag>choice</tag>
-        pseudo-attribute is "and" or "or", returns a localized "and"
-        or "or"</simpara>
-      </listitem>
-      <listitem>
-        <simpara>otherwise returns the literal value of the
-        <tag>choice</tag> pseudo-attribute</simpara>
-      </listitem>
-    </itemizedlist>
-
-    The latter is provided only as a temporary workaround because the
-    locale files do not currently have translations for the word
-    <wordasword>or</wordasword>. So if you want to generate a a
-    logical "or" separator in French (for example), you currently need
-    to do this:
-    <literallayout>&lt;?dbchoice choice="ou"?&gt;</literallayout>
-    </para>
-
-    <warning>
-      
-<para>The <tag>dbchoice</tag> processing instruction is
-      an unfortunate hack; support for it may disappear in the future
-      (particularly if and when a more appropriate means for marking
-      up "choice" lists becomes available in DocBook).</para>
-
-    </warning>
-  </refsect1></refentry>
-
-<refentry xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="template.evaluate.info.profile">
-<refnamediv>
-<refname>evaluate.info.profile</refname>
-<refpurpose>Evaluates an info profile</refpurpose>
-</refnamediv>
-<refsynopsisdiv>
-<synopsis>&lt;xsl:template name="evaluate.info.profile"&gt;
-&lt;xsl:param name="profile"/&gt;
-&lt;xsl:param name="info"/&gt;
-  ...
-&lt;/xsl:template&gt;</synopsis>
-</refsynopsisdiv>
-<refsect1><title>Description</title>
-    
-<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>
-    extension function.</para>
-
-
-    
-<para>The value of the <parameter>profile</parameter> parameter
-    can include the literal string <literal>$info</literal>. If found
-    in the value of the <parameter>profile</parameter> parameter, the
-    literal string <literal>$info</literal> string is replaced with
-    the value of the <parameter>info</parameter> parameter, which
-    should be a set of <replaceable>*info</replaceable> nodes; the
-    expression is then evaluated using the XSLT
-    <function>evaluate()</function> extension function.</para>
-
-  </refsect1><refsect1><title>Parameters</title>
-    
-<variablelist>
-       <varlistentry>
-        <term>profile</term>
-        <listitem>
-          
-<para>A string representing an XPath expression </para>
-
-        </listitem>
-      </varlistentry>
-       <varlistentry>
-        <term>info</term>
-        <listitem>
-          
-<para>A set of *info nodes</para>
-
-        </listitem>
-      </varlistentry>
-    </variablelist>
-
-  </refsect1><refsect1><title>Returns</title>
-    
-<para>Returns a node (the result of evaluating the
-    <parameter>profile</parameter> parameter)</para>
-
-  </refsect1></refentry>
-</reference>
-