texinfo.dtd 44 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419
  1. <!-- $Id$
  2. Document Type Definition for Texinfo XML output (the '-'-xml option).
  3. Copyright 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
  4. 2011, 2012, 2013, 2014, 2015, 2016 Free Software Foundation, Inc.
  5. Copying and distribution of this file, with or without modification,
  6. are permitted in any medium without royalty provided the copyright
  7. notice and this notice are preserved.
  8. As soon as this file is nontrivially modified, update
  9. TEXINFO_DTD_VERSION in configure.ac (if not already done).
  10. See comments there for explanation.
  11. Email bug-texinfo@gnu.org with any discussion.
  12. (Original author: Philippe Martin.)
  13. -->
  14. <!-- * ENTITIES * -->
  15. <!-- Meta-information -->
  16. <!-- copying | titlepage could be there too -->
  17. <!ENTITY % metainformation "setfilename | settitle | dircategory | direntry
  18. | hyphenation
  19. | documentdescription
  20. | shorttitlepage">
  21. <!ENTITY % variable.cmds "set | clear">
  22. <!-- Unique options -->
  23. <!ENTITY % unique.option.cmds "novalidate | setcontentsaftertitlepage
  24. | setshortcontentsaftertitlepage | documentencoding
  25. | everyheadingmarks | everyfootingmarks | evenheadingmarks | oddheadingmarks
  26. | evenfootingmarks | oddfootingmarks | fonttextsize | pagesizes
  27. | setchapternewpage | footnotestyle | finalout
  28. | allowcodebreaks | exampleindent | afourpaper
  29. | afivepaper | afourlatex | afourwide | headings
  30. | everyheading | everyfooting | evenheading | evenfooting | oddheading
  31. | oddfooting | smallbook | cropmarks">
  32. <!-- Global options in the main text -->
  33. <!ENTITY % global.option.cmds "synindex | syncodeindex
  34. | defindex | defcodeindex | definfoenclose | alias">
  35. <!-- Options -->
  36. <!ENTITY % multiple.option.cmds "frenchspacing | documentlanguage
  37. | %variable.cmds; | kbdinputstyle | paragraphindent
  38. | firstparagraphindent | urefbreakstyle | xrefautomaticsectiontitle
  39. | deftypefnnewline
  40. | codequoteundirected | codequotebacktick | raisesections
  41. | lowersections | clickstyle">
  42. <!ENTITY % option.cmds "%unique.option.cmds; | %global.option.cmds;
  43. | %multiple.option.cmds;">
  44. <!-- ToC -->
  45. <!ENTITY % toc "contents | shortcontents | summarycontents">
  46. <!-- Title page -->
  47. <!ENTITY % titlepage.cmds "author | title | subtitle">
  48. <!-- index entry commands -->
  49. <!ENTITY % indexentry.cmds "cindex | findex | kindex | pindex | tindex
  50. | vindex | indexcommand">
  51. <!-- API definition commands -->
  52. <!ENTITY % def.cmds "deffn | defvr | deftypefn | deftypeop | deftypevr
  53. | defcv | deftypecv | defop | deftp | defun | defmac
  54. | defspec | defvar | defopt | deftypefun | deftypevar
  55. | defivar | deftypeivar | defmethod | deftypemethod">
  56. <!ENTITY % raw.cmds "html | tex | docbook | xml | macro | rmacro | ignore">
  57. <!-- Commands that appear everywhere, both with block and in paragraphs -->
  58. <!-- include is in general absent, since it is replaced, but it is
  59. present if the file was not found -->
  60. <!ENTITY % ubiquitous.cmds "sp | anchor | indent | noindent | %raw.cmds;
  61. | %option.cmds; | errormsg | unmacro | include
  62. | %indexentry.cmds; | refill | quote-arg | allow-recursion">
  63. <!-- Block -->
  64. <!ENTITY % block "menu | para | pre | quotation | smallquotation
  65. | example | smallexample | lisp | smalllisp
  66. | cartouche | float | format | smallformat
  67. | display | smalldisplay | copying | titlepage
  68. | raggedright | flushleft | flushright
  69. | itemize | enumerate | titlefont | center | group
  70. | table | vtable | ftable | multitable | definition
  71. | image
  72. | %def.cmds;
  73. | %ubiquitous.cmds;
  74. | verbatim | verbatiminclude | insertcopying | page | need
  75. | vskip
  76. | listoffloats">
  77. <!-- API definition line -->
  78. <!ENTITY % definition.args "defcategory | deffunction | defvariable | defparam
  79. | defdelimiter | deftype | defparamtype | defdatatype
  80. | defclass | defclassvar | defoperation">
  81. <!-- Headings -->
  82. <!ENTITY % heading.cmds "majorheading | chapheading | heading | subheading
  83. | subsubheading">
  84. <!-- Language codes -->
  85. <!ENTITY % languagecodes "aa|ab|af|am|ar|as|ay|az|ba|be|bg|bh|bi|bn|bo|br|ca|co|cs|cy|da|de|dz|el|en|eo|es|et|eu|fa|fi|fj|fo|fr|fy|ga|gd|gl|gn|gu|ha|he|hi|hr|hu|hy|ia|id|ie|ik|is|it|iu|ja|jw|ka|kk|kl|km|kn|ko|ks|ku|ky|la|ln|lo|lt|lv|mg|mi|mk|ml|mn|mo|mr|ms|mt|my|na|ne|nl|no|oc|om|or|pa|pl|ps|pt|qu|rm|rn|ro|ru|rw|sa|sd|sg|sh|si|sk|sl|sm|sn|so|sq|sr|ss|st|su|sv|sw|ta|te|tg|th|ti|tk|tl|tn|to|tr|ts|tt|tw|ug|uk|ur|uz|vi|vo|wo|xh|yi|yo|za|zh|zu">
  86. <!-- Sectioning -->
  87. <!ENTITY % section.level1 "top | part | chapter | unnumbered | centerchap | appendix">
  88. <!ENTITY % section.level2 "section | unnumberedsec | appendixsec">
  89. <!ENTITY % section.level3 "subsection | unnumberedsubsec | appendixsubsec">
  90. <!ENTITY % section.level4 "subsubsection | unnumberedsubsubsec
  91. | appendixsubsubsec">
  92. <!ENTITY % section.all "%section.level1; | %section.level2; | %section.level3;
  93. | %section.level4;">
  94. <!-- toplevel content, not in copying nor footnote -->
  95. <!ENTITY % main.content "%block; | %toc; | node | %heading.cmds;
  96. | printindex">
  97. <!ENTITY % section.level0.content "(%main.content;
  98. | %section.level1;
  99. | %section.level2;
  100. | %section.level3;
  101. | %section.level4;)*">
  102. <!ENTITY % section.level1.content "(%main.content;
  103. | %section.level2;
  104. | %section.level3;
  105. | %section.level4;)*">
  106. <!ENTITY % section.level2.content "(%main.content;
  107. | %section.level3;
  108. | %section.level4;)*">
  109. <!ENTITY % section.level3.content "(%main.content;
  110. | %section.level4;)*">
  111. <!ENTITY % section.level4.content "(%main.content;)*">
  112. <!-- Inline -->
  113. <!ENTITY % Inline.emphasize "strong | emph">
  114. <!ENTITY % Inline.fonts "b | i | r | sansserif | slanted | t
  115. | sc">
  116. <!ENTITY % Inline.footnote "footnote">
  117. <!ENTITY % Inline.markup "code | command | env | file | option | samp | verb
  118. | dfn | cite | key | kbd | var | acronym | abbr
  119. | indicateurl | w | asis | sub | sup ">
  120. <!ENTITY % Inline.math "math | dmn">
  121. <!ENTITY % Inline.reference "xref | ref | pxref | inforef | email | uref | url">
  122. <!ENTITY % Inline.misc "click | clicksequence | logo | punct | spacecmd | today
  123. | linebreak | accent | dotless | ctrl | inlineraw
  124. | inlinefmt | inlinefmtifelse | inlineifclear
  125. | inlineifset | infoenclose | noeos | formfeed ">
  126. <!-- on lines -->
  127. <!ENTITY % Inline.linetext "%Inline.emphasize; | %Inline.misc; | %Inline.fonts;
  128. | %Inline.markup; | %Inline.math; | %Inline.reference;
  129. | %Inline.footnote;" >
  130. <!ENTITY % Inline.line "%Inline.linetext; | image">
  131. <!ENTITY % Inline.fullline "%Inline.line; | titlefont | anchor">
  132. <!-- in paragraphs -->
  133. <!ENTITY % Inline.phrase
  134. "%Inline.line; | %ubiquitous.cmds;">
  135. <!-- in raw (everything except sectioning commands) -->
  136. <!ENTITY % Raw.content "#PCDATA | %titlepage.cmds; | %block; | %heading.cmds;
  137. | %Inline.linetext; | exdent | %toc; | printindex
  138. | %metainformation;">
  139. <!-- arguments/attribute values. Many are missing -->
  140. <!ENTITY % onoff "on|off">
  141. <!ENTITY % spacetype "spc|tab|nl">
  142. <!ENTITY % topbottom "top|bottom">
  143. <!ENTITY % zeroone "0|1">
  144. <!-- ubiquitous attribute -->
  145. <!ENTITY % spacesattr
  146. "spaces CDATA #IMPLIED">
  147. <!ENTITY % lineattr
  148. "line CDATA #IMPLIED">
  149. <!ENTITY % bracketedattr
  150. "bracketed (%onoff;) #IMPLIED">
  151. <!-- block commands that have spaces also have endspaces -->
  152. <!-- this is also used for commands without arguments
  153. when they have a @comment on their line -->
  154. <!ENTITY % spacesblockattr
  155. "%spacesattr;
  156. endspaces CDATA #IMPLIED">
  157. <!-- ELEMENTS -->
  158. <!-- TOP Level Element -->
  159. <!ELEMENT texinfo (filename?, preamble?, (%metainformation;
  160. | %section.all; | %main.content;)*, bye?)>
  161. <!ATTLIST texinfo xml:lang (%languagecodes;) 'en'>
  162. <!-- meta-information -->
  163. <!ELEMENT filename EMPTY>
  164. <!ATTLIST filename
  165. file CDATA #IMPLIED>
  166. <!ELEMENT setfilename (#PCDATA | %Inline.line;)*>
  167. <!ATTLIST setfilename
  168. %spacesattr;
  169. file CDATA #IMPLIED>
  170. <!ELEMENT settitle (#PCDATA | %Inline.line;)*>
  171. <!ATTLIST settitle
  172. %spacesattr;>
  173. <!ELEMENT shorttitlepage (#PCDATA | %Inline.line;)*>
  174. <!ATTLIST shorttitlepage
  175. %spacesattr;>
  176. <!ELEMENT dircategory (#PCDATA | %Inline.line;)*>
  177. <!ATTLIST dircategory
  178. %spacesattr;>
  179. <!ELEMENT set (#PCDATA)>
  180. <!ATTLIST set
  181. %lineattr;
  182. name CDATA #REQUIRED>
  183. <!ELEMENT clear EMPTY>
  184. <!ATTLIST clear
  185. %lineattr;
  186. name CDATA #REQUIRED>
  187. <!ELEMENT unmacro EMPTY>
  188. <!ATTLIST unmacro
  189. %lineattr;
  190. name CDATA #REQUIRED>
  191. <!ELEMENT definfoenclose EMPTY>
  192. <!ATTLIST definfoenclose
  193. %lineattr;
  194. command NMTOKEN #REQUIRED
  195. open CDATA #IMPLIED
  196. close CDATA #IMPLIED>
  197. <!ELEMENT alias EMPTY>
  198. <!ATTLIST alias
  199. %lineattr;
  200. new NMTOKEN #REQUIRED
  201. existing NMTOKEN #REQUIRED>
  202. <!ELEMENT clickstyle (#PCDATA)>
  203. <!ATTLIST clickstyle
  204. %lineattr;
  205. command NMTOKEN #REQUIRED>
  206. <!-- preamble -->
  207. <!ELEMENT preamble (#PCDATA)>
  208. <!-- ToC -->
  209. <!ELEMENT contents EMPTY>
  210. <!ATTLIST contents
  211. %lineattr;>
  212. <!ELEMENT shortcontents EMPTY>
  213. <!ATTLIST shortcontents
  214. %lineattr;>
  215. <!ELEMENT summarycontents EMPTY>
  216. <!ATTLIST summarycontents
  217. %lineattr;>
  218. <!-- Global unique options -->
  219. <!ELEMENT novalidate EMPTY>
  220. <!ATTLIST novalidate
  221. %lineattr;>
  222. <!ELEMENT setcontentsaftertitlepage EMPTY>
  223. <!ATTLIST setcontentsaftertitlepage
  224. %lineattr;>
  225. <!ELEMENT setshortcontentsaftertitlepage EMPTY>
  226. <!ATTLIST setshortcontentsaftertitlepage
  227. %lineattr;>
  228. <!ELEMENT documentencoding (#PCDATA)>
  229. <!ATTLIST documentencoding
  230. %spacesattr;
  231. encoding CDATA #REQUIRED>
  232. <!ELEMENT everyheadingmarks EMPTY>
  233. <!ATTLIST everyheadingmarks
  234. %lineattr;
  235. value (%topbottom;) #REQUIRED>
  236. <!ELEMENT everyfootingmarks EMPTY>
  237. <!ATTLIST everyfootingmarks
  238. %lineattr;
  239. value (%topbottom;) #REQUIRED>
  240. <!ELEMENT evenheadingmarks EMPTY>
  241. <!ATTLIST evenheadingmarks
  242. %lineattr;
  243. value (%topbottom;) #REQUIRED>
  244. <!ELEMENT oddheadingmarks EMPTY>
  245. <!ATTLIST oddheadingmarks
  246. %lineattr;
  247. value (%topbottom;) #REQUIRED>
  248. <!ELEMENT evenfootingmarks EMPTY>
  249. <!ATTLIST evenfootingmarks
  250. %lineattr;
  251. value (%topbottom;) #REQUIRED>
  252. <!ELEMENT oddfootingmarks EMPTY>
  253. <!ATTLIST oddfootingmarks
  254. %lineattr;
  255. value (%topbottom;) #REQUIRED>
  256. <!-- "10|11" -->
  257. <!ELEMENT fonttextsize EMPTY>
  258. <!ATTLIST fonttextsize
  259. %lineattr;
  260. value CDATA #REQUIRED>
  261. <!ELEMENT pagesizes (#PCDATA)>
  262. <!ATTLIST pagesizes
  263. %spacesattr;>
  264. <!ELEMENT setchapternewpage EMPTY>
  265. <!-- "off|on|odd" -->
  266. <!ATTLIST setchapternewpage
  267. %lineattr;
  268. value CDATA #REQUIRED>
  269. <!ELEMENT footnotestyle EMPTY>
  270. <!-- "end|separate" -->
  271. <!ATTLIST footnotestyle
  272. %lineattr;
  273. value CDATA #REQUIRED>
  274. <!ELEMENT allowcodebreaks EMPTY>
  275. <!-- "false|true" -->
  276. <!ATTLIST allowcodebreaks
  277. %lineattr;
  278. value CDATA #REQUIRED>
  279. <!ELEMENT exampleindent EMPTY>
  280. <!ATTLIST exampleindent
  281. %lineattr;
  282. value CDATA #REQUIRED>
  283. <!ELEMENT afourpaper EMPTY>
  284. <!ATTLIST afourpaper
  285. %lineattr;>
  286. <!ELEMENT afivepaper EMPTY>
  287. <!ATTLIST afivepaper
  288. %lineattr;>
  289. <!ELEMENT afourlatex EMPTY>
  290. <!ATTLIST afourlatex
  291. %lineattr;>
  292. <!ELEMENT afourwide EMPTY>
  293. <!ATTLIST afourwide
  294. %lineattr;>
  295. <!ELEMENT finalout EMPTY>
  296. <!ATTLIST finalout
  297. %lineattr;>
  298. <!ELEMENT headings EMPTY>
  299. <!-- "off|on|single|double|singleafter|doubleafter" -->
  300. <!ATTLIST headings
  301. %lineattr;
  302. value CDATA #REQUIRED>
  303. <!ELEMENT everyheading (#PCDATA)>
  304. <!ELEMENT everyfooting (#PCDATA)>
  305. <!ELEMENT evenheading (#PCDATA)>
  306. <!ELEMENT evenfooting (#PCDATA)>
  307. <!ELEMENT oddheading (#PCDATA)>
  308. <!ELEMENT oddfooting (#PCDATA)>
  309. <!ELEMENT vskip (#PCDATA)>
  310. <!ELEMENT smallbook EMPTY>
  311. <!ATTLIST smallbook
  312. %lineattr;>
  313. <!ELEMENT cropmarks EMPTY>
  314. <!ATTLIST cropmarks
  315. %lineattr;>
  316. <!-- Global options -->
  317. <!ELEMENT documentlanguage (#PCDATA)>
  318. <!ATTLIST documentlanguage
  319. %spacesattr;
  320. xml:lang (%languagecodes;) 'en'>
  321. <!ELEMENT frenchspacing (#PCDATA)> <!-- must be on or off -->
  322. <!ATTLIST frenchspacing
  323. %lineattr;
  324. value (%onoff;) 'off'>
  325. <!ELEMENT kbdinputstyle EMPTY>
  326. <!-- "code|example|distinct" -->
  327. <!ATTLIST kbdinputstyle
  328. %lineattr;
  329. value CDATA #REQUIRED>
  330. <!ELEMENT paragraphindent EMPTY>
  331. <!ATTLIST paragraphindent
  332. %lineattr;
  333. value CDATA #REQUIRED>
  334. <!ELEMENT firstparagraphindent EMPTY>
  335. <!ATTLIST firstparagraphindent
  336. %lineattr;
  337. value CDATA #REQUIRED>
  338. <!ELEMENT urefbreakstyle EMPTY>
  339. <!-- "after|before|none" -->
  340. <!ATTLIST urefbreakstyle
  341. %lineattr;
  342. value CDATA #REQUIRED>
  343. <!ELEMENT xrefautomaticsectiontitle EMPTY>
  344. <!ATTLIST xrefautomaticsectiontitle
  345. %lineattr;
  346. value (%onoff;) #REQUIRED>
  347. <!ELEMENT deftypefnnewline EMPTY>
  348. <!ATTLIST deftypefnnewline
  349. %lineattr;
  350. value (%onoff;) #REQUIRED>
  351. <!ELEMENT codequoteundirected EMPTY>
  352. <!ATTLIST codequoteundirected
  353. %lineattr;
  354. value (%onoff;) #REQUIRED>
  355. <!ELEMENT codequotebacktick EMPTY>
  356. <!ATTLIST codequotebacktick
  357. %lineattr;
  358. value (%onoff;) #REQUIRED>
  359. <!ELEMENT raisesections EMPTY>
  360. <!ATTLIST raisesections
  361. %lineattr;>
  362. <!ELEMENT lowersections EMPTY>
  363. <!ATTLIST lowersections
  364. %lineattr;>
  365. <!-- Titlepage and copying -->
  366. <!ELEMENT copying (%block; | %heading.cmds;)*>
  367. <!ATTLIST copying
  368. %spacesblockattr;>
  369. <!ELEMENT insertcopying EMPTY>
  370. <!ELEMENT titlepage (%titlepage.cmds; | %block; | %heading.cmds;)*>
  371. <!ATTLIST titlepage
  372. %spacesblockattr;>
  373. <!ELEMENT author (#PCDATA | %Inline.line;)*>
  374. <!ATTLIST author
  375. %spacesattr;>
  376. <!ELEMENT title (#PCDATA | %Inline.line;)*>
  377. <!ATTLIST title
  378. %spacesattr;>
  379. <!ELEMENT subtitle (#PCDATA | %Inline.line;)*>
  380. <!ATTLIST subtitle
  381. %spacesattr;>
  382. <!-- Formatting -->
  383. <!ELEMENT sp EMPTY>
  384. <!ATTLIST sp
  385. %lineattr;
  386. value CDATA #IMPLIED>
  387. <!ELEMENT page EMPTY>
  388. <!ATTLIST page
  389. %lineattr;>
  390. <!ELEMENT need EMPTY>
  391. <!ATTLIST need
  392. %lineattr;
  393. value CDATA #REQUIRED>
  394. <!ELEMENT indent EMPTY>
  395. <!ELEMENT noindent EMPTY>
  396. <!-- emacs-page
  397. <!ELEMENT node (nodename, nodenext?, nodeprev?, nodeup?,
  398. (%section.all; | %main.content;)*) >
  399. Nodes -->
  400. <!ELEMENT node (nodename, nodenext?, nodeprev?, nodeup?)>
  401. <!ATTLIST node
  402. %spacesattr;
  403. name CDATA #IMPLIED>
  404. <!ELEMENT nodename (#PCDATA | %Inline.line;)*>
  405. <!ATTLIST nodename
  406. trailingspaces CDATA #IMPLIED>
  407. <!ELEMENT nodenext (#PCDATA | %Inline.line;)*>
  408. <!ATTLIST nodenext
  409. %spacesattr;
  410. trailingspaces CDATA #IMPLIED
  411. automatic (%onoff;) 'off'>
  412. <!ELEMENT nodeprev (#PCDATA | %Inline.line;)*>
  413. <!ATTLIST nodeprev
  414. %spacesattr;
  415. trailingspaces CDATA #IMPLIED
  416. automatic (%onoff;) 'off'>
  417. <!ELEMENT nodeup (#PCDATA | %Inline.line;)*>
  418. <!ATTLIST nodeup
  419. %spacesattr;
  420. trailingspaces CDATA #IMPLIED
  421. automatic (%onoff;) 'off'>
  422. <!ENTITY % sectionsattr
  423. "%spacesattr;
  424. originalcommand CDATA #IMPLIED">
  425. <!-- Sectioning -->
  426. <!ELEMENT top (sectiontitle?, (%section.level0.content;))>
  427. <!ATTLIST top
  428. %sectionsattr;>
  429. <!ELEMENT part (sectiontitle?, (%section.level0.content;))>
  430. <!ATTLIST part
  431. %sectionsattr;>
  432. <!ELEMENT chapter (sectiontitle?, (%section.level1.content;))>
  433. <!ATTLIST chapter
  434. %sectionsattr;>
  435. <!ELEMENT section (sectiontitle?, (%section.level2.content;))>
  436. <!ATTLIST section
  437. %sectionsattr;>
  438. <!ELEMENT subsection (sectiontitle?, (%section.level3.content;))>
  439. <!ATTLIST subsection
  440. %sectionsattr;>
  441. <!ELEMENT subsubsection (sectiontitle?, (%section.level4.content;))>
  442. <!ATTLIST subsubsection
  443. %sectionsattr;>
  444. <!ELEMENT unnumbered (sectiontitle?, (%section.level1.content;))>
  445. <!ATTLIST unnumbered
  446. %sectionsattr;>
  447. <!ELEMENT unnumberedsec (sectiontitle?, (%section.level2.content;))>
  448. <!ATTLIST unnumberedsec
  449. %sectionsattr;>
  450. <!ELEMENT unnumberedsubsec (sectiontitle?, (%section.level3.content;))>
  451. <!ATTLIST unnumberedsubsec
  452. %sectionsattr;>
  453. <!ELEMENT unnumberedsubsubsec (sectiontitle?, (%section.level4.content;))>
  454. <!ATTLIST unnumberedsubsubsec
  455. %sectionsattr;>
  456. <!ELEMENT centerchap (sectiontitle?, (%section.level1.content;))>
  457. <!ATTLIST centerchap
  458. %sectionsattr;>
  459. <!ELEMENT appendix (sectiontitle?, (%section.level1.content;))>
  460. <!ATTLIST appendix
  461. %sectionsattr;>
  462. <!ELEMENT appendixsec (sectiontitle?, (%section.level2.content;))>
  463. <!ATTLIST appendixsec
  464. %sectionsattr;>
  465. <!ELEMENT appendixsubsec (sectiontitle?, (%section.level3.content;))>
  466. <!ATTLIST appendixsubsec
  467. %sectionsattr;>
  468. <!ELEMENT appendixsubsubsec (sectiontitle?, (%section.level4.content;))>
  469. <!ATTLIST appendixsubsubsec
  470. %sectionsattr;>
  471. <!-- Headings and titles -->
  472. <!ELEMENT majorheading (#PCDATA | %Inline.line;)*>
  473. <!ATTLIST majorheading
  474. %spacesattr;>
  475. <!ELEMENT chapheading (#PCDATA | %Inline.line;)*>
  476. <!ATTLIST chapheading
  477. %spacesattr;>
  478. <!ELEMENT heading (#PCDATA | %Inline.line;)*>
  479. <!ATTLIST heading
  480. %spacesattr;>
  481. <!ELEMENT subheading (#PCDATA | %Inline.line;)*>
  482. <!ATTLIST subheading
  483. %spacesattr;>
  484. <!ELEMENT subsubheading (#PCDATA | %Inline.line;)*>
  485. <!ATTLIST subsubheading
  486. %spacesattr;>
  487. <!ELEMENT sectiontitle (#PCDATA | %Inline.line;)*>
  488. <!-- emacs-page
  489. Block elements -->
  490. <!ELEMENT quotation (quotationtype?, (%block; | exdent | author)*)>
  491. <!ATTLIST quotation
  492. %spacesblockattr;>
  493. <!ELEMENT smallquotation (quotationtype?, (%block; | exdent | author)*)>
  494. <!ATTLIST smallquotation
  495. %spacesblockattr;>
  496. <!ELEMENT quotationtype (#PCDATA | %Inline.line;)*>
  497. <!ELEMENT documentdescription (%block;)*>
  498. <!ATTLIST documentdescription
  499. %spacesblockattr;>
  500. <!ELEMENT example (%block; | exdent)*>
  501. <!ATTLIST example
  502. %spacesblockattr;>
  503. <!ELEMENT smallexample (%block; | exdent)*>
  504. <!ATTLIST smallexample
  505. %spacesblockattr;>
  506. <!ELEMENT lisp (%block; | exdent)*>
  507. <!ATTLIST lisp
  508. %spacesblockattr;>
  509. <!ELEMENT smalllisp (%block; | exdent)*>
  510. <!ATTLIST smalllisp
  511. %spacesblockattr;>
  512. <!ELEMENT cartouche (%block; | exdent)*>
  513. <!ATTLIST cartouche
  514. %spacesblockattr;>
  515. <!ELEMENT format (%block; | exdent)*>
  516. <!ATTLIST format
  517. %spacesblockattr;>
  518. <!ELEMENT smallformat (%block; | exdent)*>
  519. <!ATTLIST smallformat
  520. %spacesblockattr;>
  521. <!ELEMENT display (%block; | exdent)*>
  522. <!ATTLIST display
  523. %spacesblockattr;>
  524. <!ELEMENT smalldisplay (%block; | exdent)*>
  525. <!ATTLIST smalldisplay
  526. %spacesblockattr;>
  527. <!ELEMENT group (%block; | exdent)*>
  528. <!ATTLIST group
  529. %spacesblockattr;>
  530. <!ELEMENT flushleft (%block; | exdent)*>
  531. <!ATTLIST flushleft
  532. %spacesblockattr;>
  533. <!ELEMENT flushright (%block; | exdent)*>
  534. <!ATTLIST flushright
  535. %spacesblockattr;>
  536. <!ELEMENT raggedright (%block; | exdent)*>
  537. <!ATTLIST raggedright
  538. %spacesblockattr;>
  539. <!ELEMENT center (#PCDATA | %Inline.fullline;)*>
  540. <!ATTLIST center
  541. %spacesattr;>
  542. <!ELEMENT image (imagefile, imagewidth?, imageheight?, alttext?,
  543. imageextension?)>
  544. <!ATTLIST image
  545. %spacesattr;
  546. where CDATA #IMPLIED>
  547. <!ELEMENT imagefile (#PCDATA | %Inline.line;)*>
  548. <!ELEMENT imagewidth (#PCDATA)>
  549. <!ATTLIST imagewidth
  550. %spacesattr;>
  551. <!ELEMENT imageheight (#PCDATA)>
  552. <!ATTLIST imageheight
  553. %spacesattr;>
  554. <!ELEMENT alttext (#PCDATA | %Inline.line;)*>
  555. <!ATTLIST alttext
  556. %spacesattr;>
  557. <!ELEMENT imageextension (#PCDATA)>
  558. <!ATTLIST imageextension
  559. %spacesattr;>
  560. <!-- Whitespace in these elements are always preserved -->
  561. <!ELEMENT verbatim (#PCDATA)>
  562. <!ATTLIST verbatim
  563. %spacesattr;
  564. xml:space (preserve) #FIXED 'preserve'>
  565. <!-- author is there because it may happen in a quotation para -->
  566. <!ELEMENT para (#PCDATA | %Inline.phrase; | author)*>
  567. <!ATTLIST para
  568. role CDATA #IMPLIED>
  569. <!ELEMENT pre (#PCDATA | %Inline.phrase; | author)*>
  570. <!ATTLIST pre xml:space (preserve) #FIXED 'preserve'>
  571. <!ELEMENT menu (menuentry | detailmenu | menucomment)*>
  572. <!ATTLIST menu
  573. %spacesblockattr;>
  574. <!ELEMENT detailmenu (menuentry | menucomment)*>
  575. <!ATTLIST detailmenu
  576. %spacesblockattr;>
  577. <!ELEMENT direntry (menuentry | menucomment)*>
  578. <!ATTLIST direntry
  579. %spacesblockattr;>
  580. <!ELEMENT menuentry (menutitle?, menunode?, menudescription?)>
  581. <!ATTLIST menuentry
  582. leadingtext CDATA #REQUIRED>
  583. <!ELEMENT menunode (#PCDATA | %Inline.line;)*>
  584. <!ATTLIST menunode
  585. separator CDATA #IMPLIED>
  586. <!ELEMENT menutitle (#PCDATA | %Inline.line;)*>
  587. <!ATTLIST menutitle
  588. separator CDATA #IMPLIED>
  589. <!ELEMENT menudescription (%block;)*>
  590. <!ELEMENT menucomment (%block;)*>
  591. <!-- Raw formats -->
  592. <!ELEMENT docbook (%Raw.content;)*>
  593. <!ATTLIST docbook
  594. %spacesblockattr;>
  595. <!ELEMENT html (%Raw.content;)*>
  596. <!ATTLIST html
  597. %spacesblockattr;>
  598. <!ELEMENT tex (%Raw.content;)*>
  599. <!ATTLIST tex
  600. %spacesblockattr;>
  601. <!-- this may happen if xml is not expanded -->
  602. <!ELEMENT xml (%Raw.content;)*>
  603. <!ATTLIST xml
  604. %spacesblockattr;>
  605. <!-- formalarg only before PCDATA, but mandating it seems not possible -->
  606. <!-- same issue for nesting macros -->
  607. <!ELEMENT macro (#PCDATA | formalarg | macro | rmacro)*>
  608. <!ATTLIST macro
  609. name CDATA #REQUIRED
  610. line CDATA #REQUIRED>
  611. <!ELEMENT rmacro (#PCDATA | formalarg | macro | rmacro)*>
  612. <!ATTLIST rmacro
  613. name CDATA #REQUIRED
  614. line CDATA #REQUIRED>
  615. <!ELEMENT formalarg (#PCDATA)>
  616. <!ELEMENT ignore (#PCDATA)>
  617. <!-- Negative indentation in blocks -->
  618. <!ELEMENT exdent (#PCDATA | %Inline.fullline;)*>
  619. <!ATTLIST exdent
  620. %spacesattr;>
  621. <!ELEMENT verbatiminclude (#PCDATA)>
  622. <!ATTLIST verbatiminclude
  623. %spacesattr;
  624. file CDATA #REQUIRED>
  625. <!ELEMENT include (#PCDATA)>
  626. <!ATTLIST include
  627. %spacesattr;>
  628. <!-- Floating displays -->
  629. <!ELEMENT float (floattype?, floatname?, (%block;)*,
  630. (caption | shortcaption)*)>
  631. <!ATTLIST float
  632. %spacesblockattr;
  633. number CDATA #IMPLIED
  634. name CDATA #IMPLIED
  635. type CDATA #IMPLIED>
  636. <!ELEMENT floattype (#PCDATA | %Inline.line;)*>
  637. <!ELEMENT floatname (#PCDATA | %Inline.line;)*>
  638. <!ATTLIST floatname
  639. %spacesattr;>
  640. <!ELEMENT caption (#PCDATA | %block;)*>
  641. <!ATTLIST caption
  642. %spacesattr;>
  643. <!ELEMENT shortcaption (#PCDATA | %Inline.phrase; | para)*>
  644. <!ELEMENT listoffloats (#PCDATA | %Inline.line;)*>
  645. <!ATTLIST listoffloats
  646. %spacesattr;
  647. type CDATA #IMPLIED>
  648. <!-- Lists -->
  649. <!ELEMENT itemize (itemprepend?, beforefirstitem?,
  650. (listitem | %indexentry.cmds;)*)>
  651. <!ATTLIST itemize
  652. %spacesblockattr;
  653. commandarg CDATA #IMPLIED>
  654. <!ELEMENT enumerate (enumeratefirst?, beforefirstitem?,
  655. (listitem | %indexentry.cmds;)*)>
  656. <!ATTLIST enumerate
  657. %spacesblockattr;
  658. first CDATA #IMPLIED>
  659. <!ELEMENT enumeratefirst (#PCDATA)>
  660. <!ELEMENT listitem (prepend?, (%block;)*)>
  661. <!ATTLIST listitem
  662. %spacesattr;>
  663. <!ELEMENT prepend (#PCDATA | %Inline.line;)*>
  664. <!ELEMENT itemprepend (#PCDATA | %Inline.line; | formattingcommand)*>
  665. <!ELEMENT formattingcommand EMPTY>
  666. <!ATTLIST formattingcommand
  667. command CDATA #REQUIRED>
  668. <!ELEMENT beforefirstitem (%block;)*>
  669. <!-- Tables -->
  670. <!ELEMENT table (beforefirstitem?, (tableentry | %indexentry.cmds;)+)>
  671. <!ENTITY % blocktablearg
  672. "%spacesblockattr;
  673. commandarg CDATA #IMPLIED
  674. begin CDATA #IMPLIED
  675. end CDATA #IMPLIED">
  676. <!-- begin and end are for definfoenclose command as table argument -->
  677. <!ATTLIST table
  678. %blocktablearg;>
  679. <!ELEMENT vtable (beforefirstitem?, (tableentry | %indexentry.cmds;)+)>
  680. <!ATTLIST vtable
  681. %blocktablearg;>
  682. <!ELEMENT ftable (beforefirstitem?, (tableentry | %indexentry.cmds;)+)>
  683. <!ATTLIST ftable
  684. %blocktablearg;>
  685. <!ELEMENT tableentry (tableterm, tableitem?)>
  686. <!-- tableterm contains directly pre if there is an index entry before @itemx -->
  687. <!ELEMENT tableterm (item, (pre | itemx | %indexentry.cmds;)*)>
  688. <!ELEMENT item (#PCDATA | %Inline.line; | itemformat | indexterm)*>
  689. <!ATTLIST item
  690. %spacesattr;>
  691. <!ELEMENT itemx (#PCDATA | %Inline.line; | itemformat | indexterm)*>
  692. <!ATTLIST itemx
  693. %spacesattr;>
  694. <!ELEMENT itemformat (#PCDATA | %Inline.line; | indexterm)*>
  695. <!-- begin and end are for definfoenclose command for item content -->
  696. <!ATTLIST itemformat
  697. command CDATA #REQUIRED
  698. begin CDATA #IMPLIED
  699. end CDATA #IMPLIED>
  700. <!ELEMENT tableitem (%block;)*>
  701. <!ELEMENT multitable ((columnfractions | columnprototypes), beforefirstitem?,
  702. thead?, tbody)>
  703. <!ATTLIST multitable
  704. %blocktablearg;>
  705. <!ELEMENT columnfractions (columnfraction+)>
  706. <!ATTLIST columnfractions
  707. %lineattr;>
  708. <!ELEMENT columnprototypes (columnprototype+)>
  709. <!ELEMENT columnfraction EMPTY>
  710. <!ATTLIST columnfraction
  711. value CDATA #REQUIRED>
  712. <!ELEMENT columnprototype (#PCDATA | %Inline.line;)*>
  713. <!ATTLIST columnprototype
  714. %spacesattr;
  715. %bracketedattr;>
  716. <!ELEMENT thead (row+)>
  717. <!ELEMENT tbody (row+)>
  718. <!ELEMENT row (entry*)>
  719. <!ELEMENT entry (%block;)*>
  720. <!ATTLIST entry
  721. %spacesattr;
  722. command CDATA #REQUIRED>
  723. <!-- API definitions -->
  724. <!-- def* contains directly pre if there is an index entry before def*x -->
  725. <!ELEMENT deffn (definitionterm, (pre | deffnx | %indexentry.cmds;)*, definitionitem?)>
  726. <!ATTLIST deffn
  727. %spacesblockattr;>
  728. <!ELEMENT deffnx (definitionterm)>
  729. <!ATTLIST deffnx
  730. %spacesattr;>
  731. <!ELEMENT defvr (definitionterm, (pre | defvrx | %indexentry.cmds;)*, definitionitem?)>
  732. <!ATTLIST defvr
  733. %spacesblockattr;>
  734. <!ELEMENT defvrx (definitionterm)>
  735. <!ATTLIST defvrx
  736. %spacesattr;>
  737. <!ELEMENT deftypefn (definitionterm, (pre | deftypefnx | %indexentry.cmds;)*, definitionitem?)>
  738. <!ATTLIST deftypefn
  739. %spacesblockattr;>
  740. <!ELEMENT deftypefnx (definitionterm)>
  741. <!ATTLIST deftypefnx
  742. %spacesattr;>
  743. <!ELEMENT deftypeop (definitionterm, (pre | deftypeopx | %indexentry.cmds;)*, definitionitem?)>
  744. <!ATTLIST deftypeop
  745. %spacesblockattr;>
  746. <!ELEMENT deftypeopx (definitionterm)>
  747. <!ATTLIST deftypeopx
  748. %spacesattr;>
  749. <!ELEMENT deftypevr (definitionterm, (pre | deftypevrx | %indexentry.cmds;)*, definitionitem?)>
  750. <!ATTLIST deftypevr
  751. %spacesblockattr;>
  752. <!ELEMENT deftypevrx (definitionterm)>
  753. <!ATTLIST deftypevrx
  754. %spacesattr;>
  755. <!ELEMENT defcv (definitionterm, (pre | defcvx | %indexentry.cmds;)*, definitionitem?)>
  756. <!ATTLIST defcv
  757. %spacesblockattr;>
  758. <!ELEMENT defcvx (definitionterm)>
  759. <!ATTLIST defcvx
  760. %spacesattr;>
  761. <!ELEMENT deftypecv (definitionterm, (pre | deftypecvx | %indexentry.cmds;)*, definitionitem?)>
  762. <!ATTLIST deftypecv
  763. %spacesblockattr;>
  764. <!ELEMENT deftypecvx (definitionterm)>
  765. <!ATTLIST deftypecvx
  766. %spacesattr;>
  767. <!ELEMENT defop (definitionterm, (pre | defopx | %indexentry.cmds;)*, definitionitem?)>
  768. <!ATTLIST defop
  769. %spacesblockattr;>
  770. <!ELEMENT defopx (definitionterm)>
  771. <!ATTLIST defopx
  772. %spacesattr;>
  773. <!ELEMENT deftp (definitionterm, (pre | deftpx | %indexentry.cmds;)*, definitionitem?)>
  774. <!ATTLIST deftp
  775. %spacesblockattr;>
  776. <!ELEMENT deftpx (definitionterm)>
  777. <!ATTLIST deftpx
  778. %spacesattr;>
  779. <!ELEMENT defun (definitionterm, (pre | defunx | %indexentry.cmds;)*, definitionitem?)>
  780. <!ATTLIST defun
  781. %spacesblockattr;>
  782. <!ELEMENT defunx (definitionterm)>
  783. <!ATTLIST defunx
  784. %spacesattr;>
  785. <!ELEMENT defmac (definitionterm, (pre | defmacx | %indexentry.cmds;)*, definitionitem?)>
  786. <!ATTLIST defmac
  787. %spacesblockattr;>
  788. <!ELEMENT defmacx (definitionterm)>
  789. <!ATTLIST defmacx
  790. %spacesattr;>
  791. <!ELEMENT defspec (definitionterm, (pre | defspecx | %indexentry.cmds;)*, definitionitem?)>
  792. <!ATTLIST defspec
  793. %spacesblockattr;>
  794. <!ELEMENT defspecx (definitionterm)>
  795. <!ATTLIST defspecx
  796. %spacesattr;>
  797. <!ELEMENT defvar (definitionterm, (pre | defvarx | %indexentry.cmds;)*, definitionitem?)>
  798. <!ATTLIST defvar
  799. %spacesblockattr;>
  800. <!ELEMENT defvarx (definitionterm)>
  801. <!ATTLIST defvarx
  802. %spacesattr;>
  803. <!ELEMENT defopt (definitionterm, (pre | defoptx | %indexentry.cmds;)*, definitionitem?)>
  804. <!ATTLIST defopt
  805. %spacesblockattr;>
  806. <!ELEMENT defoptx (definitionterm)>
  807. <!ATTLIST defoptx
  808. %spacesattr;>
  809. <!ELEMENT deftypefun (definitionterm, (pre | deftypefunx | %indexentry.cmds;)*, definitionitem?)>
  810. <!ATTLIST deftypefun
  811. %spacesblockattr;>
  812. <!ELEMENT deftypefunx (definitionterm)>
  813. <!ATTLIST deftypefunx
  814. %spacesattr;>
  815. <!ELEMENT deftypevar (definitionterm, (pre | deftypevarx | %indexentry.cmds;)*, definitionitem?)>
  816. <!ATTLIST deftypevar
  817. %spacesblockattr;>
  818. <!ELEMENT deftypevarx (definitionterm)>
  819. <!ATTLIST deftypevarx
  820. %spacesattr;>
  821. <!ELEMENT defivar (definitionterm, (pre | defivarx | %indexentry.cmds;)*, definitionitem?)>
  822. <!ATTLIST defivar
  823. %spacesblockattr;>
  824. <!ELEMENT defivarx (definitionterm)>
  825. <!ATTLIST defivarx
  826. %spacesattr;>
  827. <!ELEMENT deftypeivar (definitionterm, (pre | deftypeivarx | %indexentry.cmds;)*, definitionitem?)>
  828. <!ATTLIST deftypeivar
  829. %spacesblockattr;>
  830. <!ELEMENT deftypeivarx (definitionterm)>
  831. <!ATTLIST deftypeivarx
  832. %spacesattr;>
  833. <!ELEMENT defmethod (definitionterm, (pre | defmethodx | %indexentry.cmds;)*, definitionitem?)>
  834. <!ATTLIST defmethod
  835. %spacesblockattr;>
  836. <!ELEMENT defmethodx (definitionterm)>
  837. <!ATTLIST defmethodx
  838. %spacesattr;>
  839. <!ELEMENT deftypemethod (definitionterm, (pre | deftypemethodx | %indexentry.cmds;)*, definitionitem?)>
  840. <!ATTLIST deftypemethod
  841. %spacesblockattr;>
  842. <!ELEMENT deftypemethodx (definitionterm)>
  843. <!ATTLIST deftypemethodx
  844. %spacesattr;>
  845. <!--
  846. <!ELEMENT definition (definitionterm | definitionitem | indexterm)+>
  847. <!ELEMENT definitionterm (%definition.args; | indexterm)+>
  848. -->
  849. <!ELEMENT definitionterm (indexterm?, (%definition.args;)+)>
  850. <!ELEMENT definitionitem (%block;)*>
  851. <!ENTITY % defargattr
  852. "%bracketedattr; %spacesattr;">
  853. <!ELEMENT defcategory (#PCDATA | %Inline.line;)*>
  854. <!ATTLIST defcategory
  855. %defargattr;
  856. automatic (%onoff;) 'off'>
  857. <!ELEMENT deffunction (#PCDATA | %Inline.line;)*>
  858. <!ATTLIST deffunction
  859. %defargattr;>
  860. <!ELEMENT defvariable (#PCDATA | %Inline.line;)*>
  861. <!ATTLIST defvariable
  862. %defargattr;>
  863. <!ELEMENT defparam (#PCDATA | %Inline.line;)*>
  864. <!ATTLIST defparam
  865. %defargattr;>
  866. <!ELEMENT defdelimiter (#PCDATA | %Inline.line;)*>
  867. <!ELEMENT deftype (#PCDATA | %Inline.line;)*>
  868. <!ATTLIST deftype
  869. %defargattr;>
  870. <!ELEMENT defparamtype (#PCDATA | %Inline.line;)*>
  871. <!ATTLIST defparamtype
  872. %defargattr;>
  873. <!ELEMENT defdatatype (#PCDATA | %Inline.line;)*>
  874. <!ATTLIST defdatatype
  875. %defargattr;>
  876. <!ELEMENT defclass (#PCDATA | %Inline.line;)*>
  877. <!ATTLIST defclass
  878. %defargattr;>
  879. <!ELEMENT defclassvar (#PCDATA | %Inline.line;)*>
  880. <!ATTLIST defclassvar
  881. %defargattr;>
  882. <!ELEMENT defoperation (#PCDATA | %Inline.line;)*>
  883. <!ATTLIST defoperation
  884. %defargattr;>
  885. <!-- emacs-page
  886. Inline elements -->
  887. <!ELEMENT hyphenation (#PCDATA)>
  888. <!-- emphasize -->
  889. <!ELEMENT strong (#PCDATA | %Inline.phrase;)*>
  890. <!ELEMENT emph (#PCDATA | %Inline.phrase;)*>
  891. <!-- small caps -->
  892. <!ELEMENT sc (#PCDATA | %Inline.phrase;)*>
  893. <!-- fonts -->
  894. <!ELEMENT b (#PCDATA | %Inline.phrase;)*>
  895. <!ELEMENT i (#PCDATA | %Inline.phrase;)*>
  896. <!ELEMENT r (#PCDATA | %Inline.phrase;)*>
  897. <!ELEMENT sansserif (#PCDATA | %Inline.phrase;)*>
  898. <!ELEMENT slanted (#PCDATA | %Inline.phrase;)*>
  899. <!ELEMENT titlefont (#PCDATA | %Inline.phrase;)*>
  900. <!ELEMENT t (#PCDATA | %Inline.phrase;)*>
  901. <!-- markup -->
  902. <!ELEMENT code (#PCDATA | %Inline.phrase;)*>
  903. <!ELEMENT command (#PCDATA | %Inline.phrase;)*>
  904. <!ELEMENT env (#PCDATA | %Inline.phrase;)*>
  905. <!ELEMENT file (#PCDATA | %Inline.phrase;)*>
  906. <!ELEMENT option (#PCDATA | %Inline.phrase;)*>
  907. <!ELEMENT samp (#PCDATA | %Inline.phrase;)*>
  908. <!ELEMENT dfn (#PCDATA | %Inline.phrase;)*>
  909. <!ELEMENT cite (#PCDATA | %Inline.phrase;)*>
  910. <!ELEMENT key (#PCDATA | %Inline.phrase;)*>
  911. <!ELEMENT kbd (#PCDATA | %Inline.phrase;)*>
  912. <!ELEMENT var (#PCDATA | %Inline.phrase;)*>
  913. <!ELEMENT indicateurl (#PCDATA | %Inline.phrase;)*>
  914. <!ATTLIST indicateurl
  915. %spacesattr;>
  916. <!ELEMENT clicksequence (#PCDATA | %Inline.phrase;)*>
  917. <!ELEMENT w (#PCDATA | %Inline.phrase;)*>
  918. <!ELEMENT asis (#PCDATA | %Inline.phrase;)*>
  919. <!ELEMENT sub (#PCDATA | %Inline.phrase;)*>
  920. <!ELEMENT sup (#PCDATA | %Inline.phrase;)*>
  921. <!ELEMENT verb (#PCDATA)>
  922. <!ATTLIST verb
  923. delimiter CDATA #REQUIRED>
  924. <!ELEMENT acronym (acronymword, acronymdesc?)>
  925. <!ATTLIST acronym
  926. %spacesattr;>
  927. <!ELEMENT acronymword (#PCDATA | %Inline.phrase;)*>
  928. <!ELEMENT acronymdesc (#PCDATA | %Inline.phrase;)*>
  929. <!ATTLIST acronymdesc
  930. %spacesattr;>
  931. <!ELEMENT abbr (abbrword, abbrdesc?)>
  932. <!ATTLIST abbr
  933. %spacesattr;>
  934. <!ELEMENT abbrword (#PCDATA | %Inline.phrase;)*>
  935. <!ELEMENT abbrdesc (#PCDATA | %Inline.phrase;)*>
  936. <!ATTLIST abbrdesc
  937. %spacesattr;>
  938. <!-- math -->
  939. <!ELEMENT math (#PCDATA | %Inline.phrase;)*>
  940. <!ATTLIST math
  941. %spacesattr;>
  942. <!ELEMENT dmn (#PCDATA | %Inline.phrase;)*>
  943. <!-- reference -->
  944. <!ELEMENT anchor (#PCDATA | %Inline.phrase;)*>
  945. <!ATTLIST anchor
  946. %spacesattr;
  947. name CDATA #IMPLIED>
  948. <!ELEMENT errormsg (#PCDATA | %Inline.phrase;)*>
  949. <!ATTLIST errormsg
  950. %spacesattr;>
  951. <!-- inline conditionals -->
  952. <!ELEMENT inlineraw (inlinerawformat, inlinerawcontent)>
  953. <!ATTLIST inlineraw
  954. %spacesattr;>
  955. <!ELEMENT inlinerawformat (#PCDATA)>
  956. <!ELEMENT inlinerawcontent (#PCDATA | %Inline.phrase;)*>
  957. <!ATTLIST inlinerawcontent
  958. %spacesattr;>
  959. <!ELEMENT inlinefmt (inlinefmtformat, inlinefmtcontent)>
  960. <!ATTLIST inlinefmt
  961. %spacesattr;>
  962. <!ELEMENT inlinefmtformat (#PCDATA)>
  963. <!ELEMENT inlinefmtcontent (#PCDATA | %Inline.phrase;)*>
  964. <!ATTLIST inlinefmtcontent
  965. %spacesattr;>
  966. <!ELEMENT inlineifclear (inlineifclearformat, inlineifclearcontent)>
  967. <!ATTLIST inlineifclear
  968. %spacesattr;>
  969. <!ELEMENT inlineifclearformat (#PCDATA)>
  970. <!ELEMENT inlineifclearcontent (#PCDATA | %Inline.phrase;)*>
  971. <!ATTLIST inlineifclearcontent
  972. %spacesattr;>
  973. <!ELEMENT inlineifset (inlineifsetformat, inlineifsetcontent)>
  974. <!ATTLIST inlineifset
  975. %spacesattr;>
  976. <!ELEMENT inlineifsetformat (#PCDATA)>
  977. <!ELEMENT inlineifsetcontent (#PCDATA | %Inline.phrase;)*>
  978. <!ATTLIST inlineifsetcontent
  979. %spacesattr;>
  980. <!ELEMENT inlinefmtifelse (inlinefmtifelseformat, inlinefmtifelsecontentif?, inlinefmtifelsecontentelse?)>
  981. <!ATTLIST inlinefmtifelse
  982. %spacesattr;>
  983. <!ELEMENT inlinefmtifelseformat (#PCDATA)>
  984. <!ELEMENT inlinefmtifelsecontentif (#PCDATA | %Inline.phrase;)*>
  985. <!ATTLIST inlinefmtifelsecontentif
  986. %spacesattr;>
  987. <!ELEMENT inlinefmtifelsecontentelse (#PCDATA | %Inline.phrase;)*>
  988. <!ATTLIST inlinefmtifelsecontentelse
  989. %spacesattr;>
  990. <!-- command defined by definfoenclose -->
  991. <!ELEMENT infoenclose (#PCDATA | %Inline.phrase;)*>
  992. <!ATTLIST infoenclose
  993. command CDATA #REQUIRED
  994. begin CDATA #IMPLIED
  995. end CDATA #IMPLIED>
  996. <!ENTITY % xref.args "xrefnodename?, xrefinfoname?, xrefprinteddesc?,
  997. xrefinfofile?, xrefprintedname?">
  998. <!ENTITY % xref.attr
  999. "%spacesattr;
  1000. label CDATA #IMPLIED
  1001. manual CDATA #IMPLIED">
  1002. <!ELEMENT xref (%xref.args;)>
  1003. <!ATTLIST xref
  1004. %xref.attr;>
  1005. <!ELEMENT ref (%xref.args;)>
  1006. <!ATTLIST ref
  1007. %xref.attr;>
  1008. <!ELEMENT pxref (%xref.args;)>
  1009. <!ATTLIST pxref
  1010. %xref.attr;>
  1011. <!ELEMENT xrefnodename (#PCDATA | %Inline.phrase;)*>
  1012. <!ELEMENT xrefinfoname (#PCDATA | %Inline.phrase;)*>
  1013. <!ATTLIST xrefinfoname
  1014. %spacesattr;>
  1015. <!ELEMENT xrefinfofile (#PCDATA | %Inline.phrase;)*>
  1016. <!ATTLIST xrefinfofile
  1017. %spacesattr;>
  1018. <!ELEMENT xrefprintedname (#PCDATA | %Inline.phrase;)*>
  1019. <!ATTLIST xrefprintedname
  1020. %spacesattr;>
  1021. <!ELEMENT xrefprinteddesc (#PCDATA | %Inline.phrase;)*>
  1022. <!ATTLIST xrefprinteddesc
  1023. %spacesattr;>
  1024. <!ELEMENT inforef (inforefnodename?, inforefrefname?, inforefinfoname?)>
  1025. <!ATTLIST inforef
  1026. %xref.attr;>
  1027. <!ELEMENT inforefnodename (#PCDATA | %Inline.phrase;)*>
  1028. <!ELEMENT inforefrefname (#PCDATA | %Inline.phrase;)*>
  1029. <!ATTLIST inforefrefname
  1030. %spacesattr;>
  1031. <!ELEMENT inforefinfoname (#PCDATA | %Inline.phrase;)*>
  1032. <!ATTLIST inforefinfoname
  1033. %spacesattr;>
  1034. <!ELEMENT email (emailaddress, emailname?)>
  1035. <!ATTLIST email
  1036. %spacesattr;>
  1037. <!ELEMENT emailaddress (#PCDATA | %Inline.phrase;)*>
  1038. <!ELEMENT emailname (#PCDATA | %Inline.phrase;)*>
  1039. <!ATTLIST emailname
  1040. %spacesattr;>
  1041. <!ELEMENT uref (urefurl, urefdesc?, urefreplacement?)>
  1042. <!ATTLIST uref
  1043. %spacesattr;>
  1044. <!ELEMENT url (urefurl, urefdesc?, urefreplacement?)>
  1045. <!ATTLIST url
  1046. %spacesattr;>
  1047. <!ELEMENT urefurl (#PCDATA | %Inline.phrase;)*>
  1048. <!ELEMENT urefdesc (#PCDATA | %Inline.phrase;)*>
  1049. <!ATTLIST urefdesc
  1050. %spacesattr;>
  1051. <!ELEMENT urefreplacement (#PCDATA | %Inline.phrase;)*>
  1052. <!ELEMENT footnote (%block;)*>
  1053. <!ATTLIST footnote
  1054. %spacesattr;>
  1055. <!-- deprecated -->
  1056. <!ELEMENT ctrl (#PCDATA | %Inline.phrase;)*>
  1057. <!ELEMENT refill EMPTY>
  1058. <!ELEMENT quote-arg EMPTY>
  1059. <!ELEMENT allow-recursion EMPTY>
  1060. <!-- index commands -->
  1061. <!ENTITY % indexcmdattr
  1062. "%spacesattr;
  1063. index CDATA #IMPLIED">
  1064. <!ELEMENT defindex EMPTY>
  1065. <!ATTLIST defindex
  1066. %lineattr;
  1067. value NMTOKEN #REQUIRED>
  1068. <!ELEMENT defcodeindex EMPTY>
  1069. <!ATTLIST defcodeindex
  1070. %lineattr;
  1071. value NMTOKEN #REQUIRED>
  1072. <!ELEMENT synindex EMPTY>
  1073. <!ATTLIST synindex
  1074. %lineattr;
  1075. from NMTOKEN #REQUIRED
  1076. to NMTOKEN #REQUIRED>
  1077. <!ELEMENT syncodeindex EMPTY>
  1078. <!ATTLIST syncodeindex
  1079. %lineattr;
  1080. from NMTOKEN #REQUIRED
  1081. to NMTOKEN #REQUIRED>
  1082. <!ELEMENT indexterm (#PCDATA | %Inline.line;)*>
  1083. <!ATTLIST indexterm
  1084. index CDATA #IMPLIED
  1085. mergedindex CDATA #IMPLIED
  1086. number CDATA #REQUIRED
  1087. incode (%zeroone;) #IMPLIED>
  1088. <!ELEMENT indexcommand (indexterm)>
  1089. <!ATTLIST indexcommand
  1090. %indexcmdattr;
  1091. command CDATA #REQUIRED>
  1092. <!ELEMENT cindex (indexterm)>
  1093. <!ATTLIST cindex
  1094. %indexcmdattr;>
  1095. <!ELEMENT findex (indexterm)>
  1096. <!ATTLIST findex
  1097. %indexcmdattr;>
  1098. <!ELEMENT kindex (indexterm)>
  1099. <!ATTLIST kindex
  1100. %indexcmdattr;>
  1101. <!ELEMENT pindex (indexterm)>
  1102. <!ATTLIST pindex
  1103. %indexcmdattr;>
  1104. <!ELEMENT tindex (indexterm)>
  1105. <!ATTLIST tindex
  1106. %indexcmdattr;>
  1107. <!ELEMENT vindex (indexterm)>
  1108. <!ATTLIST vindex
  1109. %indexcmdattr;>
  1110. <!ELEMENT printindex EMPTY>
  1111. <!ATTLIST printindex
  1112. %lineattr;
  1113. value NMTOKEN #REQUIRED>
  1114. <!-- unusual insertions and other -->
  1115. <!ELEMENT accent (#PCDATA | accent | dotless)*>
  1116. <!ATTLIST accent
  1117. %bracketedattr;
  1118. %spacesattr;
  1119. type CDATA #REQUIRED>
  1120. <!ELEMENT bye EMPTY>
  1121. <!ELEMENT click EMPTY>
  1122. <!ATTLIST click
  1123. command CDATA #REQUIRED>
  1124. <!ELEMENT dotless (#PCDATA)>
  1125. <!ELEMENT spacecmd EMPTY>
  1126. <!ATTLIST spacecmd
  1127. type (%spacetype;) #IMPLIED>
  1128. <!ELEMENT today EMPTY>
  1129. <!ELEMENT U (#PCDATA)>
  1130. <!-- emacs-page
  1131. Punctuation and special symbols. -->
  1132. <!ELEMENT punct (#PCDATA)>
  1133. <!ATTLIST punct
  1134. end-of-sentence (yes|no) #IMPLIED>
  1135. <!ELEMENT logo (#PCDATA)>
  1136. <!ELEMENT linebreak EMPTY>
  1137. <!ELEMENT noeos EMPTY>
  1138. <!ELEMENT formfeed EMPTY>
  1139. <!ENTITY tex "<logo>TeX</logo>">
  1140. <!ENTITY latex "<logo>LaTeX</logo>">
  1141. <!ENTITY ellipsis "&#x2026;">
  1142. <!ENTITY lt "&#x3c;">
  1143. <!ENTITY gt "&#x3e;">
  1144. <!ENTITY bullet "&#x2022;">
  1145. <!ENTITY copyright "&#xa9;">
  1146. <!ENTITY registered "&#xae;">
  1147. <!ENTITY euro "&#x20ac;">
  1148. <!ENTITY pounds "&#xa3;">
  1149. <!ENTITY minus "&#x2212;">
  1150. <!ENTITY linebreak "<linebreak/>">
  1151. <!ENTITY dots "<punct end-of-sentence='no'>&#x2026;</punct>">
  1152. <!ENTITY enddots "<punct end-of-sentence='yes'>&#x2026;</punct>">
  1153. <!ENTITY amp "&#x26;">
  1154. <!ENTITY lsquo "&#x2018;">
  1155. <!ENTITY textlsquo "&#x2018;">
  1156. <!ENTITY rsquo "&#x2019;">
  1157. <!ENTITY textrsquo "&#x2019;">
  1158. <!ENTITY sbquo "&#x201a;">
  1159. <!ENTITY ldquo "&#x201c;">
  1160. <!ENTITY textldquo "&#x201c;">
  1161. <!ENTITY rdquo "&#x201d;">
  1162. <!ENTITY textrdquo "&#x201d;">
  1163. <!ENTITY bdquo "&#x201e;">
  1164. <!ENTITY laquo "&#xab;">
  1165. <!ENTITY raquo "&#xbb;">
  1166. <!ENTITY lsaquo "&#x2039;">
  1167. <!ENTITY rsaquo "&#x203a;">
  1168. <!ENTITY textmdash "&#x2014;">
  1169. <!ENTITY textndash "&#x2013;">
  1170. <!ENTITY formfeed "<formfeed/>">
  1171. <!ENTITY attrformfeed "\f">
  1172. <!ENTITY period "<punct end-of-sentence='no'>.</punct>">
  1173. <!ENTITY eosperiod "<punct end-of-sentence='yes'>.</punct>">
  1174. <!ENTITY quest "<punct end-of-sentence='no'>?</punct>">
  1175. <!ENTITY eosquest "<punct end-of-sentence='yes'>?</punct>">
  1176. <!ENTITY excl "<punct end-of-sentence='no'>!</punct>">
  1177. <!ENTITY eosexcl "<punct end-of-sentence='yes'>!</punct>">
  1178. <!ENTITY hyphenbreak "&#x00ad;">
  1179. <!ENTITY slashbreak "/">
  1180. <!ENTITY noeos "<noeos/>">
  1181. <!ENTITY arobase "@">
  1182. <!ENTITY lbrace "{">
  1183. <!ENTITY rbrace "}">
  1184. <!ENTITY comma ",">
  1185. <!ENTITY atchar "@">
  1186. <!ENTITY lbracechar "{">
  1187. <!ENTITY rbracechar "}">
  1188. <!ENTITY backslashchar "\\">
  1189. <!ENTITY hashchar "#">
  1190. <!ENTITY nbsp "&#xa0;">
  1191. <!ENTITY deg "&#xb0;">
  1192. <!ENTITY expansion "&#x2192;">
  1193. <!ENTITY point "&#x2605;">
  1194. <!ENTITY printglyph "&#x22a3;">
  1195. <!ENTITY errorglyph "error--&gt;">
  1196. <!ENTITY result "&#x21d2;">
  1197. <!ENTITY le "&#x2264;">
  1198. <!ENTITY ge "&#x2265;">
  1199. <!ENTITY equiv "&#x2261;">
  1200. <!ENTITY auml "&#xe4;">
  1201. <!ENTITY ouml "&#xf6;">
  1202. <!ENTITY uuml "&#xfc;">
  1203. <!ENTITY Auml "&#xc4;">
  1204. <!ENTITY Ouml "&#xd6;">
  1205. <!ENTITY Uuml "&#xdc;">
  1206. <!ENTITY Euml "&#xcb;">
  1207. <!ENTITY euml "&#xeb;">
  1208. <!ENTITY Iuml "&#xcf;">
  1209. <!ENTITY iuml "&#xef;">
  1210. <!ENTITY yuml "&#xff;">
  1211. <!ENTITY uml "&#xa8;">
  1212. <!ENTITY Aacute "&#xc1;">
  1213. <!ENTITY Eacute "&#xc9;">
  1214. <!ENTITY Iacute "&#xcd;">
  1215. <!ENTITY Oacute "&#xd3;">
  1216. <!ENTITY Uacute "&#xda;">
  1217. <!ENTITY Yacute "&#xdd;">
  1218. <!ENTITY aacute "&#xe1;">
  1219. <!ENTITY eacute "&#xe9;">
  1220. <!ENTITY iacute "&#xed;">
  1221. <!ENTITY oacute "&#xf3;">
  1222. <!ENTITY uacute "&#xfa;">
  1223. <!ENTITY yacute "&#xfd;">
  1224. <!ENTITY ccedil "&#xe7;">
  1225. <!ENTITY Ccedil "&#xc7;">
  1226. <!ENTITY Acirc "&#xc2;">
  1227. <!ENTITY Ecirc "&#xca;">
  1228. <!ENTITY Icirc "&#xc3;">
  1229. <!ENTITY Ocirc "&#xd4;">
  1230. <!ENTITY Ucirc "&#xdb;">
  1231. <!ENTITY acirc "&#xe2;">
  1232. <!ENTITY ecirc "&#xea;">
  1233. <!ENTITY icirc "&#xee;">
  1234. <!ENTITY ocirc "&#xf4;">
  1235. <!ENTITY ucirc "&#xfb;">
  1236. <!ENTITY Agrave "&#xc0;">
  1237. <!ENTITY Egrave "&#xc8;">
  1238. <!ENTITY Igrave "&#xcc;">
  1239. <!ENTITY Ograve "&#xd2;">
  1240. <!ENTITY Ugrave "&#xd9;">
  1241. <!ENTITY agrave "&#xe0;">
  1242. <!ENTITY egrave "&#xe8;">
  1243. <!ENTITY igrave "&#xec;">
  1244. <!ENTITY ograve "&#xf2;">
  1245. <!ENTITY ugrave "&#xf9;">
  1246. <!ENTITY Atilde "&#xc3;">
  1247. <!ENTITY Ntilde "&#xd1;">
  1248. <!ENTITY Otilde "&#xd5;">
  1249. <!ENTITY atilde "&#xe3;">
  1250. <!ENTITY ntilde "&#xf1;">
  1251. <!ENTITY otilde "&#xf5;">
  1252. <!ENTITY oslash "&#xf8;">
  1253. <!ENTITY Oslash "&#xd8;">
  1254. <!ENTITY lslash "&#x0142;">
  1255. <!ENTITY Lslash "&#x0141;">
  1256. <!ENTITY THORN "&#xde;">
  1257. <!ENTITY thorn "&#xfe;">
  1258. <!ENTITY eth "&#xf0;">
  1259. <!ENTITY ETH "&#xd0;">
  1260. <!ENTITY ordm "&#xba;">
  1261. <!ENTITY ordf "&#xaa;">
  1262. <!ENTITY iexcl "&#xa1;">
  1263. <!ENTITY pound "&#xa3;">
  1264. <!ENTITY iquest "&#xbf;">
  1265. <!ENTITY AElig "&#xc6;">
  1266. <!ENTITY aelig "&#xe6;">
  1267. <!ENTITY OElig "&#x152;">
  1268. <!ENTITY oelig "&#x153;">
  1269. <!ENTITY Aring "&#xc5;">
  1270. <!ENTITY aring "&#xe5;">
  1271. <!ENTITY szlig "&#xdf;">
  1272. <!ENTITY rarr "&#x2192;">
  1273. <!ENTITY rArr "&#x21d2;">
  1274. <!ENTITY macr "&#xaf;">
  1275. <!ENTITY backslash "\">