1<!--
2
3  $Id: docbook-html.ts,v 1.1.2.2 1997/02/07 02:29:33 jfieber Exp $
4
5  Copyright (C) 1997
6       John R. Fieber.  All rights reserved.
7
8  Redistribution and use in source and binary forms, with or without
9  modification, are permitted provided that the following conditions
10  are met:
11  1. Redistributions of source code must retain the above copyright
12     notice, this list of conditions and the following disclaimer.
13  2. Redistributions in binary form must reproduce the above copyright
14     notice, this list of conditions and the following disclaimer in the
15     documentation and/or other materials provided with the distribution.
16
17  THIS SOFTWARE IS PROVIDED BY JOHN R. FIEBER AND CONTRIBUTORS ``AS IS'' AND
18  ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
19  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
20  ARE DISCLAIMED.  IN NO EVENT SHALL JOHN R. FIEBER OR CONTRIBUTORS BE LIABLE
21  FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
22  DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
23  OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
24  HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
25  LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
26  OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
27  SUCH DAMAGE.
28
29-->
30
31<!--
32
33  This is an instant(1) translation specification to turn an
34  SGML document marked up according to the Docbook DTD into
35  HTML.
36
37  The rules in this file are in alphabetical order according
38  to the name of the element to which they apply.  Rules
39  intended to be invoked from other rules are at the end of
40  the file.  The order of the rules affects how they are processed
41  and an alphabetical order helps prevent unpleasnt surprises.
42
43-->
44
45<!DOCTYPE transpec PUBLIC "-//FreeBSD//DTD transpec//EN" [
46
47<!ENTITY lt CDATA "<">
48<!ENTITY gt CDATA ">">
49<!ENTITY amp CDATA "&">
50
51<!-- Entities for frequently used constructs. -->
52
53<!ENTITY wspace CDATA "&nbsp;&nbsp;">
54
55<!ENTITY hlofont CDATA '<FONT COLOR="#660000">'>
56<!ENTITY hlofont CDATA '<FONT FACE="Helvetica">'>
57<!ENTITY hlcfont CDATA '</FONT>'>
58
59<!ENTITY c.admon CDATA ''>
60<!ENTITY c.admon CDATA ' BGCOLOR="FFFFEE"'>
61
62<!ENTITY m.preblk '<start>${_action &r.blkps;t}
63&lt;BLOCKQUOTE>&lt;PRE></start>
64<end>&lt;/PRE>&lt;/BLOCKQUOTE>
65${_action &r.blkpe;t}</end>'>
66
67<!ENTITY m.blk '<start>${_action &r.blkps;t}
68&lt;BLOCKQUOTE></start>
69<end>&lt;/BLOCKQUOTE>
70${_action &r.blkpe;t}</end>'>
71
72<!ENTITY m.tt '<start>&lt;TT></start>
73<end>&lt;/TT></end>'>
74
75<!ENTITY m.i '<start>&lt;I></start>
76<end>&lt;/I></end>'>
77
78<!ENTITY m.b '<start>&lt;B></start>
79<end>&lt;/B></end>'>
80
81<!ENTITY m.u '<start>&lt;U></start>
82<end>&lt;/U></end>'>
83
84<!-- Rule names (instant(1) only allows cryptic numbers). -->
85
86<!ENTITY r.pass "1">
87<!ENTITY r.ignore "6">
88<!ENTITY r.admon "7">
89<!ENTITY r.prgi "9">
90<!ENTITY r.anchor "10">
91
92<!ENTITY r.pttoc "16">
93<!ENTITY r.pttoci "17">
94<!ENTITY r.pftoci "18">
95<!ENTITY r.chtoc "19">
96<!ENTITY r.chtoci "20">
97<!ENTITY r.s1toc "21">
98<!ENTITY r.s1toci "22">
99<!ENTITY r.s2toc "23">
100<!ENTITY r.s2toci "24">
101<!ENTITY r.s3toc "25">
102<!ENTITY r.s3toci "26">
103<!ENTITY r.aptoci "27">
104
105<!ENTITY r.fnote "40">
106<!ENTITY r.fnotei "41">
107
108<!ENTITY r.blkps "50">
109<!ENTITY r.blkpe "51">
110
111<!ENTITY r.hyphen "60">
112<!ENTITY r.nl "61">
113
114<!ENTITY r.inchdr "70">
115<!ENTITY r.incftr "71">
116
117<!ENTITY cmap SYSTEM "html.cmap">
118<!ENTITY sdata SYSTEM "html.sdata">
119
120]>
121
122<transpec>
123
124<!-- Character and SDATA entity mapping -->
125
126<cmap>&cmap;</cmap>
127<smap>&sdata;</smap>
128
129<!-- Numerous counters -->
130
131<var>partnum	1
132<var>pfnum  	1
133<var>chapnum	1
134<var>sect1num	1
135<var>sect2num	1
136<var>sect3num	1
137<var>sect4num	1
138<var>sect5num	1
139<var>subsect	1
140<var>appnum	A
141<var>exnum	1
142<var>fignum	1
143<var>tabnum	1
144<var>eqnum	1
145<var>fnotenum	1
146<var>tmpchapnum 1
147
148<!-- This is a bit of a hack.  The rule for ANCHOR looks at this
149     and does nothing if it is set.  Rules that go collecting
150     data from other parts of the document should set this to 1
151     to prevent a given anchor from appearing more than once.
152     Generally, dealing with IDs needs to be completely reworked. -->
153
154<var>anchorinhibit 0</var>
155
156<!-- Transform rules -->
157
158<rule> <!-- Abbreviation, especially one followed by a period -->
159<match>
160<gi>ABBREV
161</rule>
162
163<rule> <!-- Document summary -->
164<match>
165<gi>ABSTRACT
166<action>
167<start>${_action &r.anchor;t}</start>
168</rule>
169
170<rule> <!-- Keycap used with a meta key to activate a graphical user interface -->
171<match>
172<gi>ACCEL
173<action>
174&m.u;
175</rule>
176
177<rule> <!-- Acknowledgements in an Article -->
178<match>
179<gi>ACKNO
180<action>
181<start>^&lt;P></start>
182<end>&lt;/P>^</end>
183</rule>
184
185<rule> <!-- Pronounceable contraction of initials -->
186<match>
187<gi>ACRONYM
188<content>^[^a-z]*$</content>
189<action>
190<replace>&lt;SMALL>${_! echo -n "${+content}" | tr "[:lower:]" "[:upper:]"}&lt;/SMALL></replace>
191</rule>
192
193<rule> <!-- Pronounceable contraction of initials -->
194<match>
195<gi>ACRONYM
196</rule>
197
198<rule> <!-- Function invoked in response to a user event -->
199<match>
200<gi>ACTION
201</rule>
202
203<rule> <!-- Real-world address -->
204<match>
205<gi>ADDRESS
206<action>
207<start>${_action &r.blkps;t}
208&lt;P></start>
209<end>&lt;/P>
210${_action &r.blkpe;t}</end>
211</rule>
212
213<rule> <!-- Author's institutional affiliation -->
214<match>
215<gi>AFFILIATION
216<action>
217<start>&lt;BR></start>
218</rule>
219
220<rule> <!-- Prose explanation of a nonprose element -->
221<match>
222<gi>ALT
223<action>
224&m.i;
225</rule>
226
227<rule> <!-- Spot in text -->
228<match>
229<gi>ANCHOR
230<action>
231<start>${_isset anchorinhibit 0 &r.anchor;t}</start>
232</rule>
233
234<rule> <!-- Appendix for a Book -->
235<match>
236<gi>APPENDIX
237<action>
238<start>^${_set chapnum ${appnum}}&lt;!-- Start APPENDIX ${appnum} (${ID}):
239${_followrel child TITLE &r.pass;} -->^</start>
240<end>^&lt;!-- End APPENDIX -->^</end>
241<incr>appnum
242<set>sect1num	1
243</rule>
244
245<rule> <!-- Name of a software program -->
246<match>
247<gi>APPLICATION
248<action>
249&m.b;
250</rule>
251
252<rule> <!-- Region defined in a graphic or code example -->
253<match>
254<gi>AREA
255</rule>
256
257<rule> <!-- Set of related areas in a graphic or code example -->
258<match>
259<gi>AREASET
260</rule>
261
262<rule> <!-- Collection of regions in a graphic or code example -->
263<match>
264<gi>AREASPEC
265</rule>
266
267<rule> <!-- Argument in a CmdSynopsis -->
268<match>
269<gi>ARG
270<attval>CHOICE OPT
271<attval>REP NOREPEAT
272<action>
273<start>^[</start>
274<end>]^</end>
275</rule>
276
277<rule> <!-- Argument in a CmdSynopsis -->
278<match>
279<gi>ARG
280<attval>CHOICE OPT
281<action>
282<start>^[</start>
283<end>&amp;nbsp;...&amp;nbsp;]^</end>
284</rule>
285
286<rule> <!-- Argument in a CmdSynopsis -->
287<match>
288<gi>ARG
289<attval>CHOICE REQ
290<attval>REP NOREPEAT
291<action>
292<start>^{</start>
293<end>}^</end>
294</rule>
295
296<rule> <!-- Argument in a CmdSynopsis -->
297<match>
298<gi>ARG
299<attval>CHOICE REQ
300<action>
301<start>^{</start>
302<end>&amp;nbsp;...&amp;nbsp;}^</end>
303</rule>
304
305<rule> <!-- Argument in a CmdSynopsis -->
306<match>
307<gi>ARG
308<attval>REP REPEAT
309<action>
310<start>^</start>
311<end>&amp;nbsp;...^</end>
312</rule>
313
314<rule> <!-- Argument in a CmdSynopsis -->
315<match>
316<gi>ARG
317<action>
318<start>^</start>
319<end>^</end>
320</rule>
321
322<rule> <!-- Metainformation for an Article -->
323<match>
324<gi>ARTHEADER
325</rule>
326
327<rule> <!-- Article -->
328<match>
329<gi>ARTICLE
330</rule>
331
332<rule> <!-- Page numbers of an Article as published -->
333<match>
334<gi>ARTPAGENUMS
335</rule>
336
337<rule> <!-- Attribution of content for a BlockQuote or Epigraph -->
338<match>
339<gi>ATTRIBUTION
340<action>
341<ignore>all
342</rule>
343
344<rule> <!-- Author of a document -->
345<match>
346<gi>AUTHOR
347<action>
348<start>^&lt;P></start>
349<!-- <end>&lt;/P>^ -->
350</rule>
351
352<rule> <!-- Short description of author -->
353<match>
354<gi>AUTHORBLURB
355</rule>
356
357<rule> <!-- Wrapper for Author information -->
358<match>
359<gi>AUTHORGROUP
360</rule>
361
362<rule> <!-- Initials or other identifier for the author of a Revision or Comment -->
363<match>
364<gi>AUTHORINITIALS
365</rule>
366
367<rule> <!-- Page break in a print version of a work that may be displayed online -->
368<match>
369<gi>BEGINPAGE
370</rule>
371
372<rule> <!-- Section of a Bibliography -->
373<match>
374<gi>BIBLIODIV
375</rule>
376
377<rule> <!-- Entry in a Bibliography -->
378<match>
379<gi>BIBLIOENTRY
380</rule>
381
382<rule> <!-- Bibliography -->
383<match>
384<gi>BIBLIOGRAPHY
385</rule>
386
387<rule> <!-- Untyped information supplied in a BiblioEntry or BookInfo -->
388<match>
389<gi>BIBLIOMISC
390</rule>
391
392<rule> <!-- Entry in a Bibliography -->
393<match>
394<gi>BIBLIOMIXED
395</rule>
396
397<rule> <!-- Container for related bibliographic information -->
398<match>
399<gi>BIBLIOMSET
400</rule>
401
402<rule> <!-- Container for related bibliographic information -->
403<match>
404<gi>BIBLIOSET
405</rule>
406
407<rule> <!-- Quotation set off from the main text, rather than occurring in-line -->
408<match>
409<gi>BLOCKQUOTE
410<relation>child ATTRIBUTION
411<action>
412<start>${_action &r.blkps;t}
413${_action &r.anchor;t}&lt;BLOCKQUOTE></start>
414<end>&lt;P ALIGN=RIGHT>&lt;I>--
415${_followrel child ATTRIBUTION &r.pass;}&lt;/I>&lt;/P>
416&lt;/BLOCKQUOTE>
417${_action &r.blkpe;t}</end>
418</rule>
419
420<rule> <!-- Quotation set off from the main text, rather than occurring in-line -->
421<match>
422<gi>BLOCKQUOTE
423<action>
424<start>${_action &r.blkps;t}
425${_action &r.anchor;t}&lt;BLOCKQUOTE></start>
426<end>&lt;/BLOCKQUOTE>
427${_action &r.blkpe;t}</end>
428</rule>
429
430<rule> <!-- Book -->
431<match>
432<gi>BOOK
433<action>
434<start>^&lt;!-- Generated on ${date} using ${transpec} -->
435&lt;!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
436&lt;HTML>&lt;TITLE>${_followrel descendant TITLE &r.pass;}&lt;/TITLE>
437&lt;BODY BGCOLOR="#FFFFFF" TEXT="#000000">
438${_isset inchdr &r.inchdr;}^</start>
439<end>^${_set fnotenum 1}${_action &r.fnote;t}
440${_isset incftr &r.incftr;}
441&lt;/BODY>&lt;/HTML></end>
442</rule>
443
444<rule> <!-- Information about a book used in a bibliographical citation -->
445<match>
446<gi>BOOKBIBLIO
447<action>
448<start>^&lt;H1>&hlofont;${_followrel child TITLE &r.pass;}&hlcfont;&lt;/H1></start>
449</rule>
450
451<rule> <!-- Metainformation for a Book -->
452<match>
453<gi>BOOKINFO
454<relation>sibling PART
455<action>
456<end>^&lt;H1>&hlofont;Contents&hlcfont;&lt/H1>
457${_followrel parent BOOK &r.pttoc;t}^</end>
458</rule>
459
460<rule> <!-- Metainformation for a Book -->
461<match>
462<gi>BOOKINFO
463<action>
464<end>^&lt;H1>&hlofont;Contents&hlcfont;&lt/H1>
465${_followrel parent BOOK &r.chtoc;t}^</end>
466</rule>
467
468<rule> <!-- Free-floating heading not tied to the Sect hierarchy -->
469<match>
470<gi>BRIDGEHEAD
471<action>
472<start>^&lt;H4>&hlofont;&lt;EM></start>
473<end>&lt;/EM>&hlcfont;&lt;/H4>^</end>
474</rule>
475
476<rule> <!-- Description linked to Areas in a graphic or code example -->
477<match>
478<gi>CALLOUT
479<action>
480<start>^&lt;LI></start>
481<end>&lt;/LI>^</end>
482</rule>
483
484<rule> <!-- Collection of callout descriptions -->
485<match>
486<gi>CALLOUTLIST
487<action>
488<start>${_action &r.blkps;t}
489&lt;UL>^</start>
490<end>^&lt;/UL>
491${_action &r.blkpe;t}</end>
492</rule>
493
494<rule> <!-- Admonition set off from the text -->
495<match>
496<gi>CAUTION
497<action>
498<do>&r.admon;
499</rule>
500
501<rule> <!-- Chapter of a Book -->
502<match>
503<gi>CHAPTER
504<action>
505<start>^&lt;!-- Start CHAPTER ${chapnum} (${ID}): ${_followrel child TITLE &r.pass;} -->^</start>
506<end>^&lt;!-- End CHAPTER -->^</end>
507<incr>chapnum
508<set>sect1num	1
509</rule>
510
511<rule> <!-- In-line bibliographic reference to another published
512            work that uses a reference string, such as an abbreviation
513            in a Bibliography -->
514<match>
515<gi>CITATION
516<action>
517<start>&lt;CITE></start>
518<end>&lt;/CITE></end>
519</rule>
520
521<rule> <!-- Citation of a RefEntry -->
522<match>
523<gi>CITEREFENTRY
524<!-- a link to a man page cgi would be good here... -->
525</rule>
526
527<rule> <!-- Citation of some published work -->
528<match>
529<gi>CITETITLE
530<action>
531<start>&lt;CITE></start>
532<end>&lt;/CITE></end>
533</rule>
534
535<rule> <!-- Name of a city in an Address -->
536<match>
537<gi>CITY
538</rule>
539
540<rule> <!-- Name of the class to which a program component belongs -->
541<match>
542<gi>CLASSNAME
543</rule>
544
545<rule> <!-- Synopsis for a Command -->
546<match>
547<gi>CMDSYNOPSIS
548<action>
549&m.blk;
550</rule>
551
552<rule> <!-- Callout area specification embedded in a code example -->
553<match>
554<gi>CO
555</rule>
556
557<rule> <!-- A collaborative group of authors -->
558<match>
559<gi>COLLAB
560</rule>
561
562<rule> <!-- Name of a collaborative group of authors -->
563<match>
564<gi>COLLABNAME
565</rule>
566
567<rule> <!-- Formatting specification for a column in a Table -->
568<match>
569<gi>COLSPEC
570</rule>
571
572<rule> <!-- Executable program, or the entry a user makes to execute a command -->
573<match>
574<gi>COMMAND
575<action>
576&m.tt;
577</rule>
578
579<rule> <!-- Remark made within the document file that is intended for use
580            during interim stages of production -->
581<match>
582<gi>COMMENT
583<action>
584<ignore>all
585</rule>
586
587<rule> <!-- Data presented to the user by a computer -->
588<match>
589<gi>COMPUTEROUTPUT
590<action>
591&m.tt;
592</rule>
593
594<rule> <!-- Dates of a conference in connection with which a document was written -->
595<match>
596<gi>CONFDATES
597</rule>
598
599<rule> <!-- Wrapper for information about a conference -->
600<match>
601<gi>CONFGROUP
602</rule>
603
604<rule> <!-- Formal number of a conference in connection with which a document was written -->
605<match>
606<gi>CONFNUM
607</rule>
608
609<rule> <!-- Sponsor of a conference in connection with which a document was written -->
610<match>
611<gi>CONFSPONSOR
612</rule>
613
614<rule> <!-- Title of a conference in connection with which a document was written -->
615<match>
616<gi>CONFTITLE
617</rule>
618
619<rule> <!-- Number of a contract under which a document was written -->
620<match>
621<gi>CONTRACTNUM
622</rule>
623
624<rule> <!-- Sponsor of a contract under which a document was written -->
625<match>
626<gi>CONTRACTSPONSOR
627</rule>
628
629<rule> <!-- Information about the contributions of an Author,
630            Editor, or OtherCredit to the work in question -->
631<match>
632<gi>CONTRIB
633</rule>
634
635<rule> <!-- Copyright information about a documen -->
636<match>
637<gi>COPYRIGHT
638<action>
639<start>^&lt;P>Copyright &amp;copy; </start>
640<!-- <end>&lt;/P>^ -->
641</rule>
642
643<rule> <!-- Corporate author of a Book -->
644<match>
645<gi>CORPAUTHOR
646</rule>
647
648<rule> <!-- Name of a corporation -->
649<match>
650<gi>CORPNAME
651</rule>
652
653<rule> <!-- Name of a country in an Address -->
654<match>
655<gi>COUNTRY
656</rule>
657
658<rule> <!-- Name of an organized set of data -->
659<match>
660<gi>DATABASE
661</rule>
662
663<rule> <!-- Date of publication or revision of a document -->
664<match>
665<gi>DATE
666</rule>
667
668<rule> <!-- Metainformation for a book component -->
669<match>
670<gi>DOCINFO
671</rule>
672
673<rule> <!-- Name or number of an edition of a document -->
674<match>
675<gi>EDITION
676</rule>
677
678<rule> <!-- Editor of a document -->
679<match>
680<gi>EDITOR
681</rule>
682
683<rule> <!-- Email address in an Address -->
684<match>
685<gi>EMAIL
686<action>
687<start>&lt;A HREF="mailto:${_action &r.pass;}"></start>
688<end>&lt;/A></end>
689</rule>
690
691<!-- Emphasis: The remap attribute indicates the procedural markup tags
692     used in the linuxdoc DTD. -->
693
694<rule> <!-- Emphasized text: Bold -->
695<match>
696<gi>EMPHASIS
697<attval>REMAP bf
698<action>
699&m.b;
700</rule>
701
702<rule> <!-- Emphasized text: Italic -->
703<match>
704<gi>EMPHASIS
705<attval>REMAP it
706<action>
707&m.i;
708</rule>
709
710<rule> <!-- Emphasized text: Sans-Serif -->
711<match>
712<gi>EMPHASIS
713<attval>REMAP sf
714<action>
715<start>&hlofont;</start>
716<end>&hlcfont;</end>
717</rule>
718
719<rule> <!-- Emphasized text: Slanted -->
720<match>
721<gi>EMPHASIS
722<attval>REMAP sl
723<action>
724&m.i;
725</rule>
726
727<rule> <!-- Emphasized text: Typewriter -->
728<match>
729<gi>EMPHASIS
730<attval>REMAP tt
731<action>
732&m.tt;
733</rule>
734
735<rule> <!-- Emphasized text -->
736<match>
737<gi>EMPHASIS
738<action>
739<start>&lt;EM></start>
740<end>&lt;/EM></end>
741</rule>
742
743<rule> <!-- Cell in a table -->
744<match>
745<gi>ENTRY
746<context>ROW THEAD
747<action>
748<start>^&lt;TH></start>
749<end>&lt;/TH>^</end>
750</rule>
751
752<rule> <!-- Cell in a table -->
753<match>
754<gi>ENTRY
755<action>
756<start>^&lt;TD></start>
757<end>&lt;/TD>^</end>
758</rule>
759
760<rule> <!-- Subtable appearing as a table cell -->
761<match>
762<gi>ENTRYTBL
763</rule>
764
765<rule> <!-- Environmental variable -->
766<match>
767<gi>ENVVAR
768<action>
769&m.tt;
770</rule>
771
772<rule> <!-- Brief text set at the beginning of a document as relevant to its content -->
773<match>
774<gi>EPIGRAPH
775</rule>
776
777<rule> <!-- Formal mathematical equation displayed as a block rather than in-line -->
778<match>
779<gi>EQUATION
780<action>
781<start>${_action &r.blkps;t}
782{_action &r.anchor;t}&lt;HR NOSHADE>&lt;P>&lt;STRONG>${_gi M} ${eqnum}:&lt;/STRONG>
783${_followrel child TITLE &r.pass;}&lt;/P>^</start>
784<end>^&lt;HR NOSHADE>
785${_action &r.blkpe;t}</end>
786<incr>eqnum
787</rule>
788
789<rule> <!-- Error message reported by a computer -->
790<match>
791<gi>ERRORNAME
792<action>
793&m.tt;
794</rule>
795
796<rule> <!-- Classification of an error message reported by a computer -->
797<match>
798<gi>ERRORTYPE
799</rule>
800
801<rule> <!-- Example of a computer program or related information -->
802<match>
803<gi>EXAMPLE
804<action>
805<start>${_action &r.blkps;t}
806${_action &r.anchor;t}&lt;HR NOSHADE>&lt;P>&lt;STRONG>${_gi M} ${exnum}:&lt;/STRONG>
807${_followrel child TITLE &r.pass;}&lt;/P>^</start>
808<end>^&lt;HR NOSHADE>
809${_action &r.blkpe;t}</end>
810<incr>exnum
811</rule>
812
813<rule> <!-- Fax number in an Address -->
814<match>
815<gi>FAX
816</rule>
817
818<rule> <!-- Formal illustration -->
819<match>
820<gi>FIGURE
821<action>
822<start>${_action &r.blkps;t}
823${_action &r.anchor;t}&lt;HR NOSHADE>&lt;P>&lt;STRONG>${_gi M} ${fignum}:&lt;/STRONG>
824${_followrel child TITLE &r.pass;}&lt;/P>^</start>
825<end>^&lt;HR NOSHADE>
826${_action &r.blkpe;t}</end>
827<incr>fignum
828</rule>
829
830<rule> <!-- Name of a file, possibly including pathname -->
831<match>
832<gi>FILENAME
833<action>
834&m.tt;
835</rule>
836
837<rule> <!-- Given name -->
838<match>
839<gi>FIRSTNAME
840<action>
841<start>^</start>
842<end>^</end>
843</rule>
844
845<rule> <!-- First occurrence of a word in a given context -->
846<match>
847<gi>FIRSTTERM
848<action>
849&m.i;
850</rule>
851
852<rule> <!-- Footnotes: Put both a link and an anchor here
853            so that footnotes can be followed in both directions. -->
854<match>
855<gi>FOOTNOTE
856<action>
857<start>&lt;A NAME="rfn-${fnotenum}">&lt;/A>&lt;SUP>&lt;SMALL>&lt;A HREF="#fn-${fnotenum}">${fnotenum}&lt/A>&lt/SMALL>&lt;/SUP></start>
858<ignore>all
859<incr>fnotenum
860</rule>
861
862<rule> <!-- Location of a footnote mark -->
863<match>
864<gi>FOOTNOTEREF
865</rule>
866
867<rule> <!-- Word or words in a language other than that of the containing document -->
868<match>
869<gi>FOREIGNPHRASE
870<action>
871&m.i;
872</rule>
873
874<rule> <!-- Paragraph with a Title -->
875<match>
876<gi>FORMALPARA
877</rule>
878
879<rule> <!-- Function or routine name and its return type in a FuncSynopsis -->
880<match>
881<gi>FUNCDEF
882</rule>
883
884<rule> <!-- Parameter information for a function or routine that is
885            pointed to from within a FuncSynopsis -->
886<match>
887<gi>FUNCPARAMS
888</rule>
889
890<rule> <!-- Set of function or routine prototype information in a FuncSynopsis -->
891<match>
892<gi>FUNCPROTOTYPE
893</rule>
894
895<rule> <!-- Synopsis of a Function -->
896<match>
897<gi>FUNCSYNOPSIS
898<action>
899&m.blk;
900</rule>
901
902<rule> <!-- Information supplementing the FuncDefs of a FuncSynopsis -->
903<match>
904<gi>FUNCSYNOPSISINFO
905</rule>
906
907<rule> <!-- Subroutine in a program or external library -->
908<match>
909<gi>FUNCTION
910<action>
911&m.tt;
912</rule>
913
914<rule> <!-- Glossary of terms -->
915<match>
916<gi>GLOSSARY
917<action>
918<start>&lt;H1>&hlofont;${_find gi TITLE &r.pass;}&hlcfont;&lt;/H1>
919&lt;DL>^</start>
920<end>&lt;/DL></end>
921</rule>
922
923<rule> <!-- Definition attached to a GlossTerm in a GlossEntry -->
924<match>
925<gi>GLOSSDEF
926<action>
927<start>&lt;DD></start>
928<end>&lt;/DD>^</end>
929</rule>
930
931<rule> <!-- Division of a Glossary -->
932<match>
933<gi>GLOSSDIV
934</rule>
935
936<rule> <!-- Entry in a Glossary or GlossList -->
937<match>
938<gi>GLOSSENTRY
939</rule>
940
941<rule> <!-- Wrapper for a set of GlossEntries -->
942<match>
943<gi>GLOSSLIST
944<action>
945<start>${_action &r.blkps;t}
946&lt;DL></start>
947<end>&lt;/DL>
948${_action &r.blkps;t}</end>
949</rule>
950
951<rule> <!-- Cross-reference from one GlossEntry to another -->
952<match>
953<gi>GLOSSSEE
954</rule>
955
956<rule> <!-- Cross-reference from one GlossDef to another GlossEntry -->
957<match>
958<gi>GLOSSSEEALSO
959</rule>
960
961<rule> <!-- Term outside a Glossary that is defined in some GlossEntry;
962            term within a GlossEntry that is defined by that GlossEntry -->
963<match>
964<gi>GLOSSTERM
965<action>
966<start>^&lt;DT>&lt;STRONG></start>
967<end>&lt;/STRONG>&lt;/DT></end>
968</rule>
969
970<rule> <!-- Graphical data, or a pointer to an external entity containing
971            such data, to be rendered as an object, not in-line -->
972<match>
973<gi>GRAPHIC
974<action>
975<replace>${_action &r.blkps;t}
976&lt;P>&lt;A HREF="${_filename}">[image]&lt;/A>&lt;/P>
977${_action &r.blkpe;t}</replace>
978</rule>
979
980<rule> <!-- Graphic that contains a specification of areas within it that
981            have associated callouts -->
982<match>
983<gi>GRAPHICCO
984</rule>
985
986<rule> <!-- Group of constituent parts of a CmdSynopsis -->
987<match>
988<gi>GROUP
989</rule>
990
991<rule> <!-- Text on a button in a graphical user interface -->
992<match>
993<gi>GUIBUTTON
994</rule>
995
996<rule> <!-- Graphic and, or, text appearing as a icon in a graphical user interface -->
997<match>
998<gi>GUIICON
999</rule>
1000
1001<rule> <!-- Text in a graphical user interface -->
1002<match>
1003<gi>GUILABEL
1004</rule>
1005
1006<rule> <!-- Name of a menu in a graphical user interface -->
1007<match>
1008<gi>GUIMENU
1009</rule>
1010
1011<rule> <!-- Name of a terminal menu item in a graphical user interface -->
1012<match>
1013<gi>GUIMENUITEM
1014</rule>
1015
1016<rule> <!-- Name of a submenu in a graphical user interface -->
1017<match>
1018<gi>GUISUBMENU
1019</rule>
1020
1021<rule> <!-- Physical part of a computer system -->
1022<match>
1023<gi>HARDWARE
1024</rule>
1025
1026<rule> <!-- List of main points discussed in a book component such as a Chapter -->
1027<match>
1028<gi>HIGHLIGHTS
1029</rule>
1030
1031<rule> <!-- Holder of a copyright in the containing document -->
1032<match>
1033<gi>HOLDER
1034</rule>
1035
1036<rule> <!-- Title of a person -->
1037<match>
1038<gi>HONORIFIC
1039</rule>
1040
1041<rule> <!-- Admonition set off from the text -->
1042<match>
1043<gi>IMPORTANT
1044<action>
1045<do>&r.admon;
1046</rule>
1047
1048<rule> <!-- Index to content -->
1049<match>
1050<gi>INDEX
1051</rule>
1052
1053<rule> <!-- Division of an Index -->
1054<match>
1055<gi>INDEXDIV
1056</rule>
1057
1058<rule> <!-- Entry in an Index -->
1059<match>
1060<gi>INDEXENTRY
1061</rule>
1062
1063<rule> <!-- Character string to be indexed, occurring in the text flow but not in the text itself -->
1064<match>
1065<gi>INDEXTERM
1066<action>
1067<ignore>all
1068</rule>
1069
1070<rule> <!-- Informal mathematical equation displayed as a block, rather than in-line -->
1071<match>
1072<gi>INFORMALEQUATION
1073<action>
1074<start>${_action &r.blkps;t}</start>
1075<end>${_action &r.blkpe;t}</end>
1076</rule>
1077
1078<rule> <!-- Untitled Example -->
1079<match>
1080<gi>INFORMALEXAMPLE
1081<action>
1082<start>${_action &r.blkps;t}</start>
1083<end>${_action &r.blkpe;t}</end>
1084</rule>
1085
1086<rule> <!-- Untitled table -->
1087<match>
1088<gi>INFORMALTABLE
1089<action>
1090<start>${_action &r.blkps;t}</start>
1091<end>${_action &r.blkpe;t}</end>
1092</rule>
1093
1094<rule> <!-- Untitled mathematical equation occurring in-line or as the
1095            content of an Equation -->
1096<match>
1097<gi>INLINEEQUATION
1098</rule>
1099
1100<rule> <!-- Graphical data, or a pointer to an external entity containing
1101            such data, to be rendered in-line -->
1102<match>
1103<gi>INLINEGRAPHIC
1104</rule>
1105
1106<rule> <!-- Element of a graphical user interface -->
1107<match>
1108<gi>INTERFACE
1109</rule>
1110
1111<rule> <!-- Specification for a graphical user interface -->
1112<match>
1113<gi>INTERFACEDEFINITION
1114</rule>
1115
1116<rule> <!-- Inventory part number -->
1117<match>
1118<gi>INVPARTNUMBER
1119</rule>
1120
1121<rule> <!-- International Standard Book Number of a document -->
1122<match>
1123<gi>ISBN
1124</rule>
1125
1126<rule> <!-- International Standard Serial Number of a journal -->
1127<match>
1128<gi>ISSN
1129</rule>
1130
1131<rule> <!-- Number of an issue of a journal -->
1132<match>
1133<gi>ISSUENUM
1134</rule>
1135
1136<rule> <!-- List in which each entry is marked with a bullet, dash, or other
1137            dingbat -->
1138<match>
1139<gi>ITEMIZEDLIST
1140<action>
1141<start>${_action &r.blkps;t}
1142&lt;UL>^</start>
1143<end>^&lt;/UL>
1144${_action &r.blkpe;t}</end>
1145</rule>
1146
1147<rule> <!-- Title of a remunerated position in an Affiliation -->
1148<match>
1149<gi>JOBTITLE
1150</rule>
1151
1152<rule> <!-- Text printed on a physical key on a computer keyboard, not
1153            necessarily the same thing as a KeyCode -->
1154<match>
1155<gi>KEYCAP
1156<relation>parent KEYCOMBO
1157<action>
1158<end>${_relation sibling+1 KEYCAP &r.hyphen;}${_relation sibling+1 KEYSYM &r.hyphen;}${_relation sibling+1 MOUSEBUTTON &r.hyphen;}${_relation sibling+1 KEYCOMBO &r.nl;}</end>
1159</rule>
1160
1161<rule> <!-- Text printed on a physical key on a computer keyboard, not
1162            necessarily the same thing as a KeyCode -->
1163<match>
1164<gi>KEYCAP
1165<action>
1166&m.tt;
1167</rule>
1168
1169<rule> <!-- Computer's numeric designation of a key on a computer
1170            keyboard -->
1171<match>
1172<gi>KEYCODE
1173<action>
1174&m.tt;
1175</rule>
1176
1177<rule> <!-- Combination of input actions -->
1178<match>
1179<gi>KEYCOMBO
1180<relation>parent KEYCOMBO
1181<relation>sibling+1 KEYCOMBO
1182<action>
1183<end>^</end>
1184</rule>
1185
1186<rule> <!-- Combination of input actions -->
1187<match>
1188<gi>KEYCOMBO
1189<action>
1190&m.tt;
1191</rule>
1192
1193<rule> <!-- Key symbol name, which is not necessarily the same thing as a
1194            Keycap -->
1195<match>
1196<gi>KEYSYM
1197<relation>parent KEYCOMBO
1198<action>
1199<end>${_relation sibling+1 KEYCAP &r.hyphen;}${_relation sibling+1 KEYSYM &r.hyphen;}${_relation sibling+1 MOUSEBUTTON &r.hyphen;}${_relation sibling+1 KEYCOMBO &r.nl;}</end>
1200</rule>
1201
1202<rule> <!-- Key symbol name, which is not necessarily the same thing as a
1203            Keycap -->
1204<match>
1205<gi>KEYSYM
1206<action>
1207&m.tt;
1208</rule>
1209
1210<rule> <!-- Statement of legal obligations or requirements -->
1211<match>
1212<gi>LEGALNOTICE
1213</rule>
1214
1215<rule> <!-- Portion of a person's name indicating a relationship to ancestors -->
1216<match>
1217<gi>LINEAGE
1218</rule>
1219
1220<rule> <!-- Writer's or editor's comment on a line of program code
1221            within an Example, ProgramListing, or Screen -->
1222<match>
1223<gi>LINEANNOTATION
1224<action>
1225&m.i;
1226</rule>
1227
1228<rule> <!-- Hypertext link -->
1229<match>
1230<gi>LINK
1231</rule>
1232
1233<rule> <!-- Wrapper for the elements of items in an ItemizedList or
1234            OrderedList -->
1235<match>
1236<gi>LISTITEM
1237<context>VARLISTENTRY
1238<action>
1239<start>^&lt;DD></start>
1240<end>&lt;/DD>^</end>
1241</rule>
1242
1243<rule> <!-- Wrapper for the elements of items in an ItemizedList or
1244            OrderedList -->
1245<match>
1246<gi>LISTITEM
1247<action>
1248<start>^&lt;LI></start>
1249<end>&lt;/LI>^</end>
1250</rule>
1251
1252<rule> <!-- Literal string, used in-line, that is part of data in a computer -->
1253<match>
1254<gi>LITERAL
1255<context>LITERALLAYOUT
1256</rule>
1257
1258<rule> <!-- Literal string, used in-line, that is part of data in a computer -->
1259<match>
1260<gi>LITERAL
1261<action>
1262&m.tt;
1263</rule>
1264
1265<rule> <!-- Wrapper for lines set off from the main text that are not
1266            tagged as Screens, Examples, or ProgramListing, in which
1267            line breaks and leading white space are to be regarded as
1268            significant -->
1269<match>
1270<gi>LITERALLAYOUT
1271<action>
1272<start>${_action &r.blkps;t}
1273&lt;PRE>^</start>
1274<end>^&lt;/PRE>
1275${_action &r.blkpe;t}</end>
1276</rule>
1277
1278<rule> <!-- List of titles of objects within a document -->
1279<match>
1280<gi>LOT
1281</rule>
1282
1283<rule> <!-- Entry in a LoT -->
1284<match>
1285<gi>LOTENTRY
1286</rule>
1287
1288<rule> <!-- Section of a complete set of UNIX reference pages that a
1289            reference page belongs to -->
1290<match>
1291<gi>MANVOLNUM
1292<action>
1293<start>(</start>
1294<end>)</end>
1295</rule>
1296
1297<rule> <!-- String of formatting markup in text, which it is desired to represent
1298            literally -->
1299<match>
1300<gi>MARKUP
1301</rule>
1302
1303<rule> <!-- Name of the physical medium on or in which some information
1304            is contained -->
1305<match>
1306<gi>MEDIALABEL
1307</rule>
1308
1309<rule> <!-- Member of a SimpleList: first -->
1310<match>
1311<gi>MEMBER
1312<nthchild>1
1313</rule>
1314
1315<rule> <!-- Member of a SimpleList: middle -->
1316<match>
1317<gi>MEMBER
1318<relation>sibling+ MEMBER
1319<action>
1320<start>, </start>
1321</rule>
1322
1323<rule> <!-- Member of a SimpleList: last -->
1324<match>
1325<gi>MEMBER
1326<action>
1327<start>, and </start>
1328</rule>
1329
1330<rule> <!-- Menu selection or series of such selections -->
1331<match>
1332<gi>MENUCHOICE
1333</rule>
1334
1335<rule> <!-- Application-specific information necessary for the completion
1336            of an OLink -->
1337<match>
1338<gi>MODESPEC
1339</rule>
1340
1341<rule> <!-- Conventional name of a mouse button -->
1342<match>
1343<gi>MOUSEBUTTON
1344<relation>parent KEYCOMBO
1345<action>
1346<end>${_relation sibling+1 KEYCAP &r.hyphen;}${_relation sibling+1 KEYSYM &r.hyphen;}${_relation sibling+1 MOUSEBUTTON &r.hyphen;}${_relation sibling+1 KEYCOMBO &r.nl;}</end>
1347</rule>
1348
1349<rule> <!-- Conventional name of a mouse button -->
1350<match>
1351<gi>MOUSEBUTTON
1352<action>
1353&m.tt;
1354</rule>
1355
1356<rule> <!-- Error message and its subparts, along with explanatory text, in a
1357            MsgEntry -->
1358<match>
1359<gi>MSG
1360</rule>
1361
1362<rule> <!-- Audience to which a Msg is relevant -->
1363<match>
1364<gi>MSGAUD
1365</rule>
1366
1367<rule> <!-- Wrapper for an entry in a MsgSet -->
1368<match>
1369<gi>MSGENTRY
1370</rule>
1371
1372<rule> <!-- Explanatory material relating to a Msg -->
1373<match>
1374<gi>MSGEXPLAN
1375</rule>
1376
1377<rule> <!-- Information about the Msg that contains it -->
1378<match>
1379<gi>MSGINFO
1380</rule>
1381
1382<rule> <!-- Level of importance or severity of a Msg -->
1383<match>
1384<gi>MSGLEVEL
1385</rule>
1386
1387<rule> <!-- Main error message of a Msg -->
1388<match>
1389<gi>MSGMAIN
1390</rule>
1391
1392<rule> <!-- Origin of a Msg -->
1393<match>
1394<gi>MSGORIG
1395</rule>
1396
1397<rule> <!-- Subpart of a Msg containing a message that is related to the main
1398            message -->
1399<match>
1400<gi>MSGREL
1401</rule>
1402
1403<rule> <!-- List of error messages produced by a system, with various
1404            additional information -->
1405<match>
1406<gi>MSGSET
1407</rule>
1408
1409<rule> <!-- Optional subpart of a Msg, which might contain messages that
1410            appear in various contexts -->
1411<match>
1412<gi>MSGSUB
1413</rule>
1414
1415<rule> <!-- Contents of the parts of Msg -->
1416<match>
1417<gi>MSGTEXT
1418</rule>
1419
1420<rule> <!-- Message to the user, set off from the text -->
1421<match>
1422<gi>NOTE
1423<action>
1424<do>&r.admon;
1425</rule>
1426
1427<rule> <!-- Link that addresses its target by use of an entity -->
1428<match>
1429<gi>OLINK
1430</rule>
1431
1432<rule> <!-- Option for a computer program command -->
1433<match>
1434<gi>OPTION
1435<action>
1436&m.tt;
1437</rule>
1438
1439<rule> <!-- Optional information contained in a Synopsis -->
1440<match>
1441<gi>OPTIONAL
1442<action>
1443<start>[</start>
1444<end>]</end>
1445</rule>
1446
1447<rule> <!-- List in which each entry is marked with a sequentially
1448            incremented label -->
1449<match>
1450<gi>ORDEREDLIST
1451<action>
1452<start>${_action &r.blkps;t}
1453&lt;OL>^</start>
1454<end>^&lt;/OL>
1455${_action &r.blkpe;t}</end>
1456</rule>
1457
1458<rule> <!-- Division of an organization -->
1459<match>
1460<gi>ORGDIV
1461</rule>
1462
1463<rule> <!-- Name of an organization other than a corporation -->
1464<match>
1465<gi>ORGNAME
1466</rule>
1467
1468<rule> <!-- Uncategorized information in Address -->
1469<match>
1470<gi>OTHERADDR
1471</rule>
1472
1473<rule> <!-- Person or entity to be credited, other than an Author or Editor -->
1474<match>
1475<gi>OTHERCREDIT
1476</rule>
1477
1478<rule> <!-- Name component that is not a Firstname, Surname, or Lineage -->
1479<match>
1480<gi>OTHERNAME
1481</rule>
1482
1483<rule> <!-- Numbers of the pages contained in a Book, for use in its
1484            BookBiblio -->
1485<match>
1486<gi>PAGENUMS
1487</rule>
1488
1489<rule> <!-- Paragraph -->
1490<match>
1491<gi>PARA
1492<context>LISTITEM|VARLISTENTRY|STEP|GLOSSDEF
1493<action>
1494<start>^&lt;P></start>
1495<end>&lt;/P></end>
1496</rule>
1497
1498<rule> <!-- Paragraph -->
1499<match>
1500<gi>PARA
1501<action>
1502<start>^&lt;P></start>
1503<end>&lt;/P></end>
1504</rule>
1505
1506<rule> <!-- Data type information and the name of the Parameter this
1507            information applies to -->
1508<match>
1509<gi>PARAMDEF
1510</rule>
1511
1512<rule> <!-- Part of an instruction to a computer -->
1513<match>
1514<gi>PARAMETER
1515<action>
1516&m.tt;
1517</rule>
1518
1519<rule> <!-- Section of a Book containing book components -->
1520<match>
1521<gi>PART
1522<action>
1523<start>^&lt;!-- Start PART ${partnum} (${ID}):
1524${_followrel child TITLE &r.pass;} -->^</start>
1525<end>^&lt;!-- End PART -->^</end>
1526<incr>partnum
1527</rule>
1528
1529<rule> <!-- Introduction to the contents of a Part -->
1530<match>
1531<gi>PARTINTRO
1532</rule>
1533
1534<rule> <!-- Telephone number in an Address -->
1535<match>
1536<gi>PHONE
1537</rule>
1538
1539<rule> <!-- Post office box number in an Address -->
1540<match>
1541<gi>POB
1542</rule>
1543
1544<rule> <!-- Postal code in an Address -->
1545<match>
1546<gi>POSTCODE
1547</rule>
1548
1549<rule> <!-- Introductory textual matter in a Book -->
1550<match>
1551<gi>PREFACE
1552<action>
1553<start>^&lt;!-- Start PREFACE (${ID}): ${_followrel child TITLE &r.pass;} -->^</start>
1554<end>^&lt;!-- End PREFACE -->^</end>
1555<incr>pfnum
1556<set>sect1num 1
1557</rule>
1558
1559<rule> <!-- Word or phrase occurring in the text that is to appear in the index
1560            under as a primary entry -->
1561<match>
1562<gi>PRIMARY
1563</rule>
1564
1565<rule> <!-- Primary entry in an Index, not in the text -->
1566<match>
1567<gi>PRIMARYIE
1568</rule>
1569
1570<rule> <!-- Printing history of a Book -->
1571<match>
1572<gi>PRINTHISTORY
1573</rule>
1574
1575<rule> <!-- List of operations to be performed -->
1576<match>
1577<gi>PROCEDURE
1578<action>
1579<start>${_action &r.blkps;t}
1580&lt;OL>^</start>
1581<end>^&lt;/OL>
1582${_action &r.blkpe;t}</end>
1583</rule>
1584
1585<rule> <!-- Formal name for a product -->
1586<match>
1587<gi>PRODUCTNAME
1588</rule>
1589
1590<rule> <!-- Number assigned to a product -->
1591<match>
1592<gi>PRODUCTNUMBER
1593</rule>
1594
1595<rule> <!-- Listing of all or part of a program -->
1596<match>
1597<gi>PROGRAMLISTING
1598<relation>parent EXAMPLE
1599<action>
1600<start>^&lt;PRE></start>
1601<end>&lt;/PRE>^</end>
1602</rule>
1603
1604<rule> <!-- Listing of all or part of a program -->
1605<match>
1606<gi>PROGRAMLISTING
1607<action>
1608&m.preblk;
1609</rule>
1610
1611<rule> <!-- Listing of a program or related information containing
1612            areas with associated callouts -->
1613<match>
1614<gi>PROGRAMLISTINGCO
1615</rule>
1616
1617<rule> <!-- Character indicating the start of an input field in a
1618            computer display -->
1619<match>
1620<gi>PROMPT
1621<action>
1622&m.tt;
1623</rule>
1624
1625<rule> <!-- Defined set of data associated with a window -->
1626<match>
1627<gi>PROPERTY
1628</rule>
1629
1630<rule> <!-- Date of publication of a document -->
1631<match>
1632<gi>PUBDATE
1633<action>
1634<start>&lt;P></start>
1635<end>&lt;/P></end>
1636</rule>
1637
1638<rule> <!-- Publisher of a document -->
1639<match>
1640<gi>PUBLISHER
1641</rule>
1642
1643<rule> <!-- Name of a publisher of a document in Publisher -->
1644<match>
1645<gi>PUBLISHERNAME
1646</rule>
1647
1648<rule> <!-- Number assigned to a publication, other than an ISBN or
1649            ISSN or InvPartNumber -->
1650<match>
1651<gi>PUBSNUMBER
1652</rule>
1653
1654<rule> <!-- In-line quotation -->
1655<match>
1656<gi>QUOTE
1657<relation>parent QUOTE
1658<action>
1659<start>`</start>
1660<end>'</end>
1661</rule>
1662
1663<rule> <!-- In-line quotation -->
1664<match>
1665<gi>QUOTE
1666<action>
1667<start>``</start>
1668<end>''</end>
1669</rule>
1670
1671<rule> <!-- Applicability or scope of the topic of a RefEntry -->
1672<match>
1673<gi>REFCLASS
1674</rule>
1675
1676<rule> <!-- Substitute for RefName to be used when a RefEntry covers
1677            more than one topic and none of the topic names is to be
1678            used as the sort name -->
1679<match>
1680<gi>REFDESCRIPTOR
1681</rule>
1682
1683<rule> <!-- A reference page -->
1684<match>
1685<gi>REFENTRY
1686<action>
1687<start>^&lt;!-- Reference Entry --></start>
1688</rule>
1689
1690<rule> <!-- Primary name given to a reference page for sorting and
1691            indexing -->
1692<match>
1693<gi>REFENTRYTITLE
1694<context>CITEREFENTRY
1695<action>
1696&m.i;
1697</rule>
1698
1699<rule> <!-- Primary name given to a reference page for sorting and
1700            indexing -->
1701<match>
1702<gi>REFENTRYTITLE
1703<action>
1704<start>&lt;HR NOSHADE>&lt;H2>${_followrel ancestor REFENTRY &r.anchor;}</start>
1705<end>&lt;/H2></end>
1706</rule>
1707
1708<rule> <!-- Collection of RefEntries, forming a book component -->
1709<match>
1710<gi>REFERENCE
1711</rule>
1712
1713<rule> <!-- First major division of a reference page, in which metainformation
1714            about the reference page is supplied -->
1715<match>
1716<gi>REFMETA
1717</rule>
1718
1719<rule> <!-- Information in RefMeta that may be supplied by vendors, or a
1720            descriptive phrase for use in a print header -->
1721<match>
1722<gi>REFMISCINFO
1723<action>
1724<ignore>all
1725</rule>
1726
1727<rule> <!-- Subject or subjects of a reference page -->
1728<match>
1729<gi>REFNAME
1730<action>
1731<start>^&lt;STRONG></start>
1732<end>^&lt;/STRONG> -^</end>
1733</rule>
1734
1735<rule> <!-- Major division of a reference page containing naming,
1736            purpose, and classification information -->
1737<match>
1738<gi>REFNAMEDIV
1739<action>
1740<start> ^&lt;H3>Name&lt;/H3>
1741&lt;P></start>
1742<end>^&lt;/P>^</end>
1743</rule>
1744
1745<rule> <!-- Subject of a reference page -->
1746<match>
1747<gi>REFPURPOSE
1748</rule>
1749
1750<rule> <!-- Major subsection of a RefEntry -->
1751<match>
1752<gi>REFSECT1
1753</rule>
1754
1755<rule> <!-- Subsection of a RefSect1 -->
1756<match>
1757<gi>REFSECT2
1758</rule>
1759
1760<rule> <!-- Subsection of a Refsect2 -->
1761<match>
1762<gi>REFSECT3
1763</rule>
1764
1765<rule> <!-- Major division of a reference page, in which the syntax of
1766            the subject of the reference page is indicated -->
1767<match>
1768<gi>REFSYNOPSISDIV
1769</rule>
1770
1771<rule> <!-- Information about a particular version of a document -->
1772<match>
1773<gi>RELEASEINFO
1774</rule>
1775
1776<rule> <!-- Content that may be replaced in a synopsis or command line -->
1777<match>
1778<gi>REPLACEABLE
1779<action>
1780&m.i;
1781</rule>
1782
1783<rule> <!-- Value returned by a function -->
1784<match>
1785<gi>RETURNVALUE
1786</rule>
1787
1788<rule> <!-- Revisions to a document -->
1789<match>
1790<gi>REVHISTORY
1791</rule>
1792
1793<rule> <!-- Entry in RevHistory, describing some revision made to the text -->
1794<match>
1795<gi>REVISION
1796</rule>
1797
1798<rule> <!-- Number of a Revision -->
1799<match>
1800<gi>REVNUMBER
1801</rule>
1802
1803<rule> <!-- Description of a Revision -->
1804<match>
1805<gi>REVREMARK
1806</rule>
1807
1808<rule> <!-- Row in a TBody, THead, or TFoot -->
1809<match>
1810<gi>ROW
1811<action>
1812<start>^&lt;TR valign="top">^</start>
1813<end>^&lt;/TR>^</end>
1814</rule>
1815
1816<rule> <!-- Line break in a command synopsis -->
1817<match>
1818<gi>SBR
1819<action>
1820<start>&lt;BR></start>
1821</rule>
1822
1823<rule> <!-- Text that a user sees or might see on a computer screen -->
1824<match>
1825<gi>SCREEN
1826<relation>parent EXAMPLE
1827<action>
1828<start>^&lt;PRE></start>
1829<end>&lt;/PRE>^</end>
1830</rule>
1831
1832<rule> <!-- Text that a user sees or might see on a computer screen -->
1833<match>
1834<gi>SCREEN
1835<action>
1836&m.preblk;
1837</rule>
1838
1839<rule> <!-- Screen containing areas with associated callouts -->
1840<match>
1841<gi>SCREENCO
1842</rule>
1843
1844<rule> <!-- Information about how a ScreenShot was produced -->
1845<match>
1846<gi>SCREENINFO
1847</rule>
1848
1849<rule> <!-- Representation of what the user sees or might see on a
1850            computer screen -->
1851<match>
1852<gi>SCREENSHOT
1853<relation>parent EXAMPLE
1854</rule>
1855
1856<rule> <!-- Representation of what the user sees or might see on a
1857            computer screen -->
1858<match>
1859<gi>SCREENSHOT
1860<action>
1861<start>${_action &r.blkps;t}</start>
1862<end>${_action &r.blkpe;t}</end>
1863</rule>
1864
1865<rule> <!-- Word or phrase in the text that is to appear in the index beneath
1866            a Primary entry -->
1867<match>
1868<gi>SECONDARY
1869</rule>
1870
1871<rule> <!-- Part of IndexEntry, like PrimaryIE -->
1872<match>
1873<gi>SECONDARYIE
1874</rule>
1875
1876<rule> <!-- Top-level section of a book component, including the Title of that
1877            section -->
1878<match>
1879<gi>SECT1
1880<action>
1881<incr>sect1num
1882<set>sect2num	1
1883</rule>
1884
1885<rule> <!-- Section beginning with a second-level heading -->
1886<match>
1887<gi>SECT2
1888<action>
1889<incr>sect2num
1890<set>sect3num	1
1891</rule>
1892
1893<rule> <!-- Section beginning with a third-level heading -->
1894<match>
1895<gi>SECT3
1896<action>
1897<incr>sect3num
1898<set>sect4num	1
1899</rule>
1900
1901<rule> <!-- Section beginning with a fourth-level heading -->
1902<match>
1903<gi>SECT4
1904<action>
1905<incr>sect4num
1906<set>sect5num	1
1907</rule>
1908
1909<rule> <!-- Section beginning with a fifth-level heading -->
1910<match>
1911<gi>SECT5
1912<action>
1913<incr>sect5num
1914</rule>
1915
1916<rule> <!-- Part of IndexTerm, indicating, for a word or phrase in the text,
1917            the index entry to which the reader is to be directed when he
1918            consults the stub index entry for another element within the
1919            IndexTerm -->
1920<match>
1921<gi>SEE
1922</rule>
1923
1924<rule> <!-- Like See, but indicates the index entries to which the reader
1925            is also to be directed when he consults a full index entry -->
1926<match>
1927<gi>SEEALSO
1928</rule>
1929
1930<rule> <!-- "See also" entry in an Index -->
1931<match>
1932<gi>SEEALSOIE
1933</rule>
1934
1935<rule> <!-- "See" entry in an Index -->
1936<match>
1937<gi>SEEIE
1938</rule>
1939
1940<rule> <!-- Component of a SegmentedList -->
1941<match>
1942<gi>SEG
1943</rule>
1944
1945<rule> <!-- List item in a SegmentedList -->
1946<match>
1947<gi>SEGLISTITEM
1948</rule>
1949
1950<rule> <!-- List of sets of information -->
1951<match>
1952<gi>SEGMENTEDLIST
1953</rule>
1954
1955<rule> <!-- Title that pertains to one Seg in each SegListItem -->
1956<match>
1957<gi>SEGTITLE
1958</rule>
1959
1960<rule> <!-- Information about the publication series of which the containing
1961            Book is a part -->
1962<match>
1963<gi>SERIESINFO
1964</rule>
1965
1966<rule> <!-- Numbers of all the volumes in a Series, for use in SeriesInfo -->
1967<match>
1968<gi>SERIESVOLNUMS
1969</rule>
1970
1971<rule> <!-- Two or more Books -->
1972<match>
1973<gi>SET
1974</rule>
1975
1976<rule> <!-- Index to a Set -->
1977<match>
1978<gi>SETINDEX
1979</rule>
1980
1981<rule> <!-- Metainformation for a Set, in which it may appear -->
1982<match>
1983<gi>SETINFO
1984</rule>
1985
1986<!-- SGMLTag in its variations -->
1987
1988<rule> <!-- Component of SGML markup -->
1989<match>
1990<gi>SGMLTAG
1991<attval>CLASS PARAMENTITY
1992<action>
1993<start>&lt;CODE>%</start>
1994<end>&lt;/CODE></end>
1995</rule>
1996
1997<rule> <!-- Component of SGML markup -->
1998<match>
1999<gi>SGMLTAG
2000<attval>CLASS GENENTITY
2001<action>
2002<start>&lt;CODE>&amp;amp;</start>
2003<end>;&lt;/CODE></end>
2004</rule>
2005
2006<rule> <!-- Component of SGML markup -->
2007<match>
2008<gi>SGMLTAG
2009<attval>CLASS STARTTAG
2010<action>
2011<start>&lt;CODE>&amp;lt;</start>
2012<end>>&lt;/CODE></end>
2013</rule>
2014
2015<rule> <!-- Component of SGML markup -->
2016<match>
2017<gi>SGMLTAG
2018<attval>CLASS ENDTAG
2019<action>
2020<start>&lt;CODE>&amp;lt;/</start>
2021<end>>&lt;/CODE></end>
2022</rule>
2023
2024<rule> <!-- Component of SGML markup -->
2025<match>
2026<gi>SGMLTAG
2027<attval>CLASS PI
2028<action>
2029<start>&lt;CODE>&amp;lt;?</start>
2030<end>>&lt;/CODE></end>
2031</rule>
2032
2033<rule> <!-- Component of SGML markup -->
2034<match>
2035<gi>SGMLTAG
2036<attval>CLASS SGMLCOMMENT
2037<action>
2038<start>&lt;CODE>&amp;lt;--</start>
2039<end>--&amp;lt;/CODE></end>
2040</rule>
2041
2042<!-- catchall for remaining types of tags -->
2043<rule> <!-- Component of SGML markup -->
2044<match>
2045<gi>SGMLTAG
2046<action>
2047<start>&lt;CODE></start>
2048<end>&lt;/CODE></end>
2049</rule>
2050
2051<rule> <!-- Brief version of of Affiliation, in which it may appear -->
2052<match>
2053<gi>SHORTAFFIL
2054</rule>
2055
2056<rule> <!-- Segment of a book component that is isolated from the narrative
2057            flow of the main text, typically boxed and floating -->
2058<match>
2059<gi>SIDEBAR
2060<action>
2061<do>&r.admon;
2062</rule>
2063
2064<rule> <!-- Paragraph that is only a text block, without included
2065            block-oriented elements -->
2066<match>
2067<gi>SIMPARA
2068</rule>
2069
2070<rule> <!-- List of single words or short phrases -->
2071<match>
2072<gi>SIMPLELIST
2073</rule>
2074
2075<rule> <!-- Section with no subdivisions -->
2076<match>
2077<gi>SIMPLESECT
2078</rule>
2079
2080<rule> <!-- Formatting information for a spanned column in a TGroup -->
2081<match>
2082<gi>SPANSPEC
2083</rule>
2084
2085<rule> <!-- State in an Address -->
2086<match>
2087<gi>STATE
2088</rule>
2089
2090<rule> <!-- Part of a Procedure -->
2091<match>
2092<gi>STEP
2093<action>
2094<start>^&lt;LI></start>
2095<end>&lt;/LI>^</end>
2096</rule>
2097
2098<rule> <!-- Street in an Address -->
2099<match>
2100<gi>STREET
2101</rule>
2102
2103<rule> <!-- Field in a Structure -->
2104<match>
2105<gi>STRUCTFIELD
2106</rule>
2107
2108<rule> <!-- Name of a Structure -->
2109<match>
2110<gi>STRUCTNAME
2111</rule>
2112
2113<rule> <!-- Subscript -->
2114<match>
2115<gi>SUBSCRIPT
2116<action>
2117<start>&lt;SUB></start>
2118<end>&lt;/SUB></end>
2119</rule>
2120
2121<rule> <!-- Wrapper for Steps within Steps -->
2122<match>
2123<gi>SUBSTEPS
2124<action>
2125<start>^&lt;OL>^</start>
2126<end>^&lt;/OL>^</end>
2127</rule>
2128
2129<rule> <!-- Subtitle of a document -->
2130<match>
2131<gi>SUBTITLE
2132<action>
2133<start>^&lt;P>&lt;EM></start>
2134<end>&lt;/EM>&lt;/P>^</end>
2135</rule>
2136
2137<rule> <!-- Superscript -->
2138<match>
2139<gi>SUPERSCRIPT
2140<action>
2141<start>&lt;SUP></start>
2142<end>&lt;/SUP></end>
2143</rule>
2144
2145<rule> <!-- Family name -->
2146<match>
2147<gi>SURNAME
2148<action>
2149<start>^</start>
2150<end>^</end>
2151</rule>
2152
2153<rule> <!-- Name that is replaced by a value before processing -->
2154<match>
2155<gi>SYMBOL
2156<action>
2157&m.tt;
2158</rule>
2159
2160<rule> <!-- Part of CmdSynopsis -->
2161<match>
2162<gi>SYNOPFRAGMENT
2163</rule>
2164
2165<rule> <!-- Part of a CmdSynopsis -->
2166<match>
2167<gi>SYNOPFRAGMENTREF
2168</rule>
2169
2170<rule> <!-- Syntax of a command or function -->
2171<match>
2172<gi>SYNOPSIS
2173<action>
2174&m.blk;
2175</rule>
2176
2177<rule> <!-- System-related term or item -->
2178<match>
2179<gi>SYSTEMITEM
2180<action>
2181&m.tt;
2182</rule>
2183
2184<rule> <!-- Table in a document -->
2185<match>
2186<gi>TABLE
2187<attval>FRAME none
2188<action>
2189<start>${_action &r.blkps;t}&lt;P>${_action &r.anchor;t}&lt;STRONG>${_gi M} ${tabnum}:&lt;/STRONG>
2190${_followrel child TITLE &r.pass;}&lt;/P>&lt;TABLE>^</start>
2191<end>^&lt;/TABLE>
2192${_action &r.blkpe;t}</end>
2193<incr>tabnum
2194</rule>
2195
2196<rule> <!-- Table in a document -->
2197<match>
2198<gi>TABLE
2199<action>
2200<start>${_action &r.blkps;t}&lt;P>${_action &r.anchor;t}&lt;STRONG>${_gi M} ${tabnum}:&lt;/STRONG>
2201${_followrel child TITLE &r.pass;}&lt;/P>&lt;TABLE border="1">^</start>
2202<end>^&lt;/TABLE>
2203${_action &r.blkpe;t}</end>
2204<incr>tabnum
2205</rule>
2206
2207<rule> <!-- Wrapper for the Rows of a Table or InformalTable -->
2208<match>
2209<gi>TBODY
2210</rule>
2211
2212<rule> <!-- Hanging term attached to a ListItem within a VarListEntry in a
2213            VariableList -->
2214<match>
2215<gi>TERM
2216<action>
2217<start>^&lt;DT></start>
2218<end>&lt;/DT>^</end>
2219</rule>
2220
2221<rule> <!-- Word or phrase that is to appear in the index under a Secondary
2222            entry -->
2223<match>
2224<gi>TERTIARY
2225</rule>
2226
2227<rule> <!-- Third-level entry in an Index, not in the text -->
2228<match>
2229<gi>TERTIARYIE
2230</rule>
2231
2232<rule> <!-- Footer row of a table -->
2233<match>
2234<gi>TFOOT
2235</rule>
2236
2237<rule> <!-- Wrapper for part of a Table that contains an array along
2238with its
2239            formatting information -->
2240<match>
2241<gi>TGROUP
2242<relation>parent INFORMALTABLE
2243<action>
2244<start>^&lt;TABLE>^</start>
2245<end>^&lt;/TABLE>^</end>
2246</rule>
2247
2248<rule> <!-- Wrapper for part of a Table that contains an array along with its
2249            formatting information -->
2250<match>
2251<gi>TGROUP
2252</rule>
2253
2254<rule> <!-- Heading row of a table -->
2255<match>
2256<gi>THEAD
2257</rule>
2258
2259<rule> <!-- Suggestion to the user, set off from the text -->
2260<match>
2261<gi>TIP
2262<action>
2263<do>&r.admon;
2264</rule>
2265
2266<rule> <!-- Text of a heading or the title of a block-oriented element -->
2267<match>
2268<gi>TITLE
2269<relation>parent BLOCKQUOTE
2270<action>
2271<start>^&lt;H4>&hlofont;</start>
2272<end>&hlcfont;&lt;/H4>^</end>
2273</rule>
2274
2275<!-- Titles in the preface -->
2276
2277<rule> <!-- Text of a heading or the title of a block-oriented element -->
2278<match>
2279<gi>TITLE
2280<context>PREFACE
2281<action>
2282<start>^&lt;H1>&lt;A NAME="pf-${pfnum}">&lt;/A>&hlofont;</start>
2283<end>&hlcfont;&lt;/H1>^</end>
2284</rule>
2285
2286<rule> <!-- Text of a heading or the title of a block-oriented element -->
2287<match>
2288<gi>TITLE
2289<context>SECT1
2290<relation>ancestor PREFACE
2291<action>
2292<start>^&lt;H2>&hlofont;</start>
2293<end>&hlcfont;&lt;/H2>^</end>
2294</rule>
2295
2296<rule> <!-- Text of a heading or the title of a block-oriented element -->
2297<match>
2298<gi>TITLE
2299<context>SECT2
2300<relation>ancestor PREFACE
2301<action>
2302<start>^&lt;H3>&hlofont;</start>
2303<end>&hlcfont;&lt;/H3>^</end>
2304</rule>
2305
2306<rule> <!-- Text of a heading or the title of a block-oriented element -->
2307<match>
2308<gi>TITLE
2309<context>SECT3
2310<relation>ancestor PREFACE
2311<action>
2312<start>^&lt;H4>&hlofont;</start>
2313<end>&hlcfont;&lt;/H4>^</end>
2314</rule>
2315
2316<rule> <!-- Text of a heading or the title of a block-oriented element -->
2317<match>
2318<gi>TITLE
2319<context>SECT4
2320<relation>ancestor PREFACE
2321<action>
2322<start>^&lt;H4>&hlofont;</start>
2323<end>&hlcfont;&lt;/H4>^</end>
2324</rule>
2325
2326<rule> <!-- Text of a heading or the title of a block-oriented element -->
2327<match>
2328<gi>TITLE
2329<context>SECT5
2330<relation>ancestor PREFACE
2331<action>
2332<start>^&lt;H4>&hlofont;</start>
2333<end>&hlcfont;&lt;/H4>^</end>
2334</rule>
2335
2336<!-- Title in bookbiblio -->
2337
2338<rule> <!-- Text of a heading or the title of a block-oriented element -->
2339<match>
2340<gi>TITLE
2341<context>BOOKBIBLIO
2342<action>
2343<ignore>all
2344</rule>
2345
2346<!-- Titles in other sections -->
2347
2348<rule> <!-- Text of a heading or the title of a block-oriented element -->
2349<match>
2350<gi>TITLE
2351<context>^REF.*
2352<action>
2353<start>^&lt;H3></start>
2354<end>^&lt;/H3></end>
2355</rule>
2356
2357<rule> <!-- Text of a heading or the title of a block-oriented element -->
2358<match>
2359<gi>TITLE
2360<context>PART
2361<action>
2362<start>^&lt;H1>&lt;A NAME="pt-${partnum}">&lt;/A>${_followrel parent PART &r.anchor;t}&hlofont;Part ${partnum}:&lt;BR>^</start>
2363<end>&hlcfont;&lt;/H1>
2364${_followrel parent PART &r.chtoc;t}^</end>
2365</rule>
2366
2367<rule> <!-- Text of a heading or the title of a block-oriented element -->
2368<match>
2369<gi>TITLE
2370<context>CHAPTER
2371<action>
2372<start>^&lt;H1>&lt;A NAME="ch-${chapnum}">&lt;/A>${_followrel parent CHAPTER &r.anchor;t}&hlofont;${chapnum}.&wspace;^</start>
2373<end>&hlcfont;&lt;/H1>
2374${_followrel parent CHAPTER &r.s1toc;t}^</end>
2375</rule>
2376
2377<rule> <!-- Text of a heading or the title of a block-oriented element -->
2378<match>
2379<gi>TITLE
2380<context>APPENDIX
2381<action>
2382<start>^&lt;H1>&lt;A NAME="ch-${chapnum}">&lt;/A>${_followrel parent APPENDIX &r.anchor;t}&hlofont;${chapnum}.&wspace;^</start>
2383<end>&hlcfont;&lt;/H1>
2384${_followrel parent APPENDIX &r.s1toc;t}^</end>
2385</rule>
2386
2387<rule> <!-- Text of a heading or the title of a block-oriented element -->
2388<match>
2389<gi>TITLE
2390<context>SECT1
2391<action>
2392<start>^&lt;H2>&lt;A NAME="s1-${chapnum}-${sect1num}">&lt;/A>${_followrel parent SECT1 &r.anchor;t}&hlofont;${chapnum}.${sect1num}.&wspace;^</start>
2393<end>&hlcfont;&lt;/H2>
2394${_followrel parent SECT1 &r.s2toc;t}^</end>
2395</rule>
2396
2397<rule> <!-- Text of a heading or the title of a block-oriented element -->
2398<match>
2399<gi>TITLE
2400<context>SECT2
2401<action>
2402<start>^&lt;H3>&lt;A NAME="s2-${chapnum}-${sect1num}-${sect2num}">&lt;/A>${_followrel parent SECT2 &r.anchor;t}&hlofont;${chapnum}.${sect1num}.${sect2num}.&wspace^</start>
2403<end>&hlcfont;&lt;/H3>
2404${_followrel parent SECT2 &r.s3toc;t}^</end>
2405</rule>
2406
2407<rule> <!-- Text of a heading or the title of a block-oriented element -->
2408<match>
2409<gi>TITLE
2410<context>SECT3
2411<action>
2412<start>^&lt;H4>&lt;A NAME="s3-${chapnum}-${sect1num}-${sect2num}-${sect3num}">&lt;/A>${_followrel parent SECT3 &r.anchor;t}&hlofont;${chapnum}.${sect1num}.${sect2num}.${sect3num}.&wspace;^</start>
2413<end>&hlcfont;&lt;/H4>^</end>
2414</rule>
2415
2416<rule> <!-- Text of a heading or the title of a block-oriented element -->
2417<match>
2418<gi>TITLE
2419<context>SECT4
2420<action>
2421<start>^&lt;H4>${_followrel parent SECT4 &r.anchor;t}&hlofont;</start>
2422<end>&hlcfont;&lt;/H4>^</end>
2423</rule>
2424
2425<rule> <!-- Text of a heading or the title of a block-oriented element -->
2426<match>
2427<gi>TITLE
2428<context>SECT5
2429<action>
2430<start>^&lt;H4>${_followrel parent SECT5 &r.anchor;t}&hlofont;</start>
2431<end>&hlcfont;&lt;/H4>^</end>
2432</rule>
2433
2434<rule> <!-- Text of a heading or the title of a block-oriented element -->
2435<match>
2436<gi>TITLE
2437<context>FIGURE|EXAMPLE|TABLE|CAUTION|IMPORTANT|NOTE|TIP|WARNING
2438<action>
2439<ignore>all
2440</rule>
2441
2442<rule> <!-- Text of a heading or the title of a block-oriented element -->
2443<match>
2444<gi>TITLE
2445<context>GLOSSARY
2446<action>
2447<ignore>all
2448</rule>
2449
2450<rule> <!-- Text of a heading or the title of a block-oriented element -->
2451<match>
2452<gi>TITLE
2453</rule>
2454
2455<rule> <!-- Abbreviated title -->
2456<match>
2457<gi>TITLEABBREV
2458<action>
2459<ignore>all
2460</rule>
2461
2462<rule> <!-- Table of contents -->
2463<match>
2464<gi>TOC
2465</rule>
2466
2467<rule> <!-- Entry for back matter in a ToC -->
2468<match>
2469<gi>TOCBACK
2470</rule>
2471
2472<rule> <!-- Entry in a ToC for a part of the body of a Book -->
2473<match>
2474<gi>TOCCHAP
2475</rule>
2476
2477<rule> <!-- Entry in a ToC or its subelements -->
2478<match>
2479<gi>TOCENTRY
2480</rule>
2481
2482<rule> <!-- Entry for introductory matter in a ToC -->
2483<match>
2484<gi>TOCFRONT
2485</rule>
2486
2487<rule> <!-- Top-level entry within a ToCchap -->
2488<match>
2489<gi>TOCLEVEL1
2490</rule>
2491
2492<rule> <!-- Second-level entry within a ToCchap -->
2493<match>
2494<gi>TOCLEVEL2
2495</rule>
2496
2497<rule> <!-- Third-level entry within a ToCchap -->
2498<match>
2499<gi>TOCLEVEL3
2500</rule>
2501
2502<rule> <!-- Fourth-level entry within a ToCchap -->
2503<match>
2504<gi>TOCLEVEL4
2505</rule>
2506
2507<rule> <!-- Fifth-level entry within a ToCchap -->
2508<match>
2509<gi>TOCLEVEL5
2510</rule>
2511
2512<rule> <!-- Entry in a ToC for a Part of a Book -->
2513<match>
2514<gi>TOCPART
2515</rule>
2516
2517<rule> <!-- Unit of information in the context of lexical analysis -->
2518<match>
2519<gi>TOKEN
2520</rule>
2521
2522<rule> <!-- Trademark -->
2523<match>
2524<gi>TRADEMARK
2525<action>
2526<end>&lt;SMALL>&lt;SUP>(TM)&lt;/SUP>&lt;/SMALL></end>
2527</rule>
2528
2529<rule> <!-- Classification of a value -->
2530<match>
2531<gi>TYPE
2532<action>
2533&m.tt;
2534</rule>
2535
2536<rule> <!-- Link that addresses its target by means of a Uniform Resource
2537            Locator -->
2538<match>
2539<gi>ULINK
2540<action>
2541<start>&lt;A HREF="${URL}"></start>
2542<end>&lt;/A></end>
2543</rule>
2544
2545<rule> <!-- Data entered by the user -->
2546<match>
2547<gi>USERINPUT
2548<action>
2549<start>&lt;B>&lt;CODE></start>
2550<end>&lt;/CODE>&lt;/B></end>
2551</rule>
2552
2553<rule> <!-- Empty element, part of FuncSynopsis, indicating that the Function in
2554            question has a variable number of arguments -->
2555<match>
2556<gi>VARARGS
2557</rule>
2558
2559<rule> <!-- List in which each entry is composed of sets of one or more
2560            Terms with associated ListItems -->
2561<match>
2562<gi>VARIABLELIST
2563<action>
2564<start>${_action &r.blkps;t}
2565&lt;DL>^</start>
2566<end>^&lt;/DL>
2567${_action &r.blkpe;t}</end>
2568</rule>
2569
2570<rule> <!-- Wrapper for Term and its associated ListItem in a
2571            VariableList -->
2572<match>
2573<gi>VARLISTENTRY
2574</rule>
2575
2576<rule> <!-- Empty element, part of FuncSynopsis, that indicates that the Function in
2577            question takes no arguments -->
2578<match>
2579<gi>VOID
2580</rule>
2581
2582<rule> <!-- Number of a Book in relation to Set, or of a journal, when Book
2583            is used to represent a journal by containing Articles -->
2584<match>
2585<gi>VOLUMENUM
2586</rule>
2587
2588<rule> <!-- Admonition set off from the text -->
2589<match>
2590<gi>WARNING
2591<action>
2592<do>&r.admon;
2593</rule>
2594
2595<rule> <!-- Word -->
2596<match>
2597<gi>WORDASWORD
2598<action>
2599<start>``</start>
2600<end>''</end>
2601</rule>
2602
2603<rule> <!-- Cross reference link to another part of the document -->
2604<match>
2605<gi>XREF
2606<attval>REMAP .
2607<action>
2608<replace>&lt;EM>&lt;A HREF="#${LINKEND}">${REMAP}&lt;/A>&lt;/EM></replace>
2609</rule>
2610
2611<rule> <!-- Cross reference link to another part of the document -->
2612<match>
2613<gi>XREF
2614<action>
2615<replace>&lt;EM>&lt;A HREF="#${LINKEND}">${_chasetogi TITLE &r.pass}&lt;/A>&lt;/EM></replace>
2616</rule>
2617
2618<rule> <!-- Year of publication of a document -->
2619<match>
2620<gi>YEAR
2621<action>
2622<start>^</start>
2623<end>^</end>
2624</rule>
2625
2626<rule> <!-- Absorb anything that mannages to get this
2627            far without a match so it does not accidentally
2628            match the rules below which are meant to be
2629            explicitly invoked from other rules. -->
2630<match>
2631<gi>*
2632</rule>
2633
2634<!-- Just pass the content and child elements through. -->
2635<rule id="&r.pass;">
2636<match>
2637<gi>_pass-text
2638</rule>
2639
2640<!-- Output an HTML anchor if the ID is set. -->
2641<rule id="&r.anchor;">
2642<match>
2643<attval>ID .
2644<action>
2645<replace>&lt;A NAME="${ID id}">&lt;/A></replace>
2646</rule>
2647
2648<rule id="&r.ignore;">
2649<match>
2650<gi>_no_pass_text
2651<action>
2652<ignore>all
2653</rule>
2654
2655<rule id="&r.admon;">
2656<match>
2657<gi>_admonition
2658<action>
2659<start>${_action &r.blkps;t}
2660&lt;CENTER>${_action &r.anchor;t}&lt;TABLE align="center" border="1" cellpadding="5" width="90%">
2661&lt;TR>
2662&lt;TD&c.admon;>&lt;P>&lt;STRONG>${_followrel child TITLE &r.pass; &r.prgi;}:&lt;/STRONG>&lt;/P></start>
2663<end>^&lt;/TD>&lt;/TR>&lt;/TABLE>&lt;/CENTER>
2664${_action &r.blkpe;t}</end>
2665</rule>
2666
2667<rule id="&r.prgi;">
2668<match>
2669<gi>_prgi
2670<action>
2671<replace>${_gi M}</replace>
2672</rule>
2673
2674<!-- Generate tables of contents.  Each r.??toc scans the subtree for
2675     sectional elements of the specified level, generating a list of links. -->
2676
2677<rule id="&r.pttoc;">
2678<match>
2679<relation>descendant PART
2680<action>
2681<replace>^&lt;DL>${_set anchorinhibit 1}
2682${_find gi PART &r.pttoci;}
2683${_set anchorinhibit 0}&lt;/DL>${_set partnum 1}^</replace>
2684</rule>
2685
2686<rule id="&r.pttoci;">
2687<match>
2688<gi>_pttoc
2689<action>
2690<replace>&lt;DD>Part ${partnum}.&wspace;&lt;EM>&lt;A HREF="#pt-${partnum}">${_followrel descendant TITLE &r.pass;}&lt;/A>&lt;/EM>&lt;/DD>^</replace>
2691<incr>partnum
2692</rule>
2693
2694<rule id="&r.chtoc;">
2695<match>
2696<relation>descendant CHAPTER
2697<action>
2698<replace>^&lt;DL>${_set anchorinhibit 1}
2699${_set tmpchapnum ${pfpnum}}${_find gi PREFACE &r.pftoci;}${_set pfnum ${tmpchapnum}}
2700${_set tmpchapnum ${chapnum}}${_find gi CHAPTER &r.chtoci;}${_set chapnum ${appnum}}${_find gi APPENDIX &r.chtoci;}
2701${_set anchorinhibit 0}&lt;/DL>^</replace>
2702<set>chapnum ${tmpchapnum}
2703</rule>
2704
2705<rule id="&r.chtoci;">
2706<match>
2707<gi>_chtoc
2708<action>
2709<replace>&lt;DD>${chapnum}.&wspace;&lt;EM>&lt;A HREF="#ch-${chapnum}">${_followrel descendant TITLE &r.pass;}&lt;/A>&lt;/EM>&lt;/DD>^</replace>
2710<incr>chapnum
2711</rule>
2712
2713<rule id="&r.pftoci;">
2714<match>
2715<gi>_aptoc
2716<action>
2717<replace>&lt;DD>&lt;EM>&lt;A HREF="#pf-${pfnum}">${_followrel descendant TITLE &r.pass;}&lt;/A>&lt;/EM>&lt;/DD>^</replace>
2718<incr>pfnum
2719</rule>
2720
2721<rule id="&r.s1toc;">
2722<match>
2723<relation>descendant SECT1
2724<action>
2725<replace>^${_set anchorinhibit 1}&lt;DL>
2726${_find gi SECT1 &r.s1toci;}
2727${_set anchorinhibit 0}&lt;/DL>${_set sect1num 1}^</replace>
2728</rule>
2729
2730<rule id="&r.s1toci;">
2731<match>
2732<gi>_s1toc
2733<action>
2734<replace>&lt;DD>${chapnum}.${sect1num}.&wspace;&lt;EM>&lt;A HREF="#s1-${chapnum}-${sect1num}">${_followrel descendant TITLE &r.pass;}&lt;/A>&lt;/EM>&lt;/DD>^</replace>
2735<incr>sect1num
2736</rule>
2737
2738<rule id="&r.s2toc;">
2739<match>
2740<relation>descendant SECT2
2741<action>
2742<replace>^${_set anchorinhibit 1}&lt;DL>
2743${_find gi SECT2 &r.s2toci;}
2744${_set anchorinhibit 0}&lt;/DL>${_set sect2num 1}^</replace>
2745</rule>
2746
2747<rule id="&r.s2toci;">
2748<match>
2749<gi>_s2toc
2750<action>
2751<replace>&lt;DD>${chapnum}.${sect1num}.${sect2num}.&wspace;&lt;EM>&lt;A HREF="#s2-${chapnum}-${sect1num}-${sect2num}">${_followrel descendant TITLE &r.pass;}&lt;/A>&lt;/EM>&lt;/DD>^</replace>
2752<incr>sect2num
2753</rule>
2754
2755<rule id="&r.s3toc;">
2756<match>
2757<relation>descendant SECT3
2758<action>
2759<replace>^${_set anchorinhibit 1}&lt;DL>
2760${_find gi SECT3 &r.s3toci;}
2761${_set anchorinhibit 0}&lt;/DL>${_set sect3num 1}^</replace>
2762</rule>
2763
2764<rule id="&r.s3toci;">
2765<match>
2766<gi>_s3toc
2767<action>
2768<replace>&lt;DD>${chapnum}.${sect1num}.${sect2num}.${sect3num}.&wspace;&lt;EM>&lt;A HREF="#s3-${chapnum}-${sect1num}-${sect2num}-${sect3num}">${_followrel descendant TITLE &r.pass;}&lt;/A>&lt;/EM>&lt;/DD>^</replace>
2769<incr>sect3num
2770</rule>
2771
2772<rule id="&r.fnote;">
2773<match>
2774<relation>descendant FOOTNOTE
2775<action>
2776<replace>&lt;H1>&hlofont;Notes&hlcfont;&lt;/H1>
2777&lt;TABLE width="100%">
2778${_find top gi FOOTNOTE &r.fnotei;}
2779&lt;/TABLE></replace>
2780</rule>
2781
2782<rule id="&r.fnotei;">
2783<match>
2784<gi>_fnote
2785<action>
2786<start>^&lt;TR>&lt;TD VALIGN="TOP">&lt;B>&lt;A NAME="fn-${fnotenum}">&lt/A>&lt;A HREF="#rfn-${fnotenum}">${fnotenum}.&lt/A>&lt;/B>&lt;/TD>
2787&lt;TD VALIGN="TOP"></start>
2788<end>&lt;/TD>&lt;TR></end>
2789<incr>fnotenum
2790</rule>
2791
2792<!-- These two are for handling the case of a block element that
2793     can occur in a docbook <para>, but not in an html <p>.  Call
2794     the first in the <start> of such an element, and the second
2795     in the <end> which will close and re-open the html <p>. -->
2796
2797<rule id="&r.blkps;">
2798<match>
2799<relation>parent PARA
2800<action>
2801<replace>&lt;/P>^</replace>
2802</rule>
2803
2804<rule id="&r.blkpe;">
2805<match>
2806<relation>parent PARA
2807<action>
2808<replace>^&lt;P></replace>
2809</rule>
2810
2811<!-- Simply output a hyphen -->
2812<rule id="&r.hyphen;">
2813<match>
2814<gi>_hyphen
2815<action>
2816<replace>-</replace>
2817</rule>
2818
2819<!-- Force a linebreak -->
2820<rule id="&r.nl;">
2821<match>
2822<gi>_hyphen
2823<action>
2824<replace>^</replace>
2825</rule>
2826
2827<!-- Insert a header file -->
2828<rule id="&r.inchdr;">
2829<match>
2830<varval>inchdr .
2831<action>
2832<replace>${_include ${inchdr}}</replace>
2833</rule>
2834
2835<!-- Insert a footer file -->
2836<rule id="&r.incftr;">
2837<match>
2838<varval>incftr .
2839<action>
2840<replace>${_include ${incftr}}</replace>
2841</rule>
2842
2843
2844
2845</transpec>
2846