Annotation of embedaddon/bird2/doc/sbase/dtd/birddoc.dtd, revision 1.1.1.1
1.1 misho 1: <!-- This is a DTD, but will be read as -*- sgml -*- -->
2: <!-- ================================================= -->
3: <!-- $Id$
4:
5: This was heavilly modified for use with bird! Don't you dare to use it
6: anywhere else. <pavel@ucw.cz>
7:
8: This was LINUXDOC.DTD,
9: a hacked version of QWERTZ.DTD v1.3 by Matt Welsh,
10: Greg Hankins, Eric Raymond, Marc Baudoin and
11: Tristan Debeaupuis; modified from QWERTZ.DTD by
12: Tom Gordon.
13:
14: $Log$
15: Revision 1.4 2000-06-05 21:02:58 mj
16: Define element <progdoc> which initializes different formatting for the
17: programmer's guide (\raggedbottom etc.).
18:
19: Also, omit "\usepackage{t1enc}", so that bullets work now.
20:
21: Revision 1.3 2000/05/31 14:24:21 mj
22: Formatting of progdoc works in both HTML and LaTeX. The LaTeX output
23: still has somewhat weird spacing, but it will be hopefully easy
24: to fix.
25:
26: Revision 1.2 2000/05/31 11:28:52 mj
27: Added tags for markup of programmer's documentation.
28:
29: Revision 1.1 2000/05/29 12:05:21 mj
30: Renamed the DTD from linuxdoc to birddoc.
31:
32: Pavel, please check whether it builds in your environment as well.
33:
34: Revision 1.1 2000/05/11 12:00:36 pavel
35: Critical files from linuxdoc1 distribution checked in.
36:
37: Revision 1.8 1998/06/26 19:41:11 cg
38: * Add (La)TeX logos. (NJ)
39:
40: Revision 1.7 1998/03/22 10:39:08 cg
41: * Corrected "isoent" entity reference in DTD. (CdG)
42:
43: Revision 1.6 1998/01/08 19:48:20 cg
44: * Added "invisible" index tags <nidx> and <ncdx>. (SM/CdG)
45:
46: Revision 1.5 1997/11/23 21:04:37 cg
47: * Added <file> tag to all DTDs and documented it (ESR)
48:
49: * Added <idx> and <cdx> to linuxdoc97 and sgmltool DTDs (ESR)
50:
51: * Arrange for <htmlurl> to call \url in the LaTeX back end (ESR)
52:
53: Revision 1.4 1997/11/21 22:58:13 cg
54: * Allow [ and ] to be used inside <tag></tag>. (ESR)
55:
56: Revision 1.3 1997/11/12 21:47:24 cg
57: * Manually modified the Log entry in linuxdoc96.dtd. It contained SGML
58: comments, and nested comments won't go... (CdG)
59:
60: Revision 1.2 1997/11/11 20:50:22 cg
61: * First pass at conditionals. This version is implemented with magic comments
62: <!- if -> and <!- unless ->. (ESR)
63:
64: * The generic options processing now includes the -D option to pass in an
65: attribute/value pair for conditionals. This meant the -D option in
66: sgml2html had to be changed, it's now -h. (ESR)
67:
68: Revision 1.1 1997/07/09 13:27:19 cg
69: * Completely new DTD setup by Bernd (BK).
70:
71:
72: -->
73: <!-- ================================================= -->
74: <!-- Revision Comments -->
75:
76: <!-- ESR/97/11/17: Added file tag. -->
77: <!-- ESR/97/11/11: Removed the crude and undocumented
78: conditionalization features in this DTD. They
79: weren't in the original linuxdoc 1.3 DTD, and are
80: superseded by the new if/unless facility. -->
81: <!-- BK/97/05/09: this is the original Linuxdoc DTD,
82: as of SGML Tools 0.99.0. It is not longer
83: supported. Use only if in dire need, for backwards
84: compabitlity. Backend support for undocumented
85: QWERTZ leftovers not in the strict Linuxdoc DTD's
86: is not guaranteed. -->
87: <!-- BK/97/06/06: finally applied changes proposed by
88: Ken MacLeod to dtd/catalog (PUBLIC). Removed
89: the duplicated linuxdoc96 element name. -->
90: <!-- BK/97/06/22: replaced entire content with DTD
91: from 0.99.12 release - I am not going to maintain
92: any changes to this, just replacing. -->
93: <!-- ================================================= -->
94:
95: <!entity % emph
96: " em|it|bf|sf|sl|tt|cf|m|cparam|const|func|struct|param|type|funcdef " >
97:
98: <!entity % index "idx|cdx|nidx|ncdx" >
99:
100: <!-- url added by HG; htmlurl added by esr -->
101: <!entity % xref
102: " label|ref|pageref|cite|url|htmlurl|rfc|ncite " >
103:
104: <!entity % inline
105: " (#pcdata | f| x| %emph; |sq| %xref | %index | file )* " >
106:
107: <!entity % list
108: " list | itemize | enum | descrip " >
109:
110: <!entity % par
111: " %list; | comment | lq | quote | tscreen | hrule " >
112:
113: <!entity % mathpar " dm | eq " >
114:
115: <!entity % thrm
116: " def | prop | lemma | coroll | proof | theorem " >
117:
118: <!entity % litprog " code | verb " >
119:
120: <!entity % sectpar
121: " %par; | figure | tabular | table | %mathpar; |
122: %thrm; | %litprog; | function ">
123: <!element birddoc o o
124: (sect | chapt | article | report |
125: book | letter | telefax | slides | notes | manpage ) >
126:
127: <!-- `general' entity replaced with ISO entities - kwm -->
128: <!entity % isoent system "isoent">
129: %isoent;
130:
131: <!entity urlnam sdata "urlnam" >
132: <!entity refnam sdata "refnam" >
133: <!entity tex sdata "[tex ]" >
134: <!entity latex sdata "[latex ]" >
135: <!entity latexe sdata "[latexe]" >
136: <!entity tm sdata "[trade ]" >
137: <!entity dquot sdata "[quot ]" >
138: <!entity ero sdata "[amp ]" >
139: <!entity etago '</' >
140: <!entity Ae 'Ä' >
141: <!entity ae 'ä' >
142: <!entity Oe 'Ö' >
143: <!entity oe 'ö' >
144: <!entity Ue 'Ü' >
145: <!entity ue 'ü' >
146: <!entity sz 'ß' >
147: <!element p o o (( %inline | %sectpar )+) +(newline) >
148: <!entity ptag '<p>' >
149: <!entity psplit '</p><p>' >
150: <!element hrule - - EMPTY>
151:
152: <!shortref pmap
153: "&#RS;B" null
154: "&#RS;B&#RE;" psplit
155: "&#RS;&#RE;" psplit
156: -- '"' qtag --
157: "[" lsqb
158: "~" nbsp
159: "_" lowbar
160: "#" num
161: "%" percnt
162: "^" circ
163: "{" lcub
164: "}" rcub
165: "|" verbar >
166:
167: <!usemap pmap p>
168: <!element em - - (%inline)>
169: <!element bf - - (%inline)>
170: <!element it - - (%inline)>
171: <!element sf - - (%inline)>
172: <!element sl - - (%inline)>
173: <!element tt - - (%inline)>
174: <!element cf - - (%inline)>
175: <!element m - - (%inline)>
176: <!element sq - - (%inline)>
177: <!element cparam - - (%inline)>
178:
179: <!element const - - (%inline)>
180: <!element func - - (%inline)>
181: <!element struct - - (%inline)>
182: <!element param - - (%inline)>
183: <!element type - - (%inline)>
184: <!element funcdef - - (%inline)>
185:
186: <!element function - - (%inline | p | funcsect)*>
187: <!element funcsect - o (%inline)>
188:
189: <!entity ftag '<f>' -- formula begin -- >
190: <!entity qendtag '</sq>'>
191:
192: <!shortref sqmap
193: "&#RS;B" null
194: -- '"' qendtag --
195: "[" lsqb
196: "~" nbsp
197: "_" lowbar
198: "#" num
199: "%" percnt
200: "^" circ
201: "{" lcub
202: "}" rcub
203: "|" verbar >
204:
205: <!usemap sqmap sq >
206:
207: <!element lq - - (p*)>
208: <!element quote - - ((%inline; | %sectpar;)*, p*)+ >
209: <!element tscreen - - ((%inline; | %sectpar;)*, p*)+ >
210: <!element itemize - - (item+)>
211: <!element enum - - (item+)>
212: <!element list - - (item+)>
213:
214: <!-- What a mess. The following is here to clean up problems with
215: paragraph breaks in a descrip. I can think of cases where this might
216: break, but it seems to work. mdw -->
217:
218: <!shortref desmap
219: "&#RS;B" null
220: "&#RS;B&#RE;" ptag
221: "&#RS;&#RE;" ptag
222: "~" nbsp
223: "_" lowbar
224: "#" num
225: "%" percnt
226: "^" circ
227: "[" lsqb
228: "]" rsqb
229: "{" lcub
230: "}" rcub
231: "|" verbar >
232:
233: <!element descrip - - ((tag | tagp)?, p+)+ >
234: <!usemap desmap descrip>
235:
236: <!element item o o ((%inline; | %sectpar;)*, p*) >
237:
238: <!element tag - o (%inline)>
239: <!usemap desmap tag>
240:
241: <!element tagp - o (%inline)>
242: <!usemap desmap tagp>
243:
244: <!usemap global (list,itemize,enum)>
245: <!entity space " ">
246: <!entity null "">
247:
248: <!--
249: <!shortref bodymap
250: "&#RS;B&#RE;" ptag
251: "&#RS;&#RE;" ptag
252: '"' qtag
253: "[" lsqb
254: "~" nbsp
255: "_" lowbar
256: "#" num
257: "%" percnt
258: "^" circ
259: "{" lcub
260: "}" rcub
261: "|" verbar>
262: -->
263:
264: <!element figure - - ((eps | ph ), img*, caption?)>
265: <!attlist figure
266: loc cdata "tbp"
267: caption cdata "Caption">
268:
269: <!-- eps attributes added by mb and td -->
270: <!element eps - o empty >
271: <!attlist eps
272: file cdata #required
273: height cdata "5cm"
274: angle cdata "0">
275:
276: <!element ph - o empty >
277: <!attlist ph
278: vspace cdata #required>
279:
280: <!element img - o empty>
281: <!attlist img
282: src cdata #required>
283:
284: <!element caption - o (%inline)>
285:
286: <!shortref oneline
287: "B&#RE;" space
288: "&#RS;&#RE;" null
289: "&#RS;B&#RE;" null
290: -- '"' qtag --
291: "[" ftag
292: "~" nbsp
293: "_" lowbar
294: "#" num
295: "%" percnt
296: "^" circ
297: "{" lcub
298: "}" rcub
299: "|" verbar>
300:
301: <!usemap oneline tag>
302: <!usemap oneline caption>
303:
304: <!entity % tabrow "(%inline, (colsep, %inline)*)" >
305: <!element tabular - -
306: (hline?, %tabrow, (rowsep, hline?, %tabrow)*, caption?) >
307:
308: <!attlist tabular
309: ca cdata #required>
310:
311: <!element rowsep - o empty>
312: <!element colsep - o empty>
313: <!element hline - o empty>
314:
315: <!entity rowsep "<rowsep>">
316: <!entity colsep "<colsep>">
317:
318: <!shortref tabmap
319: "&#RE;" null
320: "&#RS;&#RE;" null
321: "&#RS;B&#RE;" null
322: "&#RS;B" null
323: "B&#RE;" null
324: "BB" space
325: "@" rowsep
326: "|" colsep
327: "[" ftag
328: -- '"' qtag --
329: "_" thinsp
330: "~" nbsp
331: "#" num
332: "%" percnt
333: "^" circ
334: "{" lcub
335: "}" rcub >
336:
337: <!usemap tabmap tabular>
338: <!element table - - (tabular, caption?) >
339: <!attlist table
340: loc cdata "tbp">
341:
342: <!element code - - rcdata>
343: <!element verb - - rcdata>
344:
345: <!shortref ttmap -- also on one-line --
346: "B&#RE;" space
347: "&#RS;&#RE;" null
348: "&#RS;B&#RE;" null
349: "&#RS;B" null
350: '#' num
351: '%' percnt
352: '~' tilde
353: '_' lowbar
354: '^' circ
355: '{' lcub
356: '}' rcub
357: '|' verbar >
358:
359: <!usemap ttmap tt>
360: <!element mc - - cdata >
361: <!entity % sppos "tu" >
362: <!entity % fcs "%sppos;|phr" >
363: <!entity % fcstxt "#pcdata|mc|%fcs;" >
364: <!entity % fscs "rf|v|fi" >
365: <!entity % limits "pr|in|sum" >
366: <!entity % fbu "fr|lim|ar|root" >
367: <!entity % fph "unl|ovl|sup|inf" >
368: <!entity % fbutxt "(%fbu;) | (%limits;) |
369: (%fcstxt;)|(%fscs;)|(%fph;)" >
370: <!entity % fphtxt "p|#pcdata" >
371: <!element f - - ((%fbutxt;)*) >
372:
373: <!entity fendtag '</f>' -- formula end -- >
374:
375: <!shortref fmap
376: "&#RS;B" null
377: "&#RS;B&#RE;" null
378: "&#RS;&#RE;" null
379: "_" thinsp
380: "~" nbsp
381: "]" rsqb
382: "#" num
383: "%" percnt
384: "^" circ
385: "{" lcub
386: "}" rcub
387: "|" verbar>
388:
389: <!usemap fmap f >
390:
391: <!element dm - - ((%fbutxt;)*)>
392: <!element eq - - ((%fbutxt;)*)>
393:
394: <!shortref dmmap
395: "&#RE;" space
396: "_" thinsp
397: "~" nbsp
398: "]" rsqb
399: "#" num
400: "%" percnt
401: "^" circ
402: "{" lcub
403: "}" rcub
404: "|" verbar>
405:
406: <!usemap dmmap (dm,eq)>
407: <!element fr - - (nu,de) >
408: <!element nu o o ((%fbutxt;)*) >
409: <!element de o o ((%fbutxt;)*) >
410: <!element ll o o ((%fbutxt;)*) >
411: <!element ul o o ((%fbutxt;)*) >
412: <!element opd - o ((%fbutxt;)*) >
413: <!element pr - - (ll,ul,opd?) >
414: <!element in - - (ll,ul,opd?) >
415: <!element sum - - (ll,ul,opd?) >
416: <!element lim - - (op,ll,ul,opd?) >
417: <!element op o o (%fcstxt;|rf|%fph;) -(tu) >
418: <!element root - - ((%fbutxt;)*) >
419: <!attlist root
420: n cdata "">
421: <!element col o o ((%fbutxt;)*) >
422: <!element row o o (col, (arc, col)*) >
423:
424: <!element ar - - (row, (arr, row)*) >
425: <!attlist ar
426: ca cdata #required >
427: <!element arr - o empty >
428: <!element arc - o empty >
429: <!entity arr "<arr>" >
430: <!entity arc "<arc>" >
431:
432: <!shortref arrmap
433: "&#RE;" space
434: "@" arr
435: "|" arc
436: "_" thinsp
437: "~" nbsp
438: "#" num
439: "%" percnt
440: "^" circ
441: "{" lcub
442: "}" rcub >
443:
444: <!usemap arrmap ar >
445: <!element sup - - ((%fbutxt;)*) -(tu) >
446: <!element inf - - ((%fbutxt;)*) -(tu) >
447: <!element unl - - ((%fbutxt;)*) >
448: <!element ovl - - ((%fbutxt;)*) >
449: <!element rf - o (#pcdata) >
450: <!element phr - o ((%fphtxt;)*) >
451: <!element v - o ((%fcstxt;)*)
452: -(tu|%limits;|%fbu;|%fph;) >
453: <!element fi - o (#pcdata) >
454: <!element tu - o empty >
455:
456: <!usemap global (rf,phr)>
457: <!element def - - (thtag?, p+) >
458: <!element prop - - (thtag?, p+) >
459: <!element lemma - - (thtag?, p+) >
460: <!element coroll - - (thtag?, p+) >
461: <!element proof - - (p+) >
462: <!element theorem - - (thtag?, p+) >
463: <!element thtag - - (%inline)>
464:
465: <!usemap global (def,prop,lemma,coroll,proof,theorem)>
466: <!usemap oneline thtag>
467: <!entity qtag '<sq>' >
468:
469: <!shortref global
470: "&#RS;B" null -- delete leading blanks --
471: -- '"' qtag --
472: "[" ftag
473: "~" nbsp
474: "_" lowbar
475: "#" num
476: "%" percnt
477: "^" circ
478: "{" lcub
479: "}" rcub
480: "|" verbar>
481:
482: <!usemap global birddoc>
483: <!element label - o empty>
484: <!attlist label id cdata #required>
485:
486: <!-- ref modified to have an optional name field HG -->
487: <!element ref - o empty>
488: <!attlist ref
489: id cdata #required
490: name cdata "&refnam">
491:
492: <!-- url entity added to have direct url references HG -->
493: <!element url - o empty>
494: <!attlist url
495: url cdata #required
496: name cdata "&urlnam" >
497:
498: <!-- htmlurl entity added to have quieter url references esr -->
499: <!element htmlurl - o empty>
500: <!attlist htmlurl
501: url cdata #required
502: name cdata "&urlnam" >
503:
504: <!element rfc - o empty>
505: <!attlist rfc
506: id cdata #required>
507:
508: <!element pageref - o empty>
509: <!attlist pageref
510: id cdata #required>
511: <!element comment - - (%inline)>
512: <!element x - - ((#pcdata | mc)*) >
513: <!usemap #empty x >
514:
515: <!-- Hacked by mdw to exclude abstract; abstract now part of titlepag -->
516: <!element article - -
517: (titlepag, header?,
518: toc?, lof?, lot?, p*, sect*,
519: (appendix, sect+)?, biblio?) +(footnote)>
520:
521: <!attlist article
522: opts cdata "null">
523:
524: <!-- Hacked by mdw to exclude abstract; abstract now part of titlepag -->
525: <!element report - -
526: (titlepag, header?, toc?, lof?, lot?, p*,
527: chapt*, (appendix, chapt+)?, biblio?) +(footnote)>
528:
529: <!attlist report
530: opts cdata "null">
531: <!element book - -
532: (titlepag, header?, toc?, lof?, lot?, p*, chapt*,
533: (appendix, chapt+)?, biblio?) +(footnote) >
534:
535: <!attlist book
536: opts cdata "null">
537:
538: <!-- Hacked by mdw, abstract now part of titlepag -->
539: <!element titlepag o o (progdoc?, title, author, date?, abstract?)>
540: <!element title - o (%inline, subtitle?) +(newline)>
541: <!element subtitle - o (%inline)>
542: <!usemap oneline titlepag>
543: <!element author - o (name, thanks?, inst?,
544: (and, name, thanks?, inst?)*)>
545: <!element name o o (%inline) +(newline)>
546: <!element and - o empty>
547: <!element thanks - o (%inline)>
548: <!element inst - o (%inline) +(newline)>
549: <!element date - o (#pcdata) >
550:
551: <!usemap global thanks>
552:
553: <!element newline - o empty >
554: <!entity nl "<newline>">
555:
556: <!element progdoc - o empty>
557:
558: <!-- Hacked by mdw -->
559: <!element abstract - o (%inline)>
560: <!usemap oneline abstract>
561:
562:
563: <!element toc - o empty>
564: <!element lof - o empty>
565: <!element lot - o empty>
566: <!element header - - (lhead, rhead) >
567: <!element lhead - o (%inline)>
568: <!element rhead - o (%inline)>
569: <!entity % sect "heading, header?, p* " >
570: <!element heading o o (%inline)>
571: <!element chapt - o (%sect, sect*) +(footnote)>
572: <!element sect - o (%sect, sect1*) +(footnote)>
573: <!element sect1 - o (%sect, sect2*) +(footnote)>
574: <!element sect2 - o (%sect, sect3*)>
575: <!element sect3 - o (%sect, sect4*)>
576: <!element sect4 - o (%sect)>
577: <!usemap oneline (chapt,sect,sect1,sect2,sect3,sect4)>
578: <!element appendix - o empty >
579: <!element footnote - - (%inline)>
580: <!usemap global footnote>
581: <!element cite - o empty>
582: <!attlist cite
583: id cdata #required>
584:
585: <!element ncite - o empty>
586: <!attlist ncite
587: id cdata #required
588: note cdata #required>
589:
590: <!element file - - (#pcdata)>
591:
592: <!element idx - - (#pcdata)>
593: <!element cdx - - (#pcdata)>
594: <!element nidx - - (#pcdata)>
595: <!element ncdx - - (#pcdata)>
596:
597: <!element biblio - o empty>
598: <!attlist biblio
599: style cdata "birddoc"
600: files cdata "">
601: <!element slides - - (slide*) >
602:
603: <!attlist slides
604: opts cdata "null">
605: <!element slide - o (title?, p+) >
606: <!entity % addr "(address?, email?, phone?, fax?)" >
607:
608: <!element letter - -
609: (from, %addr, to, %addr, cc?, subject?, sref?, rref?,
610: rdate?, opening, p+, closing, encl?, ps?)>
611:
612: <!attlist letter
613: opts cdata "null">
614:
615: <!element from - o (#pcdata) >
616: <!element to - o (#pcdata) >
617:
618: <!usemap oneline (from,to)>
619:
620: <!element address - o (#pcdata) +(newline) >
621: <!element email - o (#pcdata) >
622: <!element phone - o (#pcdata) >
623: <!element fax - o (#pcdata) >
624:
625: <!element subject - o (%inline;) >
626: <!element sref - o (#pcdata) >
627: <!element rref - o (#pcdata) >
628: <!element rdate - o (#pcdata) >
629:
630: <!element opening - o (%inline;) >
631: <!usemap oneline opening>
632:
633: <!element closing - o (%inline;) >
634: <!element cc - o (%inline;) +(newline) >
635: <!element encl - o (%inline;) +(newline) >
636:
637: <!element ps - o (p+) >
638:
639: <!element telefax - -
640: (from, %addr, to, address, email?,
641: phone?, fax, cc?, subject?,
642: opening, p+, closing, ps?)>
643:
644: <!attlist telefax
645: opts cdata "null"
646: length cdata "2">
647:
648: <!element notes - - (title?, p+) >
649: <!attlist notes
650: opts cdata "null" >
651: <!element manpage - - (sect1*)
652: -(sect2 | f | %mathpar | figure | tabular |
653: table | %xref | %thrm )>
654:
655:
656: <!attlist manpage
657: opts cdata "null"
658: title cdata ""
659: sectnum cdata "1" >
660: <!shortref manpage
661: "&#RS;B" null
662: -- '"' qtag --
663: "[" ftag
664: "~" nbsp
665: "_" lowbar
666: "#" num
667: "%" percnt
668: "^" circ
669: "{" lcub
670: "}" rcub
671: "|" verbar>
672:
673: <!usemap manpage manpage >
674:
675: <!-- ================================================= -->
676: <!-- end of LINUXDOC DTD -->
677: <!--
678: Local Variables:
679: mode: sgml
680: End: -->
681: <!-- ================================================= -->
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>