pi.xsl 37 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008
  1. <?xml version='1.0'?>
  2. <xsl:stylesheet
  3. xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  4. xmlns:doc="http://nwalsh.com/xsl/documentation/1.0"
  5. xmlns:fo="http://www.w3.org/1999/XSL/Format"
  6. xmlns:xlink="http://www.w3.org/1999/xlink"
  7. exclude-result-prefixes="doc"
  8. version='1.0'>
  9. <!-- ********************************************************************
  10. $Id$
  11. ********************************************************************
  12. This file is part of the XSL DocBook Stylesheet distribution.
  13. See ../README or http://docbook.sf.net/release/xsl/current/ for
  14. copyright and other information.
  15. ******************************************************************** -->
  16. <doc:reference xmlns=""><info><title>FO Processing Instruction Reference</title>
  17. <releaseinfo role="meta">
  18. $Id$
  19. </releaseinfo>
  20. </info>
  21. <partintro id="partintro">
  22. <title>Introduction</title>
  23. <para>This is generated reference documentation for all
  24. user-specifiable processing instructions (PIs) in the DocBook
  25. XSL stylesheets for FO output.
  26. <note>
  27. <para>You add these PIs at particular points in a document to
  28. cause specific “exceptions” to formatting/output behavior. To
  29. make global changes in formatting/output behavior across an
  30. entire document, it’s better to do it by setting an
  31. appropriate stylesheet parameter (if there is one).</para>
  32. </note>
  33. </para>
  34. </partintro>
  35. </doc:reference>
  36. <!-- ==================================================================== -->
  37. <doc:pi name="dbfo_background-color" xmlns="">
  38. <refpurpose>Sets background color for an image</refpurpose>
  39. <refdescription>
  40. <para>Use the <tag class="xmlpi">dbfo background-color</tag> PI before or
  41. after an image (<tag>graphic</tag>, <tag>inlinegraphic</tag>,
  42. <tag>imagedata</tag>, or <tag>videodata</tag> element) as a
  43. sibling to the element, to set a background color for the
  44. image.</para>
  45. </refdescription>
  46. <refsynopsisdiv>
  47. <synopsis><tag class="xmlpi">dbfo background-color="<replaceable>color</replaceable>"</tag></synopsis>
  48. </refsynopsisdiv>
  49. <refparameter>
  50. <variablelist>
  51. <varlistentry><term>background-color="<replaceable>color</replaceable>"</term>
  52. <listitem>
  53. <para>An HTML color value</para>
  54. </listitem>
  55. </varlistentry>
  56. </variablelist>
  57. </refparameter>
  58. <refsee role="tcg">
  59. <para><link role="tcg"
  60. xlink:href="BGcolor.html"
  61. >Background color</link></para>
  62. </refsee>
  63. </doc:pi>
  64. <xsl:template name="pi.dbfo_background-color">
  65. <xsl:param name="node" select="."/>
  66. <xsl:call-template name="dbfo-attribute">
  67. <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/>
  68. <xsl:with-param name="attribute" select="'background-color'"/>
  69. </xsl:call-template>
  70. </xsl:template>
  71. <doc:pi name="dbfo_bgcolor" xmlns="">
  72. <refpurpose>Sets background color on a table row or table cell</refpurpose>
  73. <refdescription>
  74. <para>Use the <tag class="xmlpi">dbfo bgcolor</tag> PI as child of a table row
  75. or cell to set a background color for that table row or cell.</para>
  76. </refdescription>
  77. <refsynopsisdiv>
  78. <synopsis><tag class="xmlpi">dbfo bgcolor="<replaceable>color</replaceable>"</tag></synopsis>
  79. </refsynopsisdiv>
  80. <refparameter>
  81. <variablelist>
  82. <varlistentry><term>bgcolor="<replaceable>color</replaceable>"</term>
  83. <listitem>
  84. <para>An HTML color value</para>
  85. </listitem>
  86. </varlistentry>
  87. </variablelist>
  88. </refparameter>
  89. <refsee role="tcg">
  90. <para><link role="tcg"
  91. xlink:href="BGtableColor.html#CellBGColor"
  92. >Cell background color</link></para>
  93. </refsee>
  94. </doc:pi>
  95. <xsl:template name="pi.dbfo_bgcolor">
  96. <xsl:param name="node" select="."/>
  97. <xsl:call-template name="dbfo-attribute">
  98. <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/>
  99. <xsl:with-param name="attribute" select="'bgcolor'"/>
  100. </xsl:call-template>
  101. </xsl:template>
  102. <doc:pi name="dbfo_float-type" xmlns="">
  103. <refpurpose>Specifies float behavior for a sidebar</refpurpose>
  104. <refdescription>
  105. <para>Use the <tag class="xmlpi">dbfo float-type</tag> PI to specify the float
  106. behavior for a <tag>sidebar</tag> (to cause the sidebar to be
  107. displayed as a marginal note).</para>
  108. </refdescription>
  109. <refsynopsisdiv>
  110. <synopsis><tag class="xmlpi">dbfo float-type="margin.note"</tag></synopsis>
  111. </refsynopsisdiv>
  112. <refparameter>
  113. <variablelist>
  114. <varlistentry><term>float-type="margin.note"</term>
  115. <listitem>
  116. <para>Specifies that the <tag>sidebar</tag> should be
  117. displayed as a marginal note.</para>
  118. </listitem>
  119. </varlistentry>
  120. </variablelist>
  121. </refparameter>
  122. <refsee role="params">
  123. <para><parameter>sidebar.float.type parameter</parameter>,
  124. <parameter>sidebar.float.width parameter</parameter>,
  125. <parameter>sidebar.properties attribute-set</parameter>,
  126. <parameter>sidebar.title.properties</parameter>
  127. </para>
  128. </refsee>
  129. <refsee role="tcg">
  130. <para><link xlink:href="SideFloats.html#SidebarFloats" >A sidebar as
  131. side float</link></para>
  132. </refsee>
  133. </doc:pi>
  134. <xsl:template name="pi.dbfo_float-type">
  135. <xsl:param name="node" select="."/>
  136. <xsl:call-template name="dbfo-attribute">
  137. <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/>
  138. <xsl:with-param name="attribute" select="'float-type'"/>
  139. </xsl:call-template>
  140. </xsl:template>
  141. <doc:pi name="dbfo_glossary-presentation" xmlns="">
  142. <refpurpose>Specifies presentation style for a glossary</refpurpose>
  143. <refdescription>
  144. <para>Use the <tag class="xmlpi">dbfo glossary-presentation</tag> PI as a child of
  145. a <tag>glossary</tag> to control its presentation style.</para>
  146. </refdescription>
  147. <refsynopsisdiv>
  148. <synopsis><tag class="xmlpi">dbfo glossary-presentation="list"|"blocks"</tag></synopsis>
  149. </refsynopsisdiv>
  150. <refparameter>
  151. <variablelist>
  152. <varlistentry><term>glossary-presentation="list"</term>
  153. <listitem>
  154. <para>Displays the glossary as a list</para>
  155. </listitem>
  156. </varlistentry>
  157. <varlistentry><term>glossary-presentation="blocks"</term>
  158. <listitem>
  159. <para>Displays the glossary as blocks</para>
  160. </listitem>
  161. </varlistentry>
  162. </variablelist>
  163. </refparameter>
  164. <refsee role="params">
  165. <para><parameter>glossary.as.blocks</parameter></para>
  166. </refsee>
  167. <refsee role="tcg">
  168. <para><link xlink:href="Glossaries.html#GlossaryFormatPrint" >Glossary
  169. formatting in print</link></para>
  170. </refsee>
  171. </doc:pi>
  172. <xsl:template name="pi.dbfo_glossary-presentation">
  173. <xsl:param name="node" select="."/>
  174. <xsl:call-template name="dbfo-attribute">
  175. <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/>
  176. <xsl:with-param name="attribute" select="'glossary-presentation'"/>
  177. </xsl:call-template>
  178. </xsl:template>
  179. <doc:pi name="dbfo_glosslist-presentation" xmlns="">
  180. <refpurpose>Specifies presentation style for a glosslist</refpurpose>
  181. <refdescription>
  182. <para>Use the <tag class="xmlpi">dbfo glosslist-presentation</tag> PI as a child of
  183. a <tag>glosslist</tag> to control its presentation style.</para>
  184. </refdescription>
  185. <refsynopsisdiv>
  186. <synopsis><tag class="xmlpi">dbfo glosslist-presentation="list"|"blocks"</tag></synopsis>
  187. </refsynopsisdiv>
  188. <refparameter>
  189. <variablelist>
  190. <varlistentry><term>glosslist-presentation="list"</term>
  191. <listitem>
  192. <para>Displays the glosslist as a list</para>
  193. </listitem>
  194. </varlistentry>
  195. <varlistentry><term>glosslist-presentation="blocks"</term>
  196. <listitem>
  197. <para>Displays the glosslist as blocks</para>
  198. </listitem>
  199. </varlistentry>
  200. </variablelist>
  201. </refparameter>
  202. <refsee role="params">
  203. <para><parameter>glosslist.as.blocks</parameter> </para>
  204. </refsee>
  205. <refsee role="tcg">
  206. <para><link xlink:href="Glossaries.html#GlossaryFormatPrint" >Glossary
  207. formatting in print</link></para>
  208. </refsee>
  209. </doc:pi>
  210. <xsl:template name="pi.dbfo_glosslist-presentation">
  211. <xsl:param name="node" select="."/>
  212. <xsl:call-template name="dbfo-attribute">
  213. <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/>
  214. <xsl:with-param name="attribute" select="'glosslist-presentation'"/>
  215. </xsl:call-template>
  216. </xsl:template>
  217. <doc:pi name="dbfo_glossterm-width" xmlns="">
  218. <refpurpose>Specifies the glossterm width for a glossary or
  219. glosslist</refpurpose>
  220. <refdescription>
  221. <para>Use the <tag class="xmlpi">dbfo glossterm-width</tag> PI as a child of a
  222. <tag>glossary</tag> or <tag>glosslist</tag> to specify the
  223. width for output of <tag>glossterm</tag> instances in the
  224. output.</para>
  225. </refdescription>
  226. <refsynopsisdiv>
  227. <synopsis><tag class="xmlpi">dbfo glossterm-width="<replaceable>width</replaceable>"</tag></synopsis>
  228. </refsynopsisdiv>
  229. <refparameter>
  230. <variablelist>
  231. <varlistentry><term>glossterm-width="<replaceable>width</replaceable>"</term>
  232. <listitem>
  233. <para>Specifies the glossterm width (including units)</para>
  234. </listitem>
  235. </varlistentry>
  236. </variablelist>
  237. </refparameter>
  238. <refsee role="params">
  239. <para><parameter>glossterm.width</parameter>,
  240. <parameter>glossterm.separation</parameter>
  241. </para>
  242. </refsee>
  243. <refsee role="tcg">
  244. <para><link xlink:href="Glossaries.html#GlossaryFormatPrint" >Glossary
  245. formatting in print</link></para>
  246. </refsee>
  247. </doc:pi>
  248. <xsl:template name="pi.dbfo_glossterm-width">
  249. <xsl:param name="node" select="."/>
  250. <xsl:call-template name="dbfo-attribute">
  251. <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/>
  252. <xsl:with-param name="attribute" select="'glossterm-width'"/>
  253. </xsl:call-template>
  254. </xsl:template>
  255. <doc:pi name="dbfo_keep-together" xmlns="">
  256. <refpurpose>Specifies “keep” behavior for a table, example,
  257. figure, or equation</refpurpose>
  258. <refdescription>
  259. <para>Use the <tag class="xmlpi">dbfo keep-together</tag> PI as a child of a
  260. formal object (<tag>table</tag>, <tag>example</tag>,
  261. <tag>figure</tag>, or <tag>equation</tag>) or their informal
  262. equivalents) to specify “keep” behavior for the object (to
  263. allow the object to “break” across a page).</para>
  264. </refdescription>
  265. <refsynopsisdiv>
  266. <synopsis><tag class="xmlpi">dbfo keep-together="auto"|"always"</tag></synopsis>
  267. </refsynopsisdiv>
  268. <refparameter>
  269. <variablelist>
  270. <varlistentry><term>keep-together="auto"</term>
  271. <listitem>
  272. <para>Enables the object to break across a page</para>
  273. </listitem>
  274. </varlistentry>
  275. <varlistentry><term>keep-together="always"</term>
  276. <listitem>
  277. <para>Prevents the object from breaking across a page (the
  278. default stylesheet behavior)</para>
  279. </listitem>
  280. </varlistentry>
  281. </variablelist>
  282. </refparameter>
  283. <refsee role="params">
  284. <para>formal.object.properties</para>
  285. </refsee>
  286. <refsee role="tcg">
  287. <para><link xlink:href="PageBreaking.html#KeepTogetherPI"
  288. >Keep-together processing instruction</link></para>
  289. </refsee>
  290. </doc:pi>
  291. <xsl:template name="pi.dbfo_keep-together">
  292. <xsl:param name="node" select="."/>
  293. <xsl:call-template name="dbfo-attribute">
  294. <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/>
  295. <xsl:with-param name="attribute" select="'keep-together'"/>
  296. </xsl:call-template>
  297. </xsl:template>
  298. <doc:pi name="dbfo_label-width" xmlns="">
  299. <refpurpose>Specifies the label width for a qandaset</refpurpose>
  300. <refdescription>
  301. <para>Use the <tag class="xmlpi">dbfo label-width</tag> PI as a child of a
  302. <tag>qandaset</tag> to specify the width of labels.</para>
  303. </refdescription>
  304. <refsynopsisdiv>
  305. <synopsis><tag class="xmlpi">dbfo label-width="<replaceable>width</replaceable>"</tag></synopsis>
  306. </refsynopsisdiv>
  307. <refparameter>
  308. <variablelist>
  309. <varlistentry><term>label-width="<replaceable>width</replaceable>"</term>
  310. <listitem>
  311. <para>Specifies the label width (including units)</para>
  312. </listitem>
  313. </varlistentry>
  314. </variablelist>
  315. </refparameter>
  316. <refsee role="tcg">
  317. <para><link role="tcg"
  318. xlink:href="QandAformat.html"
  319. >Q and A formatting</link></para>
  320. </refsee>
  321. </doc:pi>
  322. <xsl:template name="pi.dbfo_label-width">
  323. <xsl:param name="node" select="."/>
  324. <xsl:call-template name="dbfo-attribute">
  325. <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/>
  326. <xsl:with-param name="attribute" select="'label-width'"/>
  327. </xsl:call-template>
  328. </xsl:template>
  329. <doc:pi name="dbfo_linenumbering.everyNth" xmlns="">
  330. <refpurpose>Specifies interval for lines numbers in verbatims</refpurpose>
  331. <refdescription>
  332. <para>Use the <tag class="xmlpi">dbfo linenumbering.everyNth</tag> PI as a child
  333. of a “verbatim” element – <tag>programlisting</tag>,
  334. <tag>screen</tag>, <tag>synopsis</tag> — to specify
  335. the interval at which lines are numbered.</para>
  336. </refdescription>
  337. <refsynopsisdiv>
  338. <synopsis><tag class="xmlpi">dbfo linenumbering.everyNth="<replaceable>N</replaceable>"</tag></synopsis>
  339. </refsynopsisdiv>
  340. <refparameter>
  341. <variablelist>
  342. <varlistentry><term>linenumbering.everyNth="<replaceable>N</replaceable>"</term>
  343. <listitem>
  344. <para>Specifies numbering interval; a number is output
  345. before every <replaceable>N</replaceable>th line</para>
  346. </listitem>
  347. </varlistentry>
  348. </variablelist>
  349. </refparameter>
  350. <refsee role="params">
  351. <para><parameter>linenumbering.everyNth</parameter></para>
  352. </refsee>
  353. <refsee role="tcg">
  354. <para><link role="tcg"
  355. xlink:href="AnnotateListing.html#LineNumbering"
  356. >Line numbering</link></para>
  357. </refsee>
  358. </doc:pi>
  359. <xsl:template name="pi.dbfo_linenumbering.everyNth">
  360. <xsl:param name="node" select="."/>
  361. <xsl:call-template name="dbfo-attribute">
  362. <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/>
  363. <xsl:with-param name="attribute" select="'linenumbering.everyNth'"/>
  364. </xsl:call-template>
  365. </xsl:template>
  366. <doc:pi name="dbfo_linenumbering.separator" xmlns="">
  367. <refpurpose>Specifies separator text for line numbers in verbatims</refpurpose>
  368. <refdescription>
  369. <para>Use the <tag class="xmlpi">dbfo linenumbering.separator</tag> PI as a child
  370. of a “verbatim” element – <tag>programlisting</tag>,
  371. <tag>screen</tag>, <tag>synopsis</tag> — to specify
  372. the separator text output between the line numbers and content.</para>
  373. </refdescription>
  374. <refsynopsisdiv>
  375. <synopsis><tag class="xmlpi">dbfo linenumbering.separator="<replaceable>text</replaceable>"</tag></synopsis>
  376. </refsynopsisdiv>
  377. <refparameter>
  378. <variablelist>
  379. <varlistentry><term>linenumbering.separator="<replaceable>text</replaceable>"</term>
  380. <listitem>
  381. <para>Specifies the text (zero or more characters)</para>
  382. </listitem>
  383. </varlistentry>
  384. </variablelist>
  385. </refparameter>
  386. <refsee role="params">
  387. <para><parameter>linenumbering.separator</parameter></para>
  388. </refsee>
  389. <refsee role="tcg">
  390. <para><link role="tcg"
  391. xlink:href="AnnotateListing.html#LineNumbering"
  392. >Line numbering</link></para>
  393. </refsee>
  394. </doc:pi>
  395. <xsl:template name="pi.dbfo_linenumbering.separator">
  396. <xsl:param name="node" select="."/>
  397. <xsl:call-template name="dbfo-attribute">
  398. <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/>
  399. <xsl:with-param name="attribute" select="'linenumbering.separator'"/>
  400. </xsl:call-template>
  401. </xsl:template>
  402. <doc:pi name="dbfo_linenumbering.width" xmlns="">
  403. <refpurpose>Specifies width for line numbers in verbatims</refpurpose>
  404. <refdescription>
  405. <para>Use the <tag class="xmlpi">dbfo linenumbering.width</tag> PI as a child
  406. of a “verbatim” element – <tag>programlisting</tag>,
  407. <tag>screen</tag>, <tag>synopsis</tag> — to specify
  408. the width set aside for line numbers.</para>
  409. </refdescription>
  410. <refsynopsisdiv>
  411. <synopsis><tag class="xmlpi">dbfo linenumbering.width="<replaceable>width</replaceable>"</tag></synopsis>
  412. </refsynopsisdiv>
  413. <refparameter>
  414. <variablelist>
  415. <varlistentry><term>linenumbering.width="<replaceable>width</replaceable>"</term>
  416. <listitem>
  417. <para>Specifies the width (inluding units)</para>
  418. </listitem>
  419. </varlistentry>
  420. </variablelist>
  421. </refparameter>
  422. <refsee role="params">
  423. <para><parameter>linenumbering.width</parameter></para>
  424. </refsee>
  425. <refsee role="tcg">
  426. <para><link role="tcg"
  427. xlink:href="AnnotateListing.html#LineNumbering"
  428. >Line numbering</link></para>
  429. </refsee>
  430. </doc:pi>
  431. <xsl:template name="pi.dbfo_linenumbering.width">
  432. <xsl:param name="node" select="."/>
  433. <xsl:call-template name="dbfo-attribute">
  434. <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/>
  435. <xsl:with-param name="attribute" select="'linenumbering.width'"/>
  436. </xsl:call-template>
  437. </xsl:template>
  438. <doc:pi name="dbfo_list-presentation" xmlns="">
  439. <refpurpose>Specifies presentation style for a variablelist or
  440. segmentedlist</refpurpose>
  441. <refdescription>
  442. <para>Use the <tag class="xmlpi">dbfo list-presentation</tag> PI as a child of
  443. a <tag>variablelist</tag> or <tag>segmentedlist</tag> to
  444. control the presentation style for the list (to cause it, for
  445. example, to be displayed as a table).</para>
  446. </refdescription>
  447. <refsynopsisdiv>
  448. <synopsis><tag class="xmlpi">dbfo list-presentation="list"|"blocks"|"table"</tag></synopsis>
  449. </refsynopsisdiv>
  450. <refparameter>
  451. <variablelist>
  452. <varlistentry><term>list-presentation="list"</term>
  453. <listitem>
  454. <para>Displays the list as a list</para>
  455. </listitem>
  456. </varlistentry>
  457. <varlistentry><term>list-presentation="blocks"</term>
  458. <listitem>
  459. <para>(<tag>variablelist</tag> only) Displays the list as blocks</para>
  460. </listitem>
  461. </varlistentry>
  462. <varlistentry><term>list-presentation="table"</term>
  463. <listitem>
  464. <para>(<tag>segmentedlist</tag> only) Displays the list as a table</para>
  465. </listitem>
  466. </varlistentry>
  467. </variablelist>
  468. </refparameter>
  469. <refsee role="params">
  470. <itemizedlist>
  471. <listitem>
  472. <para><parameter>variablelist.as.blocks</parameter></para>
  473. </listitem>
  474. <listitem>
  475. <para><parameter>variablelist.as.table</parameter></para>
  476. </listitem>
  477. </itemizedlist>
  478. </refsee>
  479. <refsee role="tcg">
  480. <para><link role="tcg"
  481. xlink:href="Variablelists.html#ListIndents"
  482. >Variable list formatting in print</link></para>
  483. </refsee>
  484. </doc:pi>
  485. <xsl:template name="pi.dbfo_list-presentation">
  486. <xsl:param name="node" select="."/>
  487. <xsl:call-template name="dbfo-attribute">
  488. <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/>
  489. <xsl:with-param name="attribute" select="'list-presentation'"/>
  490. </xsl:call-template>
  491. </xsl:template>
  492. <doc:pi name="dbfo_list-width" xmlns="">
  493. <refpurpose>Specifies the width of a horizontal simplelist</refpurpose>
  494. <refdescription>
  495. <para>Use the <tag class="xmlpi">dbfo list-width</tag> PI as a child of a
  496. <tag>simplelist</tag> whose <tag class="attribute">class</tag>
  497. value is <literal>horizontal</literal>, to specify the width
  498. of the <tag>simplelist</tag>.</para>
  499. </refdescription>
  500. <refsynopsisdiv>
  501. <synopsis><tag class="xmlpi">dbfo list-width="<replaceable>width</replaceable>"</tag></synopsis>
  502. </refsynopsisdiv>
  503. <refparameter>
  504. <variablelist>
  505. <varlistentry><term>list-width="<replaceable>width</replaceable>"</term>
  506. <listitem>
  507. <para>Specifies the <tag>simplelist</tag> width (including units)</para>
  508. </listitem>
  509. </varlistentry>
  510. </variablelist>
  511. </refparameter>
  512. </doc:pi>
  513. <xsl:template name="pi.dbfo_list-width">
  514. <xsl:param name="node" select="."/>
  515. <xsl:call-template name="dbfo-attribute">
  516. <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/>
  517. <xsl:with-param name="attribute" select="'list-width'"/>
  518. </xsl:call-template>
  519. </xsl:template>
  520. <doc:pi name="dbfo_orientation" xmlns="">
  521. <refpurpose>Specifies the orientation for table row or cell</refpurpose>
  522. <refdescription>
  523. <para>Use the <tag class="xmlpi">dbfo orientation</tag> PI as a child of an
  524. <tag>table</tag> row or cell to specify the orientation
  525. (rotation) for the row or cell.</para>
  526. </refdescription>
  527. <refsynopsisdiv>
  528. <synopsis><tag class="xmlpi">dbfo orientation="0"|"90"|"180"|"270"|"-90"|"-180"|"-270"</tag></synopsis>
  529. </refsynopsisdiv>
  530. <refparameter>
  531. <variablelist>
  532. <varlistentry><term>orientation="0"|"90"|"180"|"270"|"-90"|"-180"|"-270"</term>
  533. <listitem>
  534. <para>Specifies the number of degrees by which the cell or
  535. row is rotated</para>
  536. </listitem>
  537. </varlistentry>
  538. </variablelist>
  539. </refparameter>
  540. </doc:pi>
  541. <xsl:template name="pi.dbfo_orientation">
  542. <xsl:param name="node" select="."/>
  543. <xsl:call-template name="dbfo-attribute">
  544. <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/>
  545. <xsl:with-param name="attribute" select="'orientation'"/>
  546. </xsl:call-template>
  547. </xsl:template>
  548. <doc:pi name="dbfo_pgwide" xmlns="">
  549. <refpurpose>Specifies if an <tag>equation</tag> or <tag>example</tag> goes across full page width</refpurpose>
  550. <refdescription>
  551. <para>Use the <tag class="xmlpi">dbfo pgwide</tag> PI as a child of an
  552. <tag>equation</tag> or <tag>example</tag> to specify that the
  553. content should rendered across the full width of the page.</para>
  554. </refdescription>
  555. <refsynopsisdiv>
  556. <synopsis><tag class="xmlpi">dbfo pgwide="0"|"1"</tag></synopsis>
  557. </refsynopsisdiv>
  558. <refparameter>
  559. <variablelist>
  560. <varlistentry><term>pgwide="0"</term>
  561. <listitem>
  562. <para>If zero, the content is rendered across the current
  563. text flow</para>
  564. </listitem>
  565. </varlistentry>
  566. <varlistentry><term>pgwide="1"</term>
  567. <listitem>
  568. <para>If <code>1</code> (or any non-zero value), the
  569. content is rendered across the full width of the page</para>
  570. </listitem>
  571. </varlistentry>
  572. </variablelist>
  573. </refparameter>
  574. <refsee role="params">
  575. <para><parameter>pgwide.properties</parameter></para>
  576. </refsee>
  577. </doc:pi>
  578. <xsl:template name="pi.dbfo_pgwide">
  579. <xsl:param name="node" select="."/>
  580. <xsl:call-template name="dbfo-attribute">
  581. <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/>
  582. <xsl:with-param name="attribute" select="'pgwide'"/>
  583. </xsl:call-template>
  584. </xsl:template>
  585. <doc:pi name="dbfo_rotated-width" xmlns="">
  586. <refpurpose>Specifies the width for a table <tag>entry</tag> or
  587. <tag>row</tag></refpurpose>
  588. <refdescription>
  589. <para>Use the <tag class="xmlpi">dbfo rotated-width</tag> PI as a child of an
  590. <tag>entry</tag> or <tag>row</tag> instance to specify the
  591. width of that the <tag>entry</tag> or <tag>row</tag>; or
  592. use it higher up in table to cause the width to be inherited
  593. recursively down.</para>
  594. </refdescription>
  595. <refsynopsisdiv>
  596. <synopsis><tag class="xmlpi">dbfo rotated-width="<replaceable>width</replaceable>"</tag></synopsis>
  597. </refsynopsisdiv>
  598. <refparameter>
  599. <variablelist>
  600. <varlistentry><term>rotated-width="<replaceable>width</replaceable>"</term>
  601. <listitem>
  602. <para>Specifies the width of a row or cell (including units)</para>
  603. </listitem>
  604. </varlistentry>
  605. </variablelist>
  606. </refparameter>
  607. </doc:pi>
  608. <xsl:template name="pi.dbfo_rotated-width">
  609. <xsl:param name="node" select="."/>
  610. <xsl:call-template name="dbfo-attribute">
  611. <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/>
  612. <xsl:with-param name="attribute" select="'rotated-width'"/>
  613. </xsl:call-template>
  614. </xsl:template>
  615. <doc:pi name="dbfo_sidebar-width" xmlns="">
  616. <refpurpose>Specifies the width of a sidebar</refpurpose>
  617. <refdescription>
  618. <para>Use the <tag class="xmlpi">dbfo sidebar-width</tag> PI as a child of a
  619. <tag>sidebar</tag> to specify the width of the sidebar.</para>
  620. </refdescription>
  621. <refsynopsisdiv>
  622. <synopsis><tag class="xmlpi">dbfo sidebar-width="<replaceable>width</replaceable>"</tag></synopsis>
  623. </refsynopsisdiv>
  624. <refparameter>
  625. <variablelist>
  626. <varlistentry><term>sidebar-width="<replaceable>width</replaceable>"</term>
  627. <listitem>
  628. <para>Specifies the <tag>sidebar</tag> width (including units)</para>
  629. </listitem>
  630. </varlistentry>
  631. </variablelist>
  632. </refparameter>
  633. <refsee role="params">
  634. <para><parameter>sidebar.float.type parameter</parameter>,
  635. <parameter>sidebar.float.width parameter</parameter>,
  636. <parameter>sidebar.properties attribute-set</parameter>,
  637. <parameter>sidebar.title.properties</parameter>
  638. </para>
  639. </refsee>
  640. <refsee role="tcg">
  641. <para><link xlink:href="SideFloats.html#SidebarFloats" >A sidebar as
  642. side float</link></para>
  643. </refsee>
  644. </doc:pi>
  645. <xsl:template name="pi.dbfo_sidebar-width">
  646. <xsl:param name="node" select="."/>
  647. <xsl:call-template name="dbfo-attribute">
  648. <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/>
  649. <xsl:with-param name="attribute" select="'sidebar-width'"/>
  650. </xsl:call-template>
  651. </xsl:template>
  652. <doc:pi name="dbfo_start" xmlns="">
  653. <refpurpose>(obsolete) Sets the starting number on an ordered list</refpurpose>
  654. <refdescription>
  655. <para><emphasis>This PI is obsolete</emphasis>. The intent of
  656. it was to provide a means for setting a specific starting
  657. number for an ordered list. Instead of this PI, set a value
  658. for the <literal>override</literal> attribute on the first
  659. <tag>listitem</tag> in the list; that will have the same
  660. effect as what this PI was intended for.</para>
  661. </refdescription>
  662. <refsynopsisdiv>
  663. <synopsis><tag class="xmlpi">dbfo start="<replaceable>character</replaceable>"</tag></synopsis>
  664. </refsynopsisdiv>
  665. <refparameter>
  666. <variablelist>
  667. <varlistentry><term>start="<replaceable>character</replaceable>"</term>
  668. <listitem>
  669. <para>Specifies the character to use as the starting
  670. number; use 0-9, a-z, A-Z, or lowercase or uppercase
  671. Roman numerals</para>
  672. </listitem>
  673. </varlistentry>
  674. </variablelist>
  675. </refparameter>
  676. <refsee role="tcg">
  677. <para><link role="tcg"
  678. xlink:href="Orderedlists.html#ListStartNum"
  679. >List starting number</link></para>
  680. </refsee>
  681. </doc:pi>
  682. <xsl:template name="pi.dbfo_start">
  683. <xsl:param name="node" select="."/>
  684. <xsl:call-template name="pi-attribute">
  685. <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/>
  686. <xsl:with-param name="attribute" select="'start'"/>
  687. </xsl:call-template>
  688. </xsl:template>
  689. <doc:pi name="dbfo_table-width" xmlns="">
  690. <refpurpose>Specifies the width for a table or for revhistory
  691. output</refpurpose>
  692. <refdescription>
  693. <para>Use the <tag class="xmlpi">dbfo table-width</tag> PI as a child or
  694. sibling of a <tag>table</tag>, or as a child of an
  695. <tag>informaltable</tag>, <tag>entrybl</tag>, or
  696. <tag>revhistory</tag> instance (which is rendered as a table
  697. in output) to specify the width of the table in output.</para>
  698. </refdescription>
  699. <refsynopsisdiv>
  700. <synopsis><tag class="xmlpi">dbfo table-width="<replaceable>width</replaceable>"</tag></synopsis>
  701. </refsynopsisdiv>
  702. <refparameter>
  703. <variablelist>
  704. <varlistentry><term>table-width="<replaceable>width</replaceable>"</term>
  705. <listitem>
  706. <para>Specifies the table width (including units or as a percentage)</para>
  707. </listitem>
  708. </varlistentry>
  709. </variablelist>
  710. </refparameter>
  711. <refsee role="tcg">
  712. <para><link role="tcg"
  713. xlink:href="Tables.html#TableWidth"
  714. >Table width</link></para>
  715. </refsee>
  716. </doc:pi>
  717. <xsl:template name="pi.dbfo_table-width">
  718. <xsl:param name="node" select="."/>
  719. <xsl:call-template name="dbfo-attribute">
  720. <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/>
  721. <xsl:with-param name="attribute" select="'table-width'"/>
  722. </xsl:call-template>
  723. </xsl:template>
  724. <doc:pi name="dbfo_term-width" xmlns="">
  725. <refpurpose>Specifies the term width for a variablelist</refpurpose>
  726. <refdescription>
  727. <para>Use the <tag class="xmlpi">dbfo term-width</tag> PI as a child of a
  728. <tag>variablelist</tag> to specify the width for
  729. <tag>term</tag> output.</para>
  730. </refdescription>
  731. <refsynopsisdiv>
  732. <synopsis><tag class="xmlpi">dbfo term-width="<replaceable>width</replaceable>"</tag></synopsis>
  733. </refsynopsisdiv>
  734. <refparameter>
  735. <variablelist>
  736. <varlistentry><term>term-width="<replaceable>width</replaceable>"</term>
  737. <listitem>
  738. <para>Specifies the term width (including units)</para>
  739. </listitem>
  740. </varlistentry>
  741. </variablelist>
  742. </refparameter>
  743. <refsee role="tcg">
  744. <para><link role="tcg"
  745. xlink:href="Variablelists.html#ListIndents"
  746. >Variable list formatting in print</link></para>
  747. </refsee>
  748. </doc:pi>
  749. <xsl:template name="pi.dbfo_term-width">
  750. <xsl:param name="node" select="."/>
  751. <xsl:call-template name="dbfo-attribute">
  752. <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/>
  753. <xsl:with-param name="attribute" select="'term-width'"/>
  754. </xsl:call-template>
  755. </xsl:template>
  756. <doc:pi name="dbfo_toc" xmlns="">
  757. <refpurpose>Specifies whether a TOC should be generated for a qandaset</refpurpose>
  758. <refdescription>
  759. <para>Use the <tag class="xmlpi">dbfo toc</tag> PI as a child of a
  760. <tag>qandaset</tag> to specify whether a table of contents
  761. (TOC) is generated for the <tag>qandaset</tag>.</para>
  762. </refdescription>
  763. <refsynopsisdiv>
  764. <synopsis><tag class="xmlpi">dbfo toc="0"|"1"</tag></synopsis>
  765. </refsynopsisdiv>
  766. <refparameter>
  767. <variablelist>
  768. <varlistentry><term>toc="0"</term>
  769. <listitem>
  770. <para>If zero, no TOC is generated</para>
  771. </listitem>
  772. </varlistentry>
  773. <varlistentry><term>toc="1"</term>
  774. <listitem>
  775. <para>If <code>1</code> (or any non-zero value),
  776. a TOC is generated</para>
  777. </listitem>
  778. </varlistentry>
  779. </variablelist>
  780. </refparameter>
  781. <refsee role="tcg">
  782. <para><link role="tcg"
  783. xlink:href="QandAtoc.html"
  784. >Q and A list of questions</link>,
  785. <link role="tcg"
  786. xlink:href="QandAformat.html"
  787. >Q and A formatting</link></para>
  788. </refsee>
  789. </doc:pi>
  790. <xsl:template name="pi.dbfo_toc">
  791. <xsl:param name="node" select="."/>
  792. <xsl:call-template name="dbfo-attribute">
  793. <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/>
  794. <xsl:with-param name="attribute" select="'toc'"/>
  795. </xsl:call-template>
  796. </xsl:template>
  797. <doc:pi name="dbfo-need" xmlns="">
  798. <refpurpose>Specify a need for space (a kind of soft page break)</refpurpose>
  799. <refdescription>
  800. <para>A “need” is a request for space on a page. If the
  801. requested space is not available, the page breaks and the
  802. content that follows the need request appears on the next
  803. page. If the requested space is available, then no page break
  804. is inserted.</para>
  805. </refdescription>
  806. <refsynopsisdiv>
  807. <synopsis><tag class="xmlpi">dbfo-need height="<replaceable>n</replaceable>" [space-before="<replaceable>n</replaceable>"]</tag></synopsis>
  808. </refsynopsisdiv>
  809. <refparameter>
  810. <variablelist>
  811. <varlistentry><term>height="<replaceable>n</replaceable>"</term>
  812. <listitem>
  813. <para>The amount of height needed (including units)</para>
  814. </listitem>
  815. </varlistentry>
  816. <varlistentry><term>space-before="<replaceable>n</replaceable>"</term>
  817. <listitem>
  818. <para>The amount of extra vertical space to add (including units)</para>
  819. </listitem>
  820. </varlistentry>
  821. </variablelist>
  822. </refparameter>
  823. <refsee role="tcg">
  824. <para><link role="tcg"
  825. xlink:href="PageBreaking.html#SoftPageBreaks"
  826. >Soft page breaks</link></para>
  827. </refsee>
  828. </doc:pi>
  829. <xsl:template name="pi.dbfo-need">
  830. <xsl:variable name="pi-height">
  831. <xsl:call-template name="dbfo-attribute">
  832. <xsl:with-param name="pis" select="."/>
  833. <xsl:with-param name="attribute" select="'height'"/>
  834. </xsl:call-template>
  835. </xsl:variable>
  836. <xsl:variable name="height">
  837. <xsl:choose>
  838. <xsl:when test="$pi-height != ''">
  839. <xsl:value-of select="$pi-height"/>
  840. </xsl:when>
  841. <xsl:otherwise>0pt</xsl:otherwise>
  842. </xsl:choose>
  843. </xsl:variable>
  844. <xsl:variable name="pi-before">
  845. <xsl:call-template name="dbfo-attribute">
  846. <xsl:with-param name="pis" select="."/>
  847. <xsl:with-param name="attribute" select="'space-before'"/>
  848. </xsl:call-template>
  849. </xsl:variable>
  850. <xsl:variable name="spacer">
  851. <fo:block-container width="100%" height="{$height}">
  852. <fo:block><fo:leader leader-length="0pt"/></fo:block>
  853. </fo:block-container>
  854. </xsl:variable>
  855. <xsl:choose>
  856. <xsl:when test="$fop.extensions != 0">
  857. <!-- Doesn't work in fop -->
  858. </xsl:when>
  859. <xsl:when test="$pi-before != '' and
  860. not(following-sibling::listitem) and
  861. not(following-sibling::step)">
  862. <fo:block space-after="0pt" space-before="{$pi-before}">
  863. <xsl:copy-of select="$spacer"/>
  864. </fo:block>
  865. </xsl:when>
  866. <xsl:when test="following-sibling::para">
  867. <fo:block space-after="0pt"
  868. xsl:use-attribute-sets="normal.para.spacing">
  869. <xsl:copy-of select="$spacer"/>
  870. </fo:block>
  871. </xsl:when>
  872. <xsl:when test="following-sibling::table or
  873. following-sibling::figure or
  874. following-sibling::example or
  875. following-sibling::equation">
  876. <fo:block space-after="0pt"
  877. xsl:use-attribute-sets="formal.object.properties">
  878. <xsl:copy-of select="$spacer"/>
  879. </fo:block>
  880. </xsl:when>
  881. <xsl:when test="following-sibling::informaltable or
  882. following-sibling::informalfigure or
  883. following-sibling::informalexample or
  884. following-sibling::informalequation">
  885. <fo:block space-after="0pt"
  886. xsl:use-attribute-sets="informal.object.properties">
  887. <xsl:copy-of select="$spacer"/>
  888. </fo:block>
  889. </xsl:when>
  890. <xsl:when test="following-sibling::itemizedlist or
  891. following-sibling::orderedlist or
  892. following-sibling::variablelist or
  893. following-sibling::simplelist">
  894. <fo:block space-after="0pt"
  895. xsl:use-attribute-sets="informal.object.properties">
  896. <xsl:copy-of select="$spacer"/>
  897. </fo:block>
  898. </xsl:when>
  899. <xsl:when test="following-sibling::listitem or
  900. following-sibling::step">
  901. <fo:list-item space-after="0pt"
  902. xsl:use-attribute-sets="informal.object.properties">
  903. <fo:list-item-label/>
  904. <fo:list-item-body start-indent="0pt" end-indent="0pt">
  905. <xsl:copy-of select="$spacer"/>
  906. </fo:list-item-body>
  907. </fo:list-item>
  908. </xsl:when>
  909. <xsl:when test="following-sibling::sect1 or
  910. following-sibling::sect2 or
  911. following-sibling::sect3 or
  912. following-sibling::sect4 or
  913. following-sibling::sect5 or
  914. following-sibling::section">
  915. <fo:block space-after="0pt"
  916. xsl:use-attribute-sets="section.title.properties">
  917. <xsl:copy-of select="$spacer"/>
  918. </fo:block>
  919. </xsl:when>
  920. <xsl:otherwise>
  921. <fo:block space-after="0pt" space-before="0em">
  922. <xsl:copy-of select="$spacer"/>
  923. </fo:block>
  924. </xsl:otherwise>
  925. </xsl:choose>
  926. <xsl:choose>
  927. <xsl:when test="$fop.extensions != 0">
  928. <!-- Doesn't work in fop -->
  929. </xsl:when>
  930. <xsl:when test="following-sibling::listitem or
  931. following-sibling::step">
  932. <fo:list-item space-before.precedence="force"
  933. space-before="-{$height}"
  934. space-after="0pt"
  935. space-after.precedence="force">
  936. <fo:list-item-label/>
  937. <fo:list-item-body start-indent="0pt" end-indent="0pt"/>
  938. </fo:list-item>
  939. </xsl:when>
  940. <xsl:otherwise>
  941. <fo:block space-before.precedence="force"
  942. space-before="-{$height}"
  943. space-after="0pt"
  944. space-after.precedence="force">
  945. </fo:block>
  946. </xsl:otherwise>
  947. </xsl:choose>
  948. </xsl:template>
  949. <!-- ==================================================================== -->
  950. <xsl:template name="dbfo-attribute">
  951. <!-- * dbfo-attribute is an interal utility template for retrieving -->
  952. <!-- * pseudo-attributes/parameters from PIs -->
  953. <xsl:param name="pis" select="processing-instruction('dbfo')"/>
  954. <xsl:param name="attribute">filename</xsl:param>
  955. <xsl:call-template name="pi-attribute">
  956. <xsl:with-param name="pis" select="$pis"/>
  957. <xsl:with-param name="attribute" select="$attribute"/>
  958. </xsl:call-template>
  959. </xsl:template>
  960. <!-- ==================================================================== -->
  961. <xsl:template match="processing-instruction()">
  962. </xsl:template>
  963. <!-- ==================================================================== -->
  964. <xsl:template match="processing-instruction('dbfo-need')">
  965. <xsl:call-template name="pi.dbfo-need"/>
  966. </xsl:template>
  967. </xsl:stylesheet>