summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex/latex-web-companion/apb/minilatex.dtd
blob: 3bb7530819a2c7e52d5a289f1471994b6f379a89 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
<!-- minilatex.dtd: XML version of a subset of LaTeX -->
<!-- Most elements have the following attributes  -->
<!ENTITY % all    "id    ID #IMPLIED
                   class CDATA #IMPLIED
                   style CDATA #IMPLIED">
<!-- Most non-empty elements have this language attribute -->
<!ENTITY % i18n   "xml:lang NMTOKEN #IMPLIED">
<!ENTITY % basic  "%all; %i18n;">
<!-- Declaration of parameter entities for structuring the DTD -->
<!ENTITY % fontchange.new "">
<!ENTITY % fontchange "emph|textbf|textsc|textsf|textsl|texttt %fontchange.new;">
<!ENTITY % misc.new "">
<!ENTITY % misc "url|quad|hspace|vspace|includegraphics|tag|ent %misc.new;">
<!ENTITY % xref.new  "">
<!ENTITY % xref "cite|pageref|ref %xref.new;">
<!ENTITY % mathobj.new "">
<!ENTITY % mathobj "displaymath|inlinemath|equation|eqnarray" > 
<!ENTITY % inline.new "">
<!ENTITY % inline  "%fontchange;|quote|tabular|%misc;|%xref;|%mathobj; %inline.new;">
<!ENTITY % list.new "">
<!ENTITY % list    "lalist|description|enumerate|itemize|bibliography %list.new;">
<!ENTITY % preformat.new "">
<!ENTITY % preformat "verbatim|verse %preformat.new;">
<!ENTITY % likepara.new "">
<!ENTITY % likepara "%list;|quotation|align|%preformat; %likepara.new;">
<!ENTITY % floats.new "">
<!ENTITY % floats "figure|table %floats.new;">

<!-- The top level document declarations                     -->
<!ELEMENT document (frontmatter?,bodymatter,backmatter?)>
<!ATTLIST document %i18n; 
                   class CDATA "article">
<!ELEMENT frontmatter (title,author?,date?,abstract?)>
<!ELEMENT bodymatter  ((par|%likepara;|%floats;|part|chapter|section)*,appendix*)>
<!ELEMENT backmatter  (index|glossary)*>
<!-- fontchanges -->
<!ELEMENT emph    (#PCDATA|%inline;)*>
<!ELEMENT textbf  (#PCDATA|%inline;)*>
<!ELEMENT textsc  (#PCDATA|%inline;)*>
<!ELEMENT textsf  (#PCDATA|%inline;)*>
<!ELEMENT textsl  (#PCDATA|%inline;)*>
<!ELEMENT texttt  (#PCDATA|%inline;)*>
<!-- cross-references -->
<!ENTITY % idref  "refid IDREF #REQUIRED">
<!ELEMENT cite     EMPTY>
<!ATTLIST cite     %idref;>
<!ELEMENT pageref  EMPTY>
<!ATTLIST pageref  %idref;>
<!ELEMENT ref      EMPTY>
<!ATTLIST ref      %idref;>
<!-- quoted material inline and displayed -->
<!ELEMENT quote        (#PCDATA|%inline;|par)*>
<!ATTLIST quote        %basic;>
<!ELEMENT quotation    (#PCDATA|%inline;|par)*>
<!ATTLIST quotation    %basic;>
<!-- lists -->
<!ELEMENT description  ((term*,item*)+)>
<!ATTLIST description  %basic;>
<!ELEMENT enumerate    ((term*,item*)+)>
<!ATTLIST enumerate    %basic;>
<!ELEMENT itemize      ((term*,item*)+)>
<!ATTLIST itemize      %basic;>
<!ELEMENT lalist       ((term*,item*)+)>
<!ATTLIST lalist       %basic;>
<!ELEMENT term         (#PCDATA|%inline;)*>
<!ATTLIST term         %basic;>
<!ELEMENT item         (#PCDATA|%inline;|par|%likepara;)*>
<!ATTLIST item         %basic;>
<!ELEMENT bibliography (bibitem)*>
<!ATTLIST bibliography %basic;>
<!ELEMENT bibitem      (#PCDATA|%inline;|par|%likepara;)*>
<!ATTLIST bibitem      %basic;>
<!-- low-level bits and pieces -->
<!ELEMENT url    EMPTY>
<!ATTLIST url    name CDATA #REQUIRED>
<!ELEMENT quad   EMPTY>
<!ELEMENT hspace EMPTY>
<!ATTLIST hspace dim CDATA #REQUIRED>
<!ELEMENT vspace EMPTY>
<!ATTLIST vspace dim CDATA #REQUIRED>
<!ELEMENT tag    (#PCDATA)>
<!ELEMENT ent    EMPTY>
<!ATTLIST ent    value CDATA #REQUIRED
                 name  CDATA #REQUIRED>
<!-- everything that can go into a paragraph -->
<!ELEMENT par     (#PCDATA|%inline;|%likepara;)*>
<!ATTLIST par     %basic;>
<!-- "floats" and their contents -->
<!ELEMENT figure  (#PCDATA|par|%inline;|%likepara;|caption)*>
<!ATTLIST figure  %basic;>
<!ELEMENT table   (#PCDATA|par|%inline;|%likepara;|caption)*>
<!ATTLIST table   %basic;>
<!ELEMENT includegraphics EMPTY>
<!ATTLIST includegraphics %basic;
                          file     CDATA #REQUIRED
                          width    CDATA #IMPLIED
                          height   CDATA #IMPLIED
                          bb       CDATA #IMPLIED
                          scale    CDATA ".5"
                          angle    CDATA #IMPLIED>
<!ELEMENT caption  (#PCDATA|par|%inline;)*>
<!ATTLIST caption  %basic;>
<!-- tabular material -->
<!ELEMENT tabular (hline|row)*>
<!ATTLIST tabular %basic;
                  preamble CDATA  #REQUIRED
                  width    CDATA  #IMPLIED 
                  border   CDATA  #IMPLIED>
<!ELEMENT row     (cell)*>
<!ATTLIST row     %basic;>
<!ELEMENT hline   EMPTY>
<!ELEMENT cell    (#PCDATA|%inline;)*>
<!ATTLIST cell    %basic;
                  rowspan CDATA "1"
                  colspan CDATA "1"
                  align   (left|center|right) "center">
<!-- verbatim material -->
<!ELEMENT verbatim (#PCDATA)>
<!ATTLIST verbatim %basic;
                   xml:space (default|preserve) 'preserve'>
<!ELEMENT verse    (#PCDATA|%inline;)*>
<!ATTLIST verse    %basic;
                   xml:space (default|preserve) 'preserve'>
<!-- things that go in the frontmatter -->
<!ELEMENT newline  EMPTY>
<!ELEMENT title    (#PCDATA|%inline;|thanks|newline)*>
<!ATTLIST title    %basic;>
<!ELEMENT author   (#PCDATA|%inline;|name|thanks|inst)*>
<!ELEMENT name     (#PCDATA|%inline;)*>
<!ATTLIST name     %basic;>
<!ELEMENT thanks   (#PCDATA|%inline;|newline)*>
<!ATTLIST thanks   %basic;>
<!ELEMENT inst     (#PCDATA|%inline;|newline)*>
<!ATTLIST inst     %basic;>
<!ELEMENT date     (#PCDATA)>
<!ATTLIST date     %basic;>
<!ELEMENT abstract (par+)>
<!ATTLIST abstract %basic;>
<!-- structuring -->
<!ENTITY % sect          "stitle, (par|%likepara;|%floats;)* ">
<!ELEMENT stitle         (#PCDATA|%inline;)*>
<!ATTLIST stitle          %basic;>
<!ELEMENT part           (%sect;, (chapter|section|subsection|subsubsection)*)>
<!ATTLIST part            %basic;>
<!ELEMENT chapter        (%sect;, section*)> 
<!ATTLIST chapter         %basic;>
<!ELEMENT section        (%sect;, subsection*)>
<!ATTLIST section         %basic;>
<!ELEMENT subsection     (%sect;, subsubsection*)>
<!ATTLIST subsection      %basic;>
<!ELEMENT subsubsection  (%sect;, paragraph*)>
<!ATTLIST subsubsection   %basic;>
<!ELEMENT paragraph      (%sect;, subparagraph*)>
<!ATTLIST paragraph       %basic;>
<!ELEMENT subparagraph   (%sect;)>
<!ATTLIST subparagraph    %basic;>
<!ELEMENT appendix       EMPTY>
<!-- backmatter: index and glossary -->
<!ELEMENT index (par|%likepara;)*>
<!ATTLIST index %basic;>
<!ELEMENT glossary (par|%likepara;)*>
<!ATTLIST glossagry %basic;>
<!-- LaTeX math constructs -->
<!ENTITY % LaTeXmath  "INCLUDE">
<!ENTITY % latexmath.dtd SYSTEM "latexmath.dtd">
<![ %LaTeXmath; [
%latexmath.dtd;
]]>
<!ENTITY % MathML     "IGNORE">
<!ENTITY % latexmml.dtd SYSTEM "latexmml.dtd">
<![ %MathML; [
%latexmml.dtd;
]]>
<!-- Basic XML entities -->
<!ENTITY lt     "&#60;"> <!-- "<" -->
<!ENTITY gt     "&#62;"> <!-- ">" -->
<!ENTITY amp    "&#38;"> <!-- "&" -->
<!ENTITY apos   "&#39;"> <!-- "'" -->
<!ENTITY quot   "&#34;"> <!-- '"' -->