Statistics
| Branch: | Revision:

iof-bird / bird-2.0.1 / doc / sbase / dtd / birddoc.dtd @ 6b3f1a54

History | View | Annotate | Download (17.2 KB)

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  '&Auml;' >
141
<!entity   ae  '&auml;' >
142
<!entity   Oe  '&Ouml;' >
143
<!entity   oe  '&ouml;' >
144
<!entity   Ue  '&Uuml;' >
145
<!entity   ue  '&uuml;' >
146
<!entity   sz  '&szlig;' >
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
<!-- ================================================= -->