1
<!-- $Id: texinfo.dtd,v 1.1 2001/05/21 17:36:22 karl Exp $
2
Document Type Definition for Texinfo
3
************************************
7
Author: Philippe Martin (feloy@free.fr)
9
Karl Eichwalder (keichwa@gmx.net)
13
Version 0.2 - 2001-05-08
14
Version 0.1 - 2001-05-07
18
Copyright (C) 2001 Free Software Foundation, Inc.
20
This program is free software; you can redistribute it and/or modify
21
it under the terms of the GNU General Public License as published by
22
the Free Software Foundation; either version 2, or (at your option)
25
This program is distributed in the hope that it will be useful,
26
but WITHOUT ANY WARRANTY; without even the implied warranty of
27
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
28
GNU General Public License for more details.
30
You should have received a copy of the GNU General Public License
31
along with this program; if not, write to the Free Software Foundation,
32
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
37
<!-- Meta-information -->
38
<!ENTITY % metainformation "setfilename | settitle | titlefont | dircategory">
42
<!ENTITY % block "menu | para | quotation | example | smallexample | lisp
43
| smalllisp | cartouche | format | smallformat | display
44
| smalldisplay | itemize | enumerate | sp | center | group
45
| table | multitable">
49
<!ENTITY % section.level1 "top | chapter | unnumbered | appendix
50
| majorheading | chapheading">
52
<!ENTITY % section.level2 "section | unnumberedsec | appendixsec | heading">
54
<!ENTITY % section.level3 "subsection | unnumberedsubsec | appendixsubsec
57
<!ENTITY % section.level4 "subsubsection | unnumberedsubsubsec
58
| appendixsubsubsec | subsubheading">
60
<!ENTITY % section.all "%section.level1; | %section.level2; | %section.level3;
64
<!ENTITY % section.level1.content "(%block;
70
<!ENTITY % section.level2.content "(%block;
72
| %section.level4;)*">
74
<!ENTITY % section.level3.content "(%block;
75
| %section.level4;)*">
77
<!ENTITY % section.level4.content "(%block;)*">
82
<!ENTITY % Inline.emphasize "strong | emph">
83
<!ENTITY % Inline.smallcaps "sc">
84
<!ENTITY % Inline.fonts "i | b | tt | r">
85
<!ENTITY % Inline.markup "code | dfn | cite | key | kbd | var | acronym | url">
86
<!ENTITY % Inline.reference "xref | inforef | indexterm | email | uref">
88
<!ENTITY % Inline.phrase
89
"%Inline.emphasize; | %Inline.smallcaps; | %Inline.fonts;
90
| %Inline.markup; | %Inline.reference; ">
97
<!-- TOP Level Element -->
98
<!-- ***************** -->
99
<!ELEMENT texinfo ((%metainformation; | node | %block;)* )>
101
<!-- meta-information -->
102
<!ELEMENT setfilename (#PCDATA)>
103
<!ELEMENT settitle (#PCDATA)>
104
<!ELEMENT titlefont (#PCDATA)>
105
<!ELEMENT dircategory (#PCDATA)>
109
<!ELEMENT node (nodename, nodenext?, nodeprev?, nodeup?,
110
(para | menu | %section.all;)*) >
112
<!ELEMENT nodename (#PCDATA)>
113
<!ELEMENT nodenext (#PCDATA)>
114
<!ELEMENT nodeprev (#PCDATA)>
115
<!ELEMENT nodeup (#PCDATA)>
120
<!ELEMENT top (title?, %section.level1.content;)>
122
<!ELEMENT chapter (title?, %section.level1.content;)>
123
<!ELEMENT section (title?, %section.level2.content;)>
124
<!ELEMENT subsection (title?, %section.level3.content;)>
125
<!ELEMENT subsubsection (title?, %section.level4.content;)>
127
<!ELEMENT unnumbered (title?, %section.level1.content;)>
128
<!ELEMENT unnumberedsec (title?, %section.level2.content;)>
129
<!ELEMENT unnumberedsubsec (title?, %section.level3.content;)>
130
<!ELEMENT unnumberedsubsubsec (title?, %section.level4.content;)>
132
<!ELEMENT appendix (title?, %section.level1.content;)>
133
<!ELEMENT appendixsec (title?, %section.level2.content;)>
134
<!ELEMENT appendixsubsec (title?, %section.level3.content;)>
135
<!ELEMENT appendixsubsubsec (title?, %section.level4.content;)>
137
<!ELEMENT majorheading (title?, %section.level1.content;)>
138
<!ELEMENT chapheading (title?, %section.level1.content;)>
139
<!ELEMENT heading (title?, %section.level2.content;)>
140
<!ELEMENT subheading (title?, %section.level3.content;)>
141
<!ELEMENT subsubheading (title?, %section.level4.content;)>
143
<!ELEMENT title (#PCDATA | %Inline.phrase; | footnote)*>
145
<!-- BLOCK Elements -->
146
<!-- ************** -->
148
<!ELEMENT quotation (#PCDATA | %block; | %Inline.phrase;)*>
149
<!ELEMENT example (#PCDATA | %block; | %Inline.phrase;)*>
150
<!ELEMENT smallexample (#PCDATA | %block; | %Inline.phrase;)*>
151
<!ELEMENT lisp (#PCDATA | %block; | %Inline.phrase;)*>
152
<!ELEMENT smalllisp (#PCDATA | %block; | %Inline.phrase;)*>
153
<!ELEMENT cartouche (#PCDATA | %block; | %Inline.phrase;)*>
154
<!ELEMENT format (#PCDATA | %block; | %Inline.phrase;)*>
155
<!ELEMENT smallformat (#PCDATA | %block; | %Inline.phrase;)*>
156
<!ELEMENT display (#PCDATA | %block; | %Inline.phrase;)*>
157
<!ELEMENT smalldisplay (#PCDATA | %block; | %Inline.phrase;)*>
158
<!ELEMENT center (#PCDATA | %block; | %Inline.phrase;)*>
159
<!ELEMENT group (#PCDATA | %block; | %Inline.phrase;)*>
160
<!ELEMENT image (#PCDATA)>
162
<!ELEMENT para (#PCDATA | %Inline.phrase; | footnote)*>
164
<!ELEMENT menu ((menuentry | para)*)>
165
<!ELEMENT menuentry (menunode?, menutitle?, menucomment?)>
166
<!ELEMENT menunode (#PCDATA)>
167
<!ELEMENT menutitle (#PCDATA)>
168
<!ELEMENT menucomment (#PCDATA | para)*>
171
<!ELEMENT itemize (itemfunction, (item | itemize | enumerate | indexterm)*)>
172
<!ELEMENT enumerate (enumarg?, (item | itemize | enumerate)*)>
174
first CDATA #IMPLIED>
176
<!ELEMENT item (%block;)*>
177
<!ELEMENT enumarg (#PCDATA)>
179
<!ELEMENT itemfunction (#PCDATA | %Inline.phrase;)*>
182
<!ELEMENT table (tableitem | indexterm)+>
183
<!ELEMENT tableitem (tableterm+, item)>
184
<!ELEMENT tableterm (#PCDATA | %Inline.phrase;)*>
186
<!ELEMENT multitable (columnfraction*, row*)>
187
<!ELEMENT columnfraction (#PCDATA)>
188
<!ELEMENT row (entry*)>
189
<!ELEMENT entry (#PCDATA | %Inline.phrase;)*>
191
<!-- INLINE Elements -->
192
<!-- *************** -->
195
<!ELEMENT strong (#PCDATA | %Inline.phrase;)*>
196
<!ELEMENT emph (#PCDATA | %Inline.phrase;)*>
199
<!ELEMENT sc (#PCDATA | %Inline.phrase;)*>
202
<!ELEMENT i (#PCDATA | %Inline.phrase;)*>
203
<!ELEMENT b (#PCDATA | %Inline.phrase;)*>
204
<!ELEMENT tt (#PCDATA | %Inline.phrase;)*>
205
<!ELEMENT r (#PCDATA | %Inline.phrase;)*>
206
<!ELEMENT notfixedwidth (#PCDATA | %Inline.phrase;)*>
209
<!ELEMENT code (#PCDATA | %Inline.phrase;)*>
210
<!ELEMENT dfn (#PCDATA | %Inline.phrase;)*>
211
<!ELEMENT cite (#PCDATA | %Inline.phrase;)*>
212
<!ELEMENT key (#PCDATA | %Inline.phrase;)*>
213
<!ELEMENT kbd (#PCDATA | %Inline.phrase;)*>
214
<!ELEMENT var (#PCDATA | %Inline.phrase;)*>
215
<!ELEMENT acronym (#PCDATA | %Inline.phrase;)*>
216
<!ELEMENT url (#PCDATA | %Inline.phrase;)*>
219
<!ELEMENT anchor EMPTY>
223
<!ELEMENT xref (xrefnodename | xrefinfoname | xrefinfofile
224
| xrefprintedname | xrefprinteddesc)*>
225
<!ELEMENT xrefnodename (#PCDATA | %Inline.phrase;)*>
226
<!ELEMENT xrefinfoname (#PCDATA | %Inline.phrase;)*>
227
<!ELEMENT xrefinfofile (#PCDATA | %Inline.phrase;)*>
228
<!ELEMENT xrefprintedname (#PCDATA | %Inline.phrase;)*>
229
<!ELEMENT xrefprinteddesc (#PCDATA | %Inline.phrase;)*>
231
<!ELEMENT inforef (inforefnodename | inforefrefname | inforefinfoname)*>
232
<!ELEMENT inforefnodename (#PCDATA | %Inline.phrase;)*>
233
<!ELEMENT inforefrefname (#PCDATA | %Inline.phrase;)*>
234
<!ELEMENT inforefinfoname (#PCDATA | %Inline.phrase;)*>
236
<!ELEMENT indexterm (#PCDATA | %Inline.phrase;)*>
238
INDEX CDATA #IMPLIED>
240
<!ELEMENT email (emailaddress, emailname?)>
241
<!ELEMENT emailaddress (#PCDATA | %Inline.phrase;)*>
242
<!ELEMENT emailname (#PCDATA | %Inline.phrase;)*>
244
<!ELEMENT uref (urefurl, urefdesc?, urefreplacement?)>
245
<!ELEMENT urefurl (#PCDATA | %Inline.phrase;)*>
246
<!ELEMENT urefdesc (#PCDATA | %Inline.phrase;)*>
247
<!ELEMENT urefreplacement (#PCDATA | %Inline.phrase;)*>
249
<!ELEMENT footnote (para)>
254
<!ENTITY ellipsis "">
258
<!ENTITY copyright "">
260
<!ENTITY linebreak "">
339
<!-- fixxme: not yet classified -->
341
<!ELEMENT sp (#PCDATA)>
343
lines CDATA #IMPLIED>
344
<!ELEMENT printindex (#PCDATA)>