]> git.lyx.org Git - lyx.git/blob - lib/docbook/xhtml/pi.xsl
Use same find-dialogs as other bind-files also for x?emacs
[lyx.git] / lib / docbook / xhtml / pi.xsl
1 <?xml version="1.0" encoding="ASCII"?><!--This file was created automatically by html2xhtml--><!--from the HTML stylesheets.--><xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:d="http://docbook.org/ns/docbook" xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/1999/xhtml" exclude-result-prefixes="doc d" version="1.0">
2
3 <!-- ********************************************************************
4
5      This file is part of the XSL DocBook Stylesheet distribution.
6      See ../README or http://cdn.docbook.org/release/xsl/current/ for
7      copyright and other information.
8
9      ******************************************************************** -->
10
11 <doc:reference xmlns=""><info xmlns="http://www.w3.org/1999/xhtml"><title>HTML Processing Instruction Reference</title>
12     <releaseinfo role="meta">
13     </releaseinfo>
14   </info>
15   <partintro xmlns="http://www.w3.org/1999/xhtml" xml:id="partintro">
16     <title>Introduction</title>
17     <para>This is generated reference documentation for all
18       user-specifiable processing instructions (PIs) in the DocBook
19       XSL stylesheets for HTML output.
20       <note>
21         <para>You add these PIs at particular points in a document to
22           cause specific &#8220;exceptions&#8221; to formatting/output behavior. To
23           make global changes in formatting/output behavior across an
24           entire document, it&#8217;s better to do it by setting an
25           appropriate stylesheet parameter (if there is one).</para>
26       </note>
27     </para>
28   </partintro>
29 </doc:reference>
30
31 <!-- ==================================================================== -->
32
33 <doc:pi xmlns="" name="dbhtml_background-color">
34   <refpurpose xmlns="http://www.w3.org/1999/xhtml">Sets background color for an image</refpurpose>
35   <refdescription xmlns="http://www.w3.org/1999/xhtml">
36     <para>Use the <tag class="xmlpi">dbhtml background-color</tag> PI before or
37       after an image (<tag>graphic</tag>, <tag>inlinegraphic</tag>,
38       <tag>imagedata</tag>, or <tag>videodata</tag> element) as a
39       sibling to the element, to set a background color for the
40       image.</para>
41   </refdescription>
42   <refsynopsisdiv xmlns="http://www.w3.org/1999/xhtml">
43     <synopsis><tag class="xmlpi">dbhtml background-color="<replaceable>color</replaceable>"</tag></synopsis>
44   </refsynopsisdiv>
45   <refparameter xmlns="http://www.w3.org/1999/xhtml">
46     <variablelist>
47       <varlistentry><term>background-color="<replaceable>color</replaceable>"</term>
48         <listitem>
49           <para>An HTML color value</para>
50         </listitem>
51       </varlistentry>
52     </variablelist>
53   </refparameter>
54   <refsee xmlns="http://www.w3.org/1999/xhtml" role="tcg">
55     <para><link role="tcg" xlink:href="BGcolor.html">Background color</link></para>
56   </refsee>
57 </doc:pi>
58 <xsl:template name="pi.dbhtml_background-color">
59   <xsl:param name="node" select="."/>
60   <xsl:call-template name="dbhtml-attribute">
61     <xsl:with-param name="pis" select="$node/processing-instruction('dbhtml')"/>
62     <xsl:with-param name="attribute" select="'background-color'"/>
63   </xsl:call-template>
64 </xsl:template>
65
66 <doc:pi xmlns="" name="dbhtml_bgcolor">
67   <refpurpose xmlns="http://www.w3.org/1999/xhtml">Sets background color on a CALS table row or table cell</refpurpose>
68   <refdescription xmlns="http://www.w3.org/1999/xhtml">
69     <para>Use the <tag class="xmlpi">dbhtml bgcolor</tag> PI as child of a CALS table row
70       or cell to set a background color for that table row or cell.</para>
71   </refdescription>
72   <refsynopsisdiv xmlns="http://www.w3.org/1999/xhtml">
73     <synopsis><tag class="xmlpi">dbhtml bgcolor="<replaceable>color</replaceable>"</tag></synopsis>
74   </refsynopsisdiv>
75   <refparameter xmlns="http://www.w3.org/1999/xhtml">
76     <variablelist>
77       <varlistentry><term>bgcolor="<replaceable>color</replaceable>"</term>
78         <listitem>
79           <para>An HTML color value</para>
80         </listitem>
81       </varlistentry>
82     </variablelist>
83   </refparameter>
84   <refsee xmlns="http://www.w3.org/1999/xhtml" role="tcg">
85     <para><link role="tcg" xlink:href="BGtableColor.html#CellBGColor">Cell background color</link></para>
86   </refsee>
87 </doc:pi>
88 <xsl:template name="pi.dbhtml_bgcolor">
89   <xsl:param name="node" select="."/>
90   <xsl:call-template name="dbhtml-attribute">
91     <xsl:with-param name="pis" select="$node/processing-instruction('dbhtml')"/>
92     <xsl:with-param name="attribute" select="'bgcolor'"/>
93   </xsl:call-template>
94 </xsl:template>
95
96 <doc:pi xmlns="" name="dbhtml_cellpadding">
97   <refpurpose xmlns="http://www.w3.org/1999/xhtml">Specifies cellpadding in CALS table or qandaset output</refpurpose>
98   <refdescription xmlns="http://www.w3.org/1999/xhtml">
99     <para>Use the <tag class="xmlpi">dbhtml cellpadding</tag> PI as a child of a
100       CALS <tag>table</tag> or <tag>qandaset</tag> to specify the value
101       for the HTML <literal>cellpadding</literal> attribute in the
102       output HTML table.</para>
103   </refdescription>
104   <refsynopsisdiv xmlns="http://www.w3.org/1999/xhtml">
105     <synopsis><tag class="xmlpi">dbhtml cellpadding="<replaceable>number</replaceable>"</tag></synopsis>
106   </refsynopsisdiv>
107   <refparameter xmlns="http://www.w3.org/1999/xhtml">
108     <variablelist>
109       <varlistentry><term>cellpadding="<replaceable>number</replaceable>"</term>
110         <listitem>
111           <para>Specifies the cellpadding</para>
112         </listitem>
113       </varlistentry>
114     </variablelist>
115   </refparameter>
116   <refsee xmlns="http://www.w3.org/1999/xhtml" role="params">
117     <para><parameter>html.cellpadding</parameter></para>
118   </refsee>
119   <refsee xmlns="http://www.w3.org/1999/xhtml" role="tcg">
120     <para><link role="tcg" xlink:href="CellSpacing.html">Cell spacing and cell padding</link>,
121       <link role="tcg" xlink:href="QandAformat.html">Q and A formatting</link></para>
122   </refsee>
123 </doc:pi>
124 <xsl:template name="pi.dbhtml_cellpadding">
125   <xsl:param name="node" select="."/>
126   <xsl:call-template name="dbhtml-attribute">
127     <xsl:with-param name="pis" select="$node/processing-instruction('dbhtml')"/>
128     <xsl:with-param name="attribute" select="'cellpadding'"/>
129   </xsl:call-template>
130 </xsl:template>
131
132 <doc:pi xmlns="" name="dbhtml_cellspacing">
133   <refpurpose xmlns="http://www.w3.org/1999/xhtml">Specifies cellspacing in CALS table or qandaset output</refpurpose>
134   <refdescription xmlns="http://www.w3.org/1999/xhtml">
135     <para>Use the <tag class="xmlpi">dbhtml cellspacing</tag> PI as a child of a
136       CALS <tag>table</tag> or <tag>qandaset</tag> to specify the value
137       for the HTML <literal>cellspacing</literal> attribute in the
138       output HTML table.</para>
139   </refdescription>
140   <refsynopsisdiv xmlns="http://www.w3.org/1999/xhtml">
141     <synopsis><tag class="xmlpi">dbhtml cellspacing="<replaceable>number</replaceable>"</tag></synopsis>
142   </refsynopsisdiv>
143   <refparameter xmlns="http://www.w3.org/1999/xhtml">
144     <variablelist>
145       <varlistentry><term>cellspacing="<replaceable>number</replaceable>"</term>
146         <listitem>
147           <para>Specifies the cellspacing</para>
148         </listitem>
149       </varlistentry>
150     </variablelist>
151   </refparameter>
152   <refsee xmlns="http://www.w3.org/1999/xhtml" role="params">
153     <para><parameter>html.cellspacing</parameter></para>
154   </refsee>
155   <refsee xmlns="http://www.w3.org/1999/xhtml" role="tcg">
156     <para><link role="tcg" xlink:href="CellSpacing.html">Cell spacing and cell padding</link>,
157       <link role="tcg" xlink:href="QandAformat.html">Q and A formatting</link></para>
158     </refsee>
159 </doc:pi>
160 <xsl:template name="pi.dbhtml_cellspacing">
161   <xsl:param name="node" select="."/>
162   <xsl:call-template name="dbhtml-attribute">
163     <xsl:with-param name="pis" select="$node/processing-instruction('dbhtml')"/>
164     <xsl:with-param name="attribute" select="'cellspacing'"/>
165   </xsl:call-template>
166 </xsl:template>
167
168 <doc:pi xmlns="" name="dbhtml_class">
169   <refpurpose xmlns="http://www.w3.org/1999/xhtml">Set value of the class attribute for a CALS table row</refpurpose>
170   <refdescription xmlns="http://www.w3.org/1999/xhtml">
171     <para>Use the <tag class="xmlpi">dbhtml class</tag> PI as a child of a
172       <tag>row</tag> to specify a <literal>class</literal>
173       attribute and value in the HTML output for that row.</para>
174   </refdescription>
175   <refsynopsisdiv xmlns="http://www.w3.org/1999/xhtml">
176     <synopsis><tag class="xmlpi">dbhtml class="<replaceable>name</replaceable>"</tag></synopsis>
177   </refsynopsisdiv>
178   <refparameter xmlns="http://www.w3.org/1999/xhtml">
179     <variablelist>
180       <varlistentry><term>class="<replaceable>name</replaceable>"</term>
181         <listitem>
182           <para>Specifies the class name</para>
183         </listitem>
184       </varlistentry>
185     </variablelist>
186   </refparameter>
187   <refsee xmlns="http://www.w3.org/1999/xhtml" role="tcg">
188     <para><link role="tcg" xlink:href="CSSTableCells.html">Table styles in HTML output</link></para>
189   </refsee>
190 </doc:pi>
191 <xsl:template name="pi.dbhtml_class">
192   <xsl:param name="node" select="."/>
193   <xsl:call-template name="dbhtml-attribute">
194     <xsl:with-param name="pis" select="$node/processing-instruction('dbhtml')"/>
195     <xsl:with-param name="attribute" select="'class'"/>
196   </xsl:call-template>
197 </xsl:template> 
198
199 <doc:pi xmlns="" name="dbhtml_dir">
200   <refpurpose xmlns="http://www.w3.org/1999/xhtml">Specifies a directory name in which to write files</refpurpose>
201   <refdescription xmlns="http://www.w3.org/1999/xhtml">
202     <para>When chunking output, use the <tag class="xmlpi">dbhtml dir</tag> PI
203       as a child of a chunk source to cause the output of that
204       chunk to be written to the specified directory; also, use it
205       as a child of a <tag>mediaobject</tag> to specify a
206       directory into which any long-description files for that
207       <tag>mediaobject</tag> will be written.</para>
208
209 <para>The output directory specification is inherited by all
210 chunks of the descendants of the element.  If descendants need
211 to go to a different directory, then add another 
212 <tag class="xmlpi">dbhtml dir</tag> processing
213 instruction as a child of the source element
214 for that chunk, and specify the path relative to the
215 ancestor path.</para>
216
217 <para>For example, to put most chunk files into 
218 <filename class="directory">shared</filename>
219 but one chapter into 
220 <filename class="directory">exception</filename>
221 at the same level, use:</para>
222
223 <programlisting>&lt;book&gt;
224   &lt;?dbhtml dir="shared"?&gt;
225   ...
226   &lt;chapter&gt;
227     &lt;?dbhtml dir="../exception"?&gt;
228   &lt;/chapter&gt;
229 &lt;/book&gt;
230 </programlisting>
231
232
233   </refdescription>
234   <refsynopsisdiv xmlns="http://www.w3.org/1999/xhtml">
235     <synopsis><tag class="xmlpi">dbhtml dir="<replaceable>path</replaceable>"</tag></synopsis>
236   </refsynopsisdiv>
237   <refparameter xmlns="http://www.w3.org/1999/xhtml">
238     <variablelist>
239       <varlistentry><term>dir="<replaceable>path</replaceable>"</term>
240         <listitem>
241           <para>Specifies the pathname for the directory</para>
242         </listitem>
243       </varlistentry>
244     </variablelist>
245   </refparameter>
246   <refsee xmlns="http://www.w3.org/1999/xhtml" role="params">
247     <para><parameter>base.dir</parameter></para>
248   </refsee>
249   <refsee xmlns="http://www.w3.org/1999/xhtml" role="tcg">
250     <para><link role="tcg" xlink:href="Chunking.html#dbhtmlDirPI">dbhtml dir processing instruction</link></para>
251   </refsee>
252 </doc:pi>
253 <xsl:template name="pi.dbhtml_dir">
254   <xsl:param name="node" select="."/>
255   <xsl:call-template name="dbhtml-attribute">
256     <xsl:with-param name="pis" select="$node/processing-instruction('dbhtml')"/>
257     <xsl:with-param name="attribute" select="'dir'"/>
258   </xsl:call-template>
259 </xsl:template>
260
261 <doc:pi xmlns="" name="dbhtml_filename">
262   <refpurpose xmlns="http://www.w3.org/1999/xhtml">Specifies a filename for a chunk</refpurpose>
263   <refdescription xmlns="http://www.w3.org/1999/xhtml">
264 <para>When chunking output, use the <tag class="xmlpi">dbhtml filename</tag>
265       PI as a child of a chunk source to specify a filename for
266       the output file for that chunk. Include the filename suffix.</para>
267
268 <para>You cannot include a directory path in the filename value,
269 or your links may not work.  Add a 
270 <tag class="xmlpi">dbhtml dir</tag> processing instruction
271 to specify the output directory. You can also combine the two
272 specifications in one processing instruction: 
273 <tag class="xmlpi">dbhtml dir="mydir" filename="myfile.html"</tag>.</para>
274
275   </refdescription>
276   <refsynopsisdiv xmlns="http://www.w3.org/1999/xhtml">
277     <synopsis><tag class="xmlpi">dbhtml filename="<replaceable>filename</replaceable>"</tag></synopsis>
278   </refsynopsisdiv>
279   <refparameter xmlns="http://www.w3.org/1999/xhtml">
280     <variablelist>
281       <varlistentry><term>filename="<replaceable>path</replaceable>"</term>
282         <listitem>
283           <para>Specifies the filename for the file</para>
284         </listitem>
285       </varlistentry>
286     </variablelist>
287   </refparameter>
288   <refsee xmlns="http://www.w3.org/1999/xhtml" role="params">
289     <para><parameter>use.id.as.filename</parameter></para>
290   </refsee>
291   <refsee xmlns="http://www.w3.org/1999/xhtml" role="tcg">
292     <para><link role="tcg" xlink:href="Chunking.html#DbhtmlFilenames">dbhtml filenames</link></para>
293   </refsee>
294 </doc:pi>
295 <xsl:template name="pi.dbhtml_filename">
296   <xsl:param name="node" select="."/>
297   <xsl:call-template name="dbhtml-attribute">
298     <xsl:with-param name="pis" select="$node/processing-instruction('dbhtml')"/>
299     <xsl:with-param name="attribute" select="'filename'"/>
300   </xsl:call-template>
301 </xsl:template>
302
303 <doc:pi xmlns="" name="dbhtml_funcsynopsis-style">
304   <refpurpose xmlns="http://www.w3.org/1999/xhtml">Specifies presentation style for a funcsynopsis</refpurpose>
305   <refdescription xmlns="http://www.w3.org/1999/xhtml">
306     <para>Use the <tag class="xmlpi">dbhtml funcsynopsis-style</tag> PI as a child of
307       a <tag>funcsynopsis</tag> or anywhere within a funcsynopsis
308       to control the presentation style for output of all
309       <tag>funcprototype</tag> instances within that funcsynopsis.</para>
310   </refdescription>
311   <refsynopsisdiv xmlns="http://www.w3.org/1999/xhtml">
312     <synopsis><tag class="xmlpi">dbhtml funcsynopsis-style="kr"|"ansi"</tag></synopsis>
313   </refsynopsisdiv>
314   <refparameter xmlns="http://www.w3.org/1999/xhtml">
315     <variablelist>
316       <varlistentry><term>funcsynopsis-style="kr"</term>
317         <listitem>
318           <para>Displays <tag>funcprototype</tag> output in K&amp;R style</para>
319         </listitem>
320       </varlistentry>
321       <varlistentry><term>funcsynopsis-style="ansi"</term>
322         <listitem>
323           <para>Displays <tag>funcprototype</tag> output in ANSI style</para>
324         </listitem>
325       </varlistentry>
326     </variablelist>
327   </refparameter>
328   <refsee xmlns="http://www.w3.org/1999/xhtml" role="params">
329     <para><parameter>funcsynopsis.style</parameter></para>
330   </refsee>
331 </doc:pi>
332 <xsl:template name="pi.dbhtml_funcsynopsis-style">
333   <xsl:param name="node" select="."/>
334   <xsl:call-template name="dbhtml-attribute">
335     <xsl:with-param name="pis" select="$node/processing-instruction('dbhtml')"/>
336     <xsl:with-param name="attribute" select="'funcsynopsis-style'"/>
337   </xsl:call-template>
338 </xsl:template>
339
340 <doc:pi xmlns="" name="dbhtml_img.src.path">
341   <refpurpose xmlns="http://www.w3.org/1999/xhtml">Specifies a path to the location of an image file</refpurpose>
342   <refdescription xmlns="http://www.w3.org/1999/xhtml">
343     <para>Use the <tag class="xmlpi">dbhtml img.src.path</tag> PI before or
344       after an image (<tag>graphic</tag>,
345       <tag>inlinegraphic</tag>, <tag>imagedata</tag>, or
346       <tag>videodata</tag> element) as a sibling to the element,
347       to specify a path to the location of the image; in HTML
348       output, the value specified for the
349       <code>img.src.path</code> attribute is prepended to the
350       filename.</para>
351   </refdescription>
352   <refsynopsisdiv xmlns="http://www.w3.org/1999/xhtml">
353     <synopsis><tag class="xmlpi">dbhtml img.src.path="<replaceable>path</replaceable>"</tag></synopsis>
354   </refsynopsisdiv>
355   <refparameter xmlns="http://www.w3.org/1999/xhtml">
356     <variablelist>
357       <varlistentry><term>img.src.path="<replaceable>path</replaceable>"</term>
358         <listitem>
359           <para>Specifies the pathname to prepend to the name of the image file</para>
360         </listitem>
361       </varlistentry>
362     </variablelist>
363   </refparameter>
364   <refsee xmlns="http://www.w3.org/1999/xhtml" role="params">
365     <para><parameter>img.src.path</parameter></para>
366   </refsee>
367   <refsee xmlns="http://www.w3.org/1999/xhtml" role="tcg">
368     <para><link role="tcg" xlink:href="GraphicsLocations.html#UsingFileref">Using fileref</link></para>
369   </refsee>
370 </doc:pi>
371 <xsl:template name="pi.dbhtml_img.src.path">
372   <xsl:param name="node" select="."/>
373   <xsl:call-template name="dbhtml-attribute">
374     <xsl:with-param name="pis" select="$node/processing-instruction('dbhtml')"/>
375     <xsl:with-param name="attribute" select="'img.src.path'"/>
376   </xsl:call-template>
377 </xsl:template>
378
379 <doc:pi xmlns="" name="dbhtml_label-width">
380   <refpurpose xmlns="http://www.w3.org/1999/xhtml">Specifies the label width for a qandaset</refpurpose>
381   <refdescription xmlns="http://www.w3.org/1999/xhtml">
382     <para>Use the <tag class="xmlpi">dbhtml label-width</tag> PI as a child of a
383       <tag>qandaset</tag> to specify the width of labels.</para>
384   </refdescription>
385   <refsynopsisdiv xmlns="http://www.w3.org/1999/xhtml">
386     <synopsis><tag class="xmlpi">dbhtml label-width="<replaceable>width</replaceable>"</tag></synopsis>
387   </refsynopsisdiv>
388   <refparameter xmlns="http://www.w3.org/1999/xhtml">
389     <variablelist>
390       <varlistentry><term>label-width="<replaceable>width</replaceable>"</term>
391         <listitem>
392           <para>Specifies the label width (including units)</para>
393         </listitem>
394       </varlistentry>
395     </variablelist>
396   </refparameter>
397   <refsee xmlns="http://www.w3.org/1999/xhtml" role="tcg">
398     <para><link role="tcg" xlink:href="QandAformat.html">Q and A formatting</link></para>
399   </refsee>
400 </doc:pi>
401 <xsl:template name="pi.dbhtml_label-width">
402   <xsl:param name="node" select="."/>
403   <xsl:call-template name="dbhtml-attribute">
404     <xsl:with-param name="pis" select="$node/processing-instruction('dbhtml')"/>
405     <xsl:with-param name="attribute" select="'label-width'"/>
406   </xsl:call-template>
407 </xsl:template> 
408
409 <doc:pi xmlns="" name="dbhtml_linenumbering.everyNth">
410   <refpurpose xmlns="http://www.w3.org/1999/xhtml">Specifies interval for line numbers in verbatims</refpurpose>
411   <refdescription xmlns="http://www.w3.org/1999/xhtml">
412     <para>Use the <tag class="xmlpi">dbhtml linenumbering.everyNth</tag> PI as a child
413       of a &#8220;verbatim&#8221; element &#8211; <tag>programlisting</tag>,
414       <tag>screen</tag>, <tag>synopsis</tag> &#8212; to specify
415       the interval at which lines are numbered.</para>
416   </refdescription>
417   <refsynopsisdiv xmlns="http://www.w3.org/1999/xhtml">
418     <synopsis><tag class="xmlpi">dbhtml linenumbering.everyNth="<replaceable>N</replaceable>"</tag></synopsis>
419   </refsynopsisdiv>
420   <refparameter xmlns="http://www.w3.org/1999/xhtml">
421     <variablelist>
422       <varlistentry><term>linenumbering.everyNth="<replaceable>N</replaceable>"</term>
423         <listitem>
424           <para>Specifies numbering interval; a number is output
425             before every <replaceable>N</replaceable>th line</para>
426         </listitem>
427       </varlistentry>
428     </variablelist>
429   </refparameter>
430   <refsee xmlns="http://www.w3.org/1999/xhtml" role="params">
431     <para><parameter>linenumbering.everyNth</parameter></para>
432   </refsee>
433   <refsee xmlns="http://www.w3.org/1999/xhtml" role="tcg">
434     <para><link role="tcg" xlink:href="AnnotateListing.html#LineNumbering">Line numbering</link></para>
435   </refsee>
436 </doc:pi>
437 <xsl:template name="pi.dbhtml_linenumbering.everyNth">
438   <xsl:param name="node" select="."/>
439   <xsl:call-template name="dbhtml-attribute">
440     <xsl:with-param name="pis" select="$node/processing-instruction('dbhtml')"/>
441     <xsl:with-param name="attribute" select="'linenumbering.everyNth'"/>
442   </xsl:call-template>
443 </xsl:template>
444
445 <doc:pi xmlns="" name="dbhtml_linenumbering.separator">
446   <refpurpose xmlns="http://www.w3.org/1999/xhtml">Specifies separator text for line numbers in verbatims</refpurpose>
447   <refdescription xmlns="http://www.w3.org/1999/xhtml">
448     <para>Use the <tag class="xmlpi">dbhtml linenumbering.separator</tag> PI as a child
449       of a &#8220;verbatim&#8221; element &#8211; <tag>programlisting</tag>,
450       <tag>screen</tag>, <tag>synopsis</tag> &#8212; to specify
451       the separator text output between the line numbers and content.</para>
452   </refdescription>
453   <refsynopsisdiv xmlns="http://www.w3.org/1999/xhtml">
454     <synopsis><tag class="xmlpi">dbhtml linenumbering.separator="<replaceable>text</replaceable>"</tag></synopsis>
455   </refsynopsisdiv>
456   <refparameter xmlns="http://www.w3.org/1999/xhtml">
457     <variablelist>
458       <varlistentry><term>linenumbering.separator="<replaceable>text</replaceable>"</term>
459         <listitem>
460           <para>Specifies the text (zero or more characters)</para>
461         </listitem>
462       </varlistentry>
463     </variablelist>
464   </refparameter>
465   <refsee xmlns="http://www.w3.org/1999/xhtml" role="params">
466     <para><parameter>linenumbering.separator</parameter></para>
467   </refsee>
468   <refsee xmlns="http://www.w3.org/1999/xhtml" role="tcg">
469     <para><link role="tcg" xlink:href="AnnotateListing.html#LineNumbering">Line numbering</link></para>
470   </refsee>
471 </doc:pi>
472 <xsl:template name="pi.dbhtml_linenumbering.separator">
473   <xsl:param name="node" select="."/>
474   <xsl:call-template name="dbhtml-attribute">
475     <xsl:with-param name="pis" select="$node/processing-instruction('dbhtml')"/>
476     <xsl:with-param name="attribute" select="'linenumbering.separator'"/>
477   </xsl:call-template>
478 </xsl:template>
479
480 <doc:pi xmlns="" name="dbhtml_linenumbering.width">
481   <refpurpose xmlns="http://www.w3.org/1999/xhtml">Specifies width for line numbers in verbatims</refpurpose>
482   <refdescription xmlns="http://www.w3.org/1999/xhtml">
483     <para>Use the <tag class="xmlpi">dbhtml linenumbering.width</tag> PI as a child
484       of a &#8220;verbatim&#8221; element &#8211; <tag>programlisting</tag>,
485       <tag>screen</tag>, <tag>synopsis</tag> &#8212; to specify
486       the width set aside for line numbers.</para>
487   </refdescription>
488   <refsynopsisdiv xmlns="http://www.w3.org/1999/xhtml">
489     <synopsis><tag class="xmlpi">dbhtml linenumbering.width="<replaceable>width</replaceable>"</tag></synopsis>
490   </refsynopsisdiv>
491   <refparameter xmlns="http://www.w3.org/1999/xhtml">
492     <variablelist>
493       <varlistentry><term>linenumbering.width="<replaceable>width</replaceable>"</term>
494         <listitem>
495           <para>Specifies the width (inluding units)</para>
496         </listitem>
497       </varlistentry>
498     </variablelist>
499   </refparameter>
500   <refsee xmlns="http://www.w3.org/1999/xhtml" role="params">
501     <para><parameter>linenumbering.width</parameter></para>
502   </refsee>
503   <refsee xmlns="http://www.w3.org/1999/xhtml" role="tcg">
504     <para><link role="tcg" xlink:href="AnnotateListing.html#LineNumbering">Line numbering</link></para>
505   </refsee>
506 </doc:pi>
507 <xsl:template name="pi.dbhtml_linenumbering.width">
508   <xsl:param name="node" select="."/>
509   <xsl:call-template name="dbhtml-attribute">
510     <xsl:with-param name="pis" select="$node/processing-instruction('dbhtml')"/>
511     <xsl:with-param name="attribute" select="'linenumbering.width'"/>
512   </xsl:call-template>
513 </xsl:template>
514
515 <doc:pi xmlns="" name="dbhtml_list-presentation">
516   <refpurpose xmlns="http://www.w3.org/1999/xhtml">Specifies presentation style for a variablelist or
517     segmentedlist</refpurpose>
518   <refdescription xmlns="http://www.w3.org/1999/xhtml">
519     <para>Use the <tag class="xmlpi">dbhtml list-presentation</tag> PI as a child of
520       a <tag>variablelist</tag> or <tag>segmentedlist</tag> to
521       control the presentation style for the list (to cause it, for
522       example, to be displayed as a table).</para>
523   </refdescription>
524   <refsynopsisdiv xmlns="http://www.w3.org/1999/xhtml">
525     <synopsis><tag class="xmlpi">dbhtml list-presentation="list"|"table"</tag></synopsis>
526   </refsynopsisdiv>
527   <refparameter xmlns="http://www.w3.org/1999/xhtml">
528     <variablelist>
529       <varlistentry><term>list-presentation="list"</term>
530         <listitem>
531           <para>Displays the list as a list</para>
532         </listitem>
533       </varlistentry>
534       <varlistentry><term>list-presentation="table"</term>
535         <listitem>
536           <para>Displays the list as a table</para>
537         </listitem>
538       </varlistentry>
539     </variablelist>
540   </refparameter>
541   <refsee xmlns="http://www.w3.org/1999/xhtml" role="params">
542     <itemizedlist>
543       <listitem>
544         <para><parameter>variablelist.as.table</parameter></para>
545       </listitem>
546       <listitem>
547         <para><parameter>segmentedlist.as.table</parameter></para>
548       </listitem>
549     </itemizedlist>
550   </refsee>
551   <refsee xmlns="http://www.w3.org/1999/xhtml" role="tcg">
552     <para><link role="tcg" xlink:href="Variablelists.html#VarListFormatting">Variable list formatting in HTML</link></para>
553   </refsee>
554 </doc:pi>
555 <xsl:template name="pi.dbhtml_list-presentation">
556   <xsl:param name="node" select="."/>
557   <xsl:call-template name="dbhtml-attribute">
558     <xsl:with-param name="pis" select="$node/processing-instruction('dbhtml')"/>
559     <xsl:with-param name="attribute" select="'list-presentation'"/>
560   </xsl:call-template>
561 </xsl:template>
562
563 <doc:pi xmlns="" name="dbhtml_list-width">
564   <refpurpose xmlns="http://www.w3.org/1999/xhtml">Specifies the width of a variablelist or simplelist</refpurpose>
565   <refdescription xmlns="http://www.w3.org/1999/xhtml">
566     <para>Use the <tag class="xmlpi">dbhtml list-width</tag> PI as a child of a
567       <tag>variablelist</tag> or a <tag>simplelist</tag> presented
568       as a table, to specify the output width.</para>
569   </refdescription>
570   <refsynopsisdiv xmlns="http://www.w3.org/1999/xhtml">
571     <synopsis><tag class="xmlpi">dbhtml list-width="<replaceable>width</replaceable>"</tag></synopsis>
572   </refsynopsisdiv>
573   <refparameter xmlns="http://www.w3.org/1999/xhtml">
574     <variablelist>
575       <varlistentry><term>list-width="<replaceable>width</replaceable>"</term>
576         <listitem>
577           <para>Specifies the output width (including units)</para>
578         </listitem>
579       </varlistentry>
580     </variablelist>
581   </refparameter>
582   <refsee xmlns="http://www.w3.org/1999/xhtml" role="tcg">
583     <para><link role="tcg" xlink:href="Variablelists.html#VarListFormatting">Variable list formatting in HTML</link></para>
584   </refsee>
585 </doc:pi>
586 <xsl:template name="pi.dbhtml_list-width">
587   <xsl:param name="node" select="."/>
588   <xsl:call-template name="dbhtml-attribute">
589     <xsl:with-param name="pis" select="$node/processing-instruction('dbhtml')"/>
590     <xsl:with-param name="attribute" select="'list-width'"/>
591   </xsl:call-template>
592 </xsl:template>
593
594 <doc:pi xmlns="" name="dbhtml_row-height">
595   <refpurpose xmlns="http://www.w3.org/1999/xhtml">Specifies the height for a CALS table row</refpurpose>
596   <refdescription xmlns="http://www.w3.org/1999/xhtml">
597     <para>Use the <tag class="xmlpi">dbhtml row-height</tag> PI as a child of a
598       <tag>row</tag> to specify the height of the row.</para>
599   </refdescription>
600   <refsynopsisdiv xmlns="http://www.w3.org/1999/xhtml">
601     <synopsis><tag class="xmlpi">dbhtml row-height="<replaceable>height</replaceable>"</tag></synopsis>
602   </refsynopsisdiv>
603   <refparameter xmlns="http://www.w3.org/1999/xhtml">
604     <variablelist>
605       <varlistentry><term>row-height="<replaceable>height</replaceable>"</term>
606         <listitem>
607           <para>Specifies the row height (including units)</para>
608         </listitem>
609       </varlistentry>
610     </variablelist>
611   </refparameter>
612   <refsee xmlns="http://www.w3.org/1999/xhtml" role="tcg">
613     <para><link role="tcg" xlink:href="RowHeight.html">Row height</link></para>
614   </refsee>
615 </doc:pi>
616 <xsl:template name="pi.dbhtml_row-height">
617   <xsl:param name="node" select="."/>
618   <xsl:call-template name="dbhtml-attribute">
619     <xsl:with-param name="pis" select="$node/processing-instruction('dbhtml')"/>
620     <xsl:with-param name="attribute" select="'row-height'"/>
621   </xsl:call-template>
622 </xsl:template> 
623
624 <doc:pi xmlns="" name="dbhtml_start">
625   <refpurpose xmlns="http://www.w3.org/1999/xhtml">(obsolete) Sets the starting number on an ordered list</refpurpose>
626   <refdescription xmlns="http://www.w3.org/1999/xhtml">
627     <para><emphasis>This PI is obsolete</emphasis>. The intent of
628       this PI was to provide a means for setting a specific starting
629       number for an ordered list. Instead of this PI, set a value
630       for the <literal>override</literal> attribute on the first
631       <tag>listitem</tag> in the list; that will have the same
632       effect as what this PI was intended for.</para>
633   </refdescription>
634   <refsynopsisdiv xmlns="http://www.w3.org/1999/xhtml">
635     <synopsis><tag class="xmlpi">dbhtml start="<replaceable>character</replaceable>"</tag></synopsis>
636   </refsynopsisdiv>
637   <refparameter xmlns="http://www.w3.org/1999/xhtml">
638     <variablelist>
639       <varlistentry><term>start="<replaceable>character</replaceable>"</term>
640         <listitem>
641           <para>Specifies the character to use as the starting
642             number; use 0-9, a-z, A-Z, or lowercase or uppercase
643             Roman numerals</para>
644         </listitem>
645       </varlistentry>
646     </variablelist>
647   </refparameter>
648   <refsee xmlns="http://www.w3.org/1999/xhtml" role="tcg">
649     <para><link role="tcg" xlink:href="Orderedlists.html#ListStartNum">List starting number</link></para>
650   </refsee>
651 </doc:pi>
652 <xsl:template name="pi.dbhtml_start">
653   <xsl:param name="node" select="."/>
654   <xsl:call-template name="pi-attribute">
655     <xsl:with-param name="pis" select="$node/processing-instruction('dbhtml')"/>
656     <xsl:with-param name="attribute" select="'start'"/>
657   </xsl:call-template>
658 </xsl:template>
659
660   <doc:pi xmlns="" name="dbhtml_stop-chunking">
661         <refpurpose xmlns="http://www.w3.org/1999/xhtml">Do not chunk any descendants of this element.</refpurpose>
662         <refdescription xmlns="http://www.w3.org/1999/xhtml">
663     <para>When generating chunked HTML output, adding this PI as the child of an element that contains elements that would normally be generated on separate pages if generating chunked output causes chunking to stop at this point. No descendants of the current element will be split into new HTML pages:
664 <programlisting>&lt;section&gt;
665 &lt;title&gt;Configuring pencil&lt;/title&gt;
666 &lt;?dbhtml stop-chunking?&gt;
667
668 ...
669
670 &lt;/section&gt;</programlisting>
671 </para>
672   </refdescription>
673   <refsynopsisdiv xmlns="http://www.w3.org/1999/xhtml">
674     <synopsis><tag class="xmlpi">dbhtml stop-chunking</tag></synopsis>
675   </refsynopsisdiv>     
676   <refsee xmlns="http://www.w3.org/1999/xhtml" role="tcg">
677     <para><link role="tcg" xlink:href="Chunking.html">Chunking into multiple HTML files</link></para>
678   </refsee>
679   </doc:pi>
680   <!-- The code that handles the stop-chunking pi is in chunk-common.xsl -->
681
682 <doc:pi xmlns="" name="dbhtml_table-summary">
683   <refpurpose xmlns="http://www.w3.org/1999/xhtml">Specifies summary for CALS table, variablelist, segmentedlist, or qandaset output</refpurpose>
684   <refdescription xmlns="http://www.w3.org/1999/xhtml">
685     <para>Use the <tag class="xmlpi">dbhtml table-summary</tag> PI as a child of
686       a CALS <tag>table</tag>, <tag>variablelist</tag>,
687       <tag>segmentedlist</tag>, or <tag>qandaset</tag> to specify
688       the text for the HTML <literal>summary</literal> attribute
689       in the output HTML table.</para>
690   </refdescription>
691   <refsynopsisdiv xmlns="http://www.w3.org/1999/xhtml">
692     <synopsis><tag class="xmlpi">dbhtml table-summary="<replaceable>text</replaceable>"</tag></synopsis>
693   </refsynopsisdiv>
694   <refparameter xmlns="http://www.w3.org/1999/xhtml">
695     <variablelist>
696       <varlistentry><term>table-summary="<replaceable>text</replaceable>"</term>
697         <listitem>
698           <para>Specifies the summary text (zero or more characters)</para>
699         </listitem>
700       </varlistentry>
701     </variablelist>
702   </refparameter>
703   <refsee xmlns="http://www.w3.org/1999/xhtml" role="tcg">
704     <para><link role="tcg" xlink:href="Variablelists.html#VarListFormatting">Variable list formatting in HTML</link>,
705       <link role="tcg" xlink:href="TableSummary.html">Table summary text</link></para>
706   </refsee>
707 </doc:pi>
708 <xsl:template name="pi.dbhtml_table-summary">
709   <xsl:param name="node" select="."/>
710   <xsl:call-template name="dbhtml-attribute">
711     <xsl:with-param name="pis" select="$node/processing-instruction('dbhtml')"/>
712     <xsl:with-param name="attribute" select="'table-summary'"/>
713   </xsl:call-template>
714 </xsl:template>
715
716 <doc:pi xmlns="" name="dbhtml_table-width">
717   <refpurpose xmlns="http://www.w3.org/1999/xhtml">Specifies the width for a CALS table</refpurpose>
718   <refdescription xmlns="http://www.w3.org/1999/xhtml">
719     <para>Use the <tag class="xmlpi">dbhtml table-width</tag> PI as a child of a
720       CALS <tag>table</tag> to specify the width of the table in
721       output.</para>
722   </refdescription>
723   <refsynopsisdiv xmlns="http://www.w3.org/1999/xhtml">
724     <synopsis><tag class="xmlpi">dbhtml table-width="<replaceable>width</replaceable>"</tag></synopsis>
725   </refsynopsisdiv>
726   <refparameter xmlns="http://www.w3.org/1999/xhtml">
727     <variablelist>
728       <varlistentry><term>table-width="<replaceable>width</replaceable>"</term>
729         <listitem>
730           <para>Specifies the table width (including units or as a percentage)</para>
731         </listitem>
732       </varlistentry>
733     </variablelist>
734   </refparameter>
735   <refsee xmlns="http://www.w3.org/1999/xhtml" role="params">
736     <para><parameter>default.table.width</parameter></para>
737   </refsee>
738   <refsee xmlns="http://www.w3.org/1999/xhtml" role="tcg">
739     <para><link role="tcg" xlink:href="Tables.html#TableWidth">Table width</link></para>
740   </refsee>
741 </doc:pi>
742 <xsl:template name="pi.dbhtml_table-width">
743   <xsl:param name="node" select="."/>
744   <xsl:call-template name="dbhtml-attribute">
745     <xsl:with-param name="pis" select="$node/processing-instruction('dbhtml')"/>
746     <xsl:with-param name="attribute" select="'table-width'"/>
747   </xsl:call-template>
748 </xsl:template>
749
750 <doc:pi xmlns="" name="dbhtml_term-presentation">
751   <refpurpose xmlns="http://www.w3.org/1999/xhtml">Sets character formatting for terms in a variablelist</refpurpose>
752   <refdescription xmlns="http://www.w3.org/1999/xhtml">
753     <para>Use the <tag class="xmlpi">dbhtml term-presentation</tag> PI as a child
754       of a <tag>variablelist</tag> to set character formatting for
755       the <tag>term</tag> output of the list.</para>
756   </refdescription>
757   <refsynopsisdiv xmlns="http://www.w3.org/1999/xhtml">
758     <synopsis><tag class="xmlpi">dbhtml term-presentation="bold"|"italic"|"bold-italic"</tag></synopsis>
759   </refsynopsisdiv>
760   <refparameter xmlns="http://www.w3.org/1999/xhtml">
761     <variablelist>
762       <varlistentry><term>term-presentation="<replaceable>bold</replaceable>"</term>
763         <listitem>
764           <para>Specifies that terms are displayed in bold</para>
765         </listitem>
766       </varlistentry>
767       <varlistentry><term>term-presentation="<replaceable>italic</replaceable>"</term>
768         <listitem>
769           <para>Specifies that terms are displayed in italic</para>
770         </listitem>
771       </varlistentry>
772       <varlistentry><term>term-presentation="<replaceable>bold-italic</replaceable>"</term>
773         <listitem>
774           <para>Specifies that terms are displayed in bold-italic</para>
775         </listitem>
776       </varlistentry>
777     </variablelist>
778   </refparameter>
779   <refsee xmlns="http://www.w3.org/1999/xhtml" role="tcg">
780     <para><link role="tcg" xlink:href="Variablelists.html#VarListFormatting">Variable list formatting in HTML</link></para>
781   </refsee>
782 </doc:pi>
783 <xsl:template name="pi.dbhtml_term-presentation">
784   <xsl:param name="node" select="."/>
785   <xsl:call-template name="dbhtml-attribute">
786     <xsl:with-param name="pis" select="$node/processing-instruction('dbhtml')"/>
787     <xsl:with-param name="attribute" select="'term-presentation'"/>
788   </xsl:call-template>
789 </xsl:template>
790
791 <doc:pi xmlns="" name="dbhtml_term-separator">
792   <refpurpose xmlns="http://www.w3.org/1999/xhtml">Specifies separator text among terms in a varlistentry</refpurpose>
793   <refdescription xmlns="http://www.w3.org/1999/xhtml">
794     <para>Use the <tag class="xmlpi">dbhtml term-separator</tag> PI as a child
795       of a <tag>variablelist</tag> to specify the separator text
796       among <tag>term</tag> instances.</para>
797   </refdescription>
798   <refsynopsisdiv xmlns="http://www.w3.org/1999/xhtml">
799     <synopsis><tag class="xmlpi">dbhtml term-separator="<replaceable>text</replaceable>"</tag></synopsis>
800   </refsynopsisdiv>
801   <refparameter xmlns="http://www.w3.org/1999/xhtml">
802     <variablelist>
803       <varlistentry><term>term-separator="<replaceable>text</replaceable>"</term>
804         <listitem>
805           <para>Specifies the text (zero or more characters)</para>
806         </listitem>
807       </varlistentry>
808     </variablelist>
809   </refparameter>
810   <refsee xmlns="http://www.w3.org/1999/xhtml" role="params">
811     <para><parameter>variablelist.term.separator</parameter></para>
812   </refsee>
813   <refsee xmlns="http://www.w3.org/1999/xhtml" role="tcg">
814     <para><link role="tcg" xlink:href="Variablelists.html#VarListFormatting">Variable list formatting in HTML</link></para>
815   </refsee>
816 </doc:pi>
817 <xsl:template name="pi.dbhtml_term-separator">
818   <xsl:param name="node" select="."/>
819   <xsl:call-template name="dbhtml-attribute">
820     <xsl:with-param name="pis" select="$node/processing-instruction('dbhtml')"/>
821     <xsl:with-param name="attribute" select="'term-separator'"/>
822   </xsl:call-template>
823 </xsl:template>
824
825 <doc:pi xmlns="" name="dbhtml_term-width">
826   <refpurpose xmlns="http://www.w3.org/1999/xhtml">Specifies the term width for a variablelist</refpurpose>
827   <refdescription xmlns="http://www.w3.org/1999/xhtml">
828     <para>Use the <tag class="xmlpi">dbhtml term-width</tag> PI as a child of a
829       <tag>variablelist</tag> to specify the width for
830       <tag>term</tag> output.</para>
831   </refdescription>
832   <refsynopsisdiv xmlns="http://www.w3.org/1999/xhtml">
833     <synopsis><tag class="xmlpi">dbhtml term-width="<replaceable>width</replaceable>"</tag></synopsis>
834   </refsynopsisdiv>
835   <refparameter xmlns="http://www.w3.org/1999/xhtml">
836     <variablelist>
837       <varlistentry><term>term-width="<replaceable>width</replaceable>"</term>
838         <listitem>
839           <para>Specifies the term width (including units)</para>
840         </listitem>
841       </varlistentry>
842     </variablelist>
843   </refparameter>
844   <refsee xmlns="http://www.w3.org/1999/xhtml" role="tcg">
845     <para><link role="tcg" xlink:href="Variablelists.html#VarListFormatting">Variable list formatting in HTML</link></para>
846   </refsee>
847 </doc:pi>
848 <xsl:template name="pi.dbhtml_term-width">
849   <xsl:param name="node" select="."/>
850   <xsl:call-template name="dbhtml-attribute">
851     <xsl:with-param name="pis" select="$node/processing-instruction('dbhtml')"/>
852     <xsl:with-param name="attribute" select="'term-width'"/>
853   </xsl:call-template>
854 </xsl:template>
855
856 <doc:pi xmlns="" name="dbhtml_toc">
857   <refpurpose xmlns="http://www.w3.org/1999/xhtml">Specifies whether a TOC should be generated for a qandaset</refpurpose>
858   <refdescription xmlns="http://www.w3.org/1999/xhtml">
859     <para>Use the <tag class="xmlpi">dbhtml toc</tag> PI as a child of a
860       <tag>qandaset</tag> to specify whether a table of contents
861       (TOC) is generated for the <tag>qandaset</tag>.</para>
862   </refdescription>
863   <refsynopsisdiv xmlns="http://www.w3.org/1999/xhtml">
864     <synopsis><tag class="xmlpi">dbhtml toc="0"|"1"</tag></synopsis>
865   </refsynopsisdiv>
866   <refparameter xmlns="http://www.w3.org/1999/xhtml">
867     <variablelist>
868       <varlistentry><term>toc="0"</term>
869         <listitem>
870           <para>If zero, no TOC is generated</para>
871         </listitem>
872       </varlistentry>
873       <varlistentry><term>toc="1"</term>
874         <listitem>
875           <para>If <code>1</code> (or any non-zero value),
876             a TOC is generated</para>
877         </listitem>
878       </varlistentry>
879     </variablelist>
880   </refparameter>
881   <refsee xmlns="http://www.w3.org/1999/xhtml" role="tcg">
882     <para><link role="tcg" xlink:href="QandAtoc.html">Q and A list of questions</link>,
883       <link role="tcg" xlink:href="QandAformat.html">Q and A formatting</link></para>
884   </refsee>
885 </doc:pi>
886 <xsl:template name="pi.dbhtml_toc">
887   <xsl:param name="node" select="."/>
888   <xsl:call-template name="dbhtml-attribute">
889     <xsl:with-param name="pis" select="$node/processing-instruction('dbhtml')"/>
890     <xsl:with-param name="attribute" select="'toc'"/>
891   </xsl:call-template>
892 </xsl:template>
893
894 <doc:pi xmlns="" name="dbcmdlist">
895   <refpurpose xmlns="http://www.w3.org/1999/xhtml">Generates a hyperlinked list of commands</refpurpose>
896   <refdescription xmlns="http://www.w3.org/1999/xhtml">
897     <para>Use the <tag class="xmlpi">dbcmdlist</tag> PI as the child of any
898       element (for example, <tag>refsynopsisdiv</tag>) containing multiple
899       <tag>cmdsynopsis</tag> instances; a hyperlinked navigational
900       &#8220;command list&#8221; will be generated at the top of output for that
901       element, enabling users to quickly jump
902       to each command synopsis.</para>
903   </refdescription>
904   <refsynopsisdiv xmlns="http://www.w3.org/1999/xhtml">
905     <synopsis><tag class="xmlpi">dbcmdlist</tag></synopsis>
906   </refsynopsisdiv>
907   <refparameter xmlns="http://www.w3.org/1999/xhtml">
908     <para>[No parameters]</para>
909   </refparameter>
910 </doc:pi>
911 <xsl:template name="pi.dbcmdlist">
912   <xsl:variable name="cmdsynopses" select="..//d:cmdsynopsis"/>
913   <xsl:if test="count($cmdsynopses)&lt;1">
914     <xsl:message><xsl:text>No cmdsynopsis elements matched dbcmdlist PI, perhaps it's nested too deep?</xsl:text>
915     </xsl:message>
916   </xsl:if>
917   <dl>
918     <xsl:call-template name="process.cmdsynopsis.list">
919       <xsl:with-param name="cmdsynopses" select="$cmdsynopses"/>
920     </xsl:call-template>
921   </dl>
922 </xsl:template>
923
924 <doc:pi xmlns="" name="dbfunclist">
925   <refpurpose xmlns="http://www.w3.org/1999/xhtml">Generates a hyperlinked list of functions</refpurpose>
926   <refdescription xmlns="http://www.w3.org/1999/xhtml">
927     <para>Use the <tag class="xmlpi">dbfunclist</tag> PI as the child of any
928       element (for example, <tag>refsynopsisdiv</tag>) containing multiple
929       <tag>funcsynopsis</tag> instances; a hyperlinked
930       navigational &#8220;function list&#8221; will be generated at the top of
931       output for that element, enabling users to quickly
932       jump to to each function synopsis.</para>
933   </refdescription>
934   <refsynopsisdiv xmlns="http://www.w3.org/1999/xhtml">
935     <synopsis><tag class="xmlpi">dbfunclist</tag></synopsis>
936   </refsynopsisdiv>
937   <refparameter xmlns="http://www.w3.org/1999/xhtml">
938     <para>[No parameters]</para>
939   </refparameter>
940 </doc:pi>
941 <xsl:template name="pi.dbfunclist">
942   <xsl:variable name="funcsynopses" select="..//d:funcsynopsis"/>
943   <xsl:if test="count($funcsynopses)&lt;1">
944     <xsl:message><xsl:text>No funcsynopsis elements matched dbfunclist PI, perhaps it's nested too deep?</xsl:text>
945     </xsl:message>
946   </xsl:if>
947   <dl>
948     <xsl:call-template name="process.funcsynopsis.list">
949       <xsl:with-param name="funcsynopses" select="$funcsynopses"/>
950     </xsl:call-template>
951   </dl>
952 </xsl:template>
953
954 <doc:pi xmlns="" name="dbhtml-include_href">
955   <refpurpose xmlns="http://www.w3.org/1999/xhtml">Copies an external well-formed HTML/XML file into current doc</refpurpose>
956   <refdescription xmlns="http://www.w3.org/1999/xhtml">
957     <para>Use the <tag class="xmlpi">dbhtml-include href</tag> PI anywhere in a
958       document to cause the contents of the file referenced by the
959       <code>href</code> pseudo-attribute to be copied/inserted &#8220;as
960       is&#8221; into your HTML output at the point in document order
961       where the PI occurs in the source.</para>
962     <note>
963       <para>The referenced file may contain plain text (as long as
964         it is &#8220;wrapped&#8221; in an <tag>html</tag> element &#8212; see the
965         note below) or markup in any arbitrary vocabulary,
966         including HTML &#8212; but it must conform to XML
967         well-formedness constraints (because the feature in XSLT
968         1.0 for opening external files, the
969         <function>document()</function> function, can only handle
970         files that meet XML well-formedness constraints).</para>
971       <para>Among other things, XML well-formedness constraints
972         require a document to have <emphasis>a single root
973           element</emphasis>. So if the content you want to
974         include is plain text or is markup that does
975         <emphasis>not</emphasis> have a single root element,
976         <emphasis role="strong">wrap the content in an
977           <tag>html</tag> element</emphasis>. The stylesheets will
978         strip out that surrounding <tag>html</tag> &#8220;wrapper&#8221; when
979         they find it, leaving just the content you want to
980         insert.</para>
981     </note>
982   </refdescription>
983   <refsynopsisdiv xmlns="http://www.w3.org/1999/xhtml">
984     <synopsis><tag class="xmlpi">dbhtml-include href="<replaceable>URI</replaceable>"</tag></synopsis>
985   </refsynopsisdiv>
986   <refparameter xmlns="http://www.w3.org/1999/xhtml">
987     <variablelist>
988       <varlistentry><term>href="<replaceable>URI</replaceable>"</term>
989         <listitem>
990           <para>Specifies the URI for the file to include; the URI
991             can be, for example, a remote <literal>http:</literal>
992             URI, or a local filesystem <literal>file:</literal>
993             URI</para>
994         </listitem>
995       </varlistentry>
996     </variablelist>
997   </refparameter>
998   <refsee xmlns="http://www.w3.org/1999/xhtml" role="params">
999     <para><parameter>textinsert.extension</parameter></para>
1000   </refsee>
1001   <refsee xmlns="http://www.w3.org/1999/xhtml" role="tcg">
1002     <para><link role="tcg" xlink:href="InsertExtHtml.html">Inserting external HTML code</link>,
1003       <link role="tcg" xlink:href="ExternalCode.html">External code files</link></para>
1004   </refsee>
1005 </doc:pi>
1006 <xsl:template name="pi.dbhtml-include">
1007   <xsl:param name="href">
1008     <xsl:call-template name="dbhtml-attribute">
1009       <xsl:with-param name="pis" select="."/>
1010       <xsl:with-param name="attribute">href</xsl:with-param>
1011     </xsl:call-template>
1012   </xsl:param>
1013   <xsl:choose>
1014     <xsl:when test="$href != ''">
1015       <xsl:variable name="content" select="document($href,.)"/>
1016       <xsl:choose>
1017         <xsl:when test="$content/*">
1018           <xsl:choose>
1019             <xsl:when test="$content/*[1][self::html]">
1020               <!-- include just the children of html wrapper -->
1021               <xsl:copy-of select="$content/*[1]/node()"/>
1022             </xsl:when>
1023             <xsl:otherwise>
1024               <xsl:copy-of select="$content"/>
1025             </xsl:otherwise>
1026           </xsl:choose>
1027         </xsl:when>
1028         <xsl:otherwise>
1029           <xsl:message>
1030             <xsl:text>ERROR: dbhtml-include processing instruction </xsl:text>
1031             <xsl:text>href has no content.</xsl:text>
1032           </xsl:message>
1033         </xsl:otherwise>
1034       </xsl:choose>
1035     </xsl:when>
1036     <xsl:otherwise>
1037       <xsl:message>
1038         <xsl:text>ERROR: dbhtml-include processing instruction has </xsl:text>
1039         <xsl:text>missing or empty href value.</xsl:text>
1040       </xsl:message>
1041     </xsl:otherwise>
1042   </xsl:choose>
1043 </xsl:template>
1044
1045 <!-- There are two templates matching this PI in htmlhelp-common.xsl -->
1046 <doc:pi xmlns="" name="dbhh">
1047   <refpurpose xmlns="http://www.w3.org/1999/xhtml">Sets topic name and topic id for context-sensitive HTML Help</refpurpose>
1048   <refdescription xmlns="http://www.w3.org/1999/xhtml">
1049     <para>Use the <tag class="xmlpi">dbhh</tag> PI as a child of components
1050       that should be used as targets for context-sensitive help requests.</para>
1051   </refdescription>
1052   <refsynopsisdiv xmlns="http://www.w3.org/1999/xhtml">
1053     <synopsis><tag class="xmlpi">dbhh topicname="<replaceable>name</replaceable>" topicid="<replaceable>id</replaceable>"</tag></synopsis>
1054   </refsynopsisdiv>
1055   <refparameter xmlns="http://www.w3.org/1999/xhtml">
1056     <variablelist>
1057       <varlistentry><term>topicname="<replaceable>name</replaceable>"</term>
1058         <listitem>
1059           <para>Specifies a unique string constant that identifies a help topic</para>
1060         </listitem>
1061       </varlistentry>
1062       <varlistentry><term>topicid="<replaceable>id</replaceable>"</term>
1063         <listitem>
1064           <para>Specifies a unique integer value for the <literal>topicname</literal> string</para>
1065         </listitem>
1066       </varlistentry>
1067     </variablelist>
1068   </refparameter>
1069   <refsee xmlns="http://www.w3.org/1999/xhtml" role="tcg">
1070     <para><link role="tcg" xlink:href="HtmlHelp.html#HHContextHelp">Context-sensitive help</link></para>
1071   </refsee>
1072 </doc:pi>
1073
1074 <!-- ==================================================================== -->
1075
1076 <xsl:template name="dbhtml-attribute">
1077   <!-- * dbhtml-attribute is an interal utility template for retrieving -->
1078   <!-- * pseudo-attributes/parameters from PIs -->
1079   <xsl:param name="pis" select="processing-instruction('dbhtml')"/>
1080   <xsl:param name="attribute">filename</xsl:param>
1081   <xsl:call-template name="pi-attribute">
1082     <xsl:with-param name="pis" select="$pis"/>
1083     <xsl:with-param name="attribute" select="$attribute"/>
1084   </xsl:call-template>
1085 </xsl:template>
1086
1087 <!-- ==================================================================== -->
1088
1089 <xsl:template match="processing-instruction()">
1090 </xsl:template>
1091
1092 <xsl:template match="processing-instruction('dbhtml')">
1093   <!-- nop -->
1094 </xsl:template>
1095
1096 <!-- ==================================================================== -->
1097
1098 <xsl:template match="processing-instruction('dbcmdlist')">
1099   <xsl:call-template name="pi.dbcmdlist"/>
1100 </xsl:template>
1101 <xsl:template name="process.cmdsynopsis.list">
1102   <xsl:param name="cmdsynopses"/><!-- empty node list by default -->
1103   <xsl:param name="count" select="1"/>
1104
1105   <xsl:choose>
1106     <xsl:when test="$count&gt;count($cmdsynopses)"/>
1107     <xsl:otherwise>
1108       <xsl:variable name="cmdsyn" select="$cmdsynopses[$count]"/>
1109
1110        <dt>
1111        <a>
1112          <xsl:attribute name="href">
1113            <xsl:text>#</xsl:text>
1114            <xsl:call-template name="object.id">
1115              <xsl:with-param name="object" select="$cmdsyn"/>
1116            </xsl:call-template>
1117          </xsl:attribute>
1118
1119          <xsl:choose>
1120            <xsl:when test="$cmdsyn/@xreflabel">
1121              <xsl:call-template name="xref.xreflabel">
1122                <xsl:with-param name="target" select="$cmdsyn"/>
1123              </xsl:call-template>
1124            </xsl:when>
1125            <xsl:otherwise>
1126              <xsl:apply-templates select="$cmdsyn" mode="xref-to">
1127                <xsl:with-param name="target" select="$cmdsyn"/>
1128              </xsl:apply-templates>
1129            </xsl:otherwise>
1130          </xsl:choose>
1131        </a>
1132        </dt>
1133
1134         <xsl:call-template name="process.cmdsynopsis.list">
1135           <xsl:with-param name="cmdsynopses" select="$cmdsynopses"/>
1136           <xsl:with-param name="count" select="$count+1"/>
1137         </xsl:call-template>
1138       </xsl:otherwise>
1139     </xsl:choose>
1140 </xsl:template>
1141
1142 <!-- ==================================================================== -->
1143
1144 <xsl:template match="processing-instruction('dbfunclist')">
1145   <xsl:call-template name="pi.dbfunclist"/>
1146 </xsl:template>
1147 <xsl:template name="process.funcsynopsis.list">
1148   <xsl:param name="funcsynopses"/><!-- empty node list by default -->
1149   <xsl:param name="count" select="1"/>
1150
1151   <xsl:choose>
1152     <xsl:when test="$count&gt;count($funcsynopses)"/>
1153     <xsl:otherwise>
1154       <xsl:variable name="cmdsyn" select="$funcsynopses[$count]"/>
1155
1156        <dt>
1157        <a>
1158          <xsl:attribute name="href">
1159            <xsl:text>#</xsl:text>
1160            <xsl:call-template name="object.id">
1161              <xsl:with-param name="object" select="$cmdsyn"/>
1162            </xsl:call-template>
1163          </xsl:attribute>
1164
1165          <xsl:choose>
1166            <xsl:when test="$cmdsyn/@xreflabel">
1167              <xsl:call-template name="xref.xreflabel">
1168                <xsl:with-param name="target" select="$cmdsyn"/>
1169              </xsl:call-template>
1170            </xsl:when>
1171            <xsl:otherwise>
1172               <xsl:apply-templates select="$cmdsyn" mode="xref-to">
1173                 <xsl:with-param name="target" select="$cmdsyn"/>
1174               </xsl:apply-templates>
1175            </xsl:otherwise>
1176          </xsl:choose>
1177        </a>
1178        </dt>
1179
1180         <xsl:call-template name="process.funcsynopsis.list">
1181           <xsl:with-param name="funcsynopses" select="$funcsynopses"/>
1182           <xsl:with-param name="count" select="$count+1"/>
1183         </xsl:call-template>
1184       </xsl:otherwise>
1185     </xsl:choose>
1186 </xsl:template>
1187
1188 <!-- ==================================================================== -->
1189
1190 <xsl:template match="processing-instruction('dbhtml-include')">
1191   <xsl:call-template name="pi.dbhtml-include"/>
1192 </xsl:template>
1193
1194 <!-- ==================================================================== -->
1195
1196 <xsl:template name="dbhtml-dir">
1197   <xsl:param name="context" select="."/>
1198   <!-- directories are now inherited from previous levels -->
1199   <xsl:variable name="ppath">
1200     <xsl:if test="$context/parent::*">
1201       <xsl:call-template name="dbhtml-dir">
1202         <xsl:with-param name="context" select="$context/parent::*"/>
1203       </xsl:call-template>
1204     </xsl:if>
1205   </xsl:variable>
1206   <xsl:variable name="path">
1207     <xsl:call-template name="pi.dbhtml_dir">
1208       <xsl:with-param name="node" select="$context"/>
1209     </xsl:call-template>
1210   </xsl:variable>
1211   <xsl:choose>
1212     <xsl:when test="$path = ''">
1213       <xsl:if test="$ppath != ''">
1214         <xsl:value-of select="$ppath"/>
1215       </xsl:if>
1216     </xsl:when>
1217     <xsl:otherwise>
1218       <xsl:if test="$ppath != ''">
1219         <xsl:value-of select="$ppath"/>
1220         <xsl:if test="substring($ppath, string-length($ppath), 1) != '/'">
1221           <xsl:text>/</xsl:text>
1222         </xsl:if>
1223       </xsl:if>
1224       <xsl:value-of select="$path"/>
1225       <xsl:text>/</xsl:text>
1226     </xsl:otherwise>
1227   </xsl:choose>
1228 </xsl:template>
1229
1230 </xsl:stylesheet>