Initial Commit
[packages] / xemacs-packages / psgml-dtds / etc / mathml.dtd
1 <!-- ************************************************************************ -->
2 <!-- Content model definition for content, presentation                       -->
3 <!-- and browser interface elements of MathML                                 -->
4 <!--                                                                          -->
5 <!-- $Id: mathml.dtd,v 1.1 2002-08-25 10:21:58 scop Exp $                 -->
6 <!--                                                                          -->
7 <!-- Initial draft (syntax = XML) 1997-05-09                                  -->
8 <!--   Stephen Buswell                                                        -->
9 <!-- Revised 1997-05-14  by Robert Miner                                      -->
10 <!--   Robert Miner                                                           -->
11 <!-- Revised 1997-06-29 and 1997-07-02                                        -->
12 <!--   Stephen Buswell                                                        -->
13 <!-- Revised 1997-12-15d                                                      -->
14 <!--   Stephen Buswell                                                        -->
15 <!-- Revised 1998-02-08                                                       -->
16 <!--   Stephen Buswell                                                        -->
17 <!-- Revised 1998-04-04                                                       -->
18 <!--   Stephen Buswell                                                        -->
19 <!-- Entities and small revisions 1999-02-21                                  -->
20 <!--   David Carlisle                                                         -->
21 <!-- Added attribute definitionURL to ci and cn 1999-10-11                    -->
22 <!--   Nico Poppelier                                                         -->
23 <!-- Additions for MathML 2  1999-12-16                                       -->
24 <!--   David Carlisle                                                         -->
25 <!-- Namespace support 2000-01-14                                             -->
26 <!--   David Carlisle                                                         -->
27 <!--                                                                          -->
28 <!-- Became W3C Recommendation 7 April 1998                                   -->
29 <!-- ************************************************************************ -->
30
31 <!-- ************************************************************************ -->
32 <!-- Support for variable namespace prefix                                    -->
33 <!-- ************************************************************************ -->
34
35 <!ENTITY % mathml-colon               ''>
36 <!ENTITY % mathml-prefix              ''>
37 <!ENTITY % mathml-xlink               'xlink'>
38
39 <!ENTITY % mathml-mspace              '%mathml-prefix;%mathml-colon;mspace' >
40 <!ENTITY % mathml-mprescripts         '%mathml-prefix;%mathml-colon;mprescripts' >
41 <!ENTITY % mathml-none                '%mathml-prefix;%mathml-colon;none' >
42 <!ENTITY % mathml-malignmark          '%mathml-prefix;%mathml-colon;malignmark' >
43 <!ENTITY % mathml-maligngroup         '%mathml-prefix;%mathml-colon;maligngroup' >
44 <!ENTITY % mathml-mchar               '%mathml-prefix;%mathml-colon;mchar' >
45 <!ENTITY % mathml-mglyph              '%mathml-prefix;%mathml-colon;mglyph' >
46 <!ENTITY % mathml-sep                 '%mathml-prefix;%mathml-colon;sep' >
47 <!ENTITY % mathml-inverse             '%mathml-prefix;%mathml-colon;inverse' >
48 <!ENTITY % mathml-ident               '%mathml-prefix;%mathml-colon;ident' >
49 <!ENTITY % mathml-compose             '%mathml-prefix;%mathml-colon;compose' >
50 <!ENTITY % mathml-exp                 '%mathml-prefix;%mathml-colon;exp' >
51 <!ENTITY % mathml-abs                 '%mathml-prefix;%mathml-colon;abs' >
52 <!ENTITY % mathml-arg                 '%mathml-prefix;%mathml-colon;arg' >
53 <!ENTITY % mathml-real                '%mathml-prefix;%mathml-colon;real' >
54 <!ENTITY % mathml-imaginary           '%mathml-prefix;%mathml-colon;imaginary' >
55 <!ENTITY % mathml-conjugate           '%mathml-prefix;%mathml-colon;conjugate' >
56 <!ENTITY % mathml-factorial           '%mathml-prefix;%mathml-colon;factorial' >
57 <!ENTITY % mathml-minus               '%mathml-prefix;%mathml-colon;minus' >
58 <!ENTITY % mathml-quotient            '%mathml-prefix;%mathml-colon;quotient' >
59 <!ENTITY % mathml-divide              '%mathml-prefix;%mathml-colon;divide' >
60 <!ENTITY % mathml-power               '%mathml-prefix;%mathml-colon;power' >
61 <!ENTITY % mathml-rem                 '%mathml-prefix;%mathml-colon;rem' >
62 <!ENTITY % mathml-plus                '%mathml-prefix;%mathml-colon;plus' >
63 <!ENTITY % mathml-max                 '%mathml-prefix;%mathml-colon;max' >
64 <!ENTITY % mathml-min                 '%mathml-prefix;%mathml-colon;min' >
65 <!ENTITY % mathml-times               '%mathml-prefix;%mathml-colon;times' >
66 <!ENTITY % mathml-gcd                 '%mathml-prefix;%mathml-colon;gcd' >
67 <!ENTITY % mathml-root                '%mathml-prefix;%mathml-colon;root' >
68 <!ENTITY % mathml-exists              '%mathml-prefix;%mathml-colon;exists' >
69 <!ENTITY % mathml-forall              '%mathml-prefix;%mathml-colon;forall' >
70 <!ENTITY % mathml-and                 '%mathml-prefix;%mathml-colon;and' >
71 <!ENTITY % mathml-or                  '%mathml-prefix;%mathml-colon;or' >
72 <!ENTITY % mathml-xor                 '%mathml-prefix;%mathml-colon;xor' >
73 <!ENTITY % mathml-not                 '%mathml-prefix;%mathml-colon;not' >
74 <!ENTITY % mathml-implies             '%mathml-prefix;%mathml-colon;implies' >
75 <!ENTITY % mathml-divergence          '%mathml-prefix;%mathml-colon;divergence' >
76 <!ENTITY % mathml-grad                '%mathml-prefix;%mathml-colon;grad' >
77 <!ENTITY % mathml-curl                '%mathml-prefix;%mathml-colon;curl' >
78 <!ENTITY % mathml-laplacian           '%mathml-prefix;%mathml-colon;laplacian' >
79 <!ENTITY % mathml-log                 '%mathml-prefix;%mathml-colon;log' >
80 <!ENTITY % mathml-int                 '%mathml-prefix;%mathml-colon;int' >
81 <!ENTITY % mathml-diff                '%mathml-prefix;%mathml-colon;diff' >
82 <!ENTITY % mathml-partialdiff         '%mathml-prefix;%mathml-colon;partialdiff' >
83 <!ENTITY % mathml-ln                  '%mathml-prefix;%mathml-colon;ln' >
84 <!ENTITY % mathml-card                '%mathml-prefix;%mathml-colon;card' >
85 <!ENTITY % mathml-setdiff             '%mathml-prefix;%mathml-colon;setdiff' >
86 <!ENTITY % mathml-union               '%mathml-prefix;%mathml-colon;union' >
87 <!ENTITY % mathml-intersect           '%mathml-prefix;%mathml-colon;intersect' >
88 <!ENTITY % mathml-sum                 '%mathml-prefix;%mathml-colon;sum' >
89 <!ENTITY % mathml-product             '%mathml-prefix;%mathml-colon;product' >
90 <!ENTITY % mathml-limit               '%mathml-prefix;%mathml-colon;limit' >
91 <!ENTITY % mathml-sin                 '%mathml-prefix;%mathml-colon;sin' >
92 <!ENTITY % mathml-cos                 '%mathml-prefix;%mathml-colon;cos' >
93 <!ENTITY % mathml-tan                 '%mathml-prefix;%mathml-colon;tan' >
94 <!ENTITY % mathml-sec                 '%mathml-prefix;%mathml-colon;sec' >
95 <!ENTITY % mathml-csc                 '%mathml-prefix;%mathml-colon;csc' >
96 <!ENTITY % mathml-cot                 '%mathml-prefix;%mathml-colon;cot' >
97 <!ENTITY % mathml-sinh                '%mathml-prefix;%mathml-colon;sinh' >
98 <!ENTITY % mathml-cosh                '%mathml-prefix;%mathml-colon;cosh' >
99 <!ENTITY % mathml-tanh                '%mathml-prefix;%mathml-colon;tanh' >
100 <!ENTITY % mathml-sech                '%mathml-prefix;%mathml-colon;sech' >
101 <!ENTITY % mathml-csch                '%mathml-prefix;%mathml-colon;csch' >
102 <!ENTITY % mathml-coth                '%mathml-prefix;%mathml-colon;coth' >
103 <!ENTITY % mathml-arcsin              '%mathml-prefix;%mathml-colon;arcsin' >
104 <!ENTITY % mathml-arccos              '%mathml-prefix;%mathml-colon;arccos' >
105 <!ENTITY % mathml-arctan              '%mathml-prefix;%mathml-colon;arctan' >
106 <!ENTITY % mathml-mean                '%mathml-prefix;%mathml-colon;mean' >
107 <!ENTITY % mathml-sdev                '%mathml-prefix;%mathml-colon;sdev' >
108 <!ENTITY % mathml-variance            '%mathml-prefix;%mathml-colon;variance' >
109 <!ENTITY % mathml-median              '%mathml-prefix;%mathml-colon;median' >
110 <!ENTITY % mathml-mode                '%mathml-prefix;%mathml-colon;mode' >
111 <!ENTITY % mathml-moment              '%mathml-prefix;%mathml-colon;moment' >
112 <!ENTITY % mathml-determinant         '%mathml-prefix;%mathml-colon;determinant' >
113 <!ENTITY % mathml-transpose           '%mathml-prefix;%mathml-colon;transpose' >
114 <!ENTITY % mathml-vectorproduct       '%mathml-prefix;%mathml-colon;vectorproduct' >
115 <!ENTITY % mathml-scalarproduct       '%mathml-prefix;%mathml-colon;scalarproduct' >
116 <!ENTITY % mathml-outerproduct        '%mathml-prefix;%mathml-colon;outerproduct' >
117 <!ENTITY % mathml-selector            '%mathml-prefix;%mathml-colon;selector' >
118 <!ENTITY % mathml-neq                 '%mathml-prefix;%mathml-colon;neq' >
119 <!ENTITY % mathml-eq                  '%mathml-prefix;%mathml-colon;eq' >
120 <!ENTITY % mathml-equivalent          '%mathml-prefix;%mathml-colon;equivalent' >
121 <!ENTITY % mathml-approx              '%mathml-prefix;%mathml-colon;approx' >
122 <!ENTITY % mathml-gt                  '%mathml-prefix;%mathml-colon;gt' >
123 <!ENTITY % mathml-lt                  '%mathml-prefix;%mathml-colon;lt' >
124 <!ENTITY % mathml-geq                 '%mathml-prefix;%mathml-colon;geq' >
125 <!ENTITY % mathml-leq                 '%mathml-prefix;%mathml-colon;leq' >
126 <!ENTITY % mathml-in                  '%mathml-prefix;%mathml-colon;in' >
127 <!ENTITY % mathml-notin               '%mathml-prefix;%mathml-colon;notin' >
128 <!ENTITY % mathml-notsubset           '%mathml-prefix;%mathml-colon;notsubset' >
129 <!ENTITY % mathml-notprsubset         '%mathml-prefix;%mathml-colon;notprsubset' >
130 <!ENTITY % mathml-subset              '%mathml-prefix;%mathml-colon;subset' >
131 <!ENTITY % mathml-prsubset            '%mathml-prefix;%mathml-colon;prsubset' >
132 <!ENTITY % mathml-tendsto             '%mathml-prefix;%mathml-colon;tendsto' >
133 <!ENTITY % mathml-ci                  '%mathml-prefix;%mathml-colon;ci' >
134 <!ENTITY % mathml-csymbol             '%mathml-prefix;%mathml-colon;csymbol' >
135 <!ENTITY % mathml-cn                  '%mathml-prefix;%mathml-colon;cn' >
136 <!ENTITY % mathml-apply               '%mathml-prefix;%mathml-colon;apply' >
137 <!ENTITY % mathml-reln                '%mathml-prefix;%mathml-colon;reln' >
138 <!ENTITY % mathml-lambda              '%mathml-prefix;%mathml-colon;lambda' >
139 <!ENTITY % mathml-condition           '%mathml-prefix;%mathml-colon;condition' >
140 <!ENTITY % mathml-declare             '%mathml-prefix;%mathml-colon;declare' >
141 <!ENTITY % mathml-semantics           '%mathml-prefix;%mathml-colon;semantics' >
142 <!ENTITY % mathml-annotation          '%mathml-prefix;%mathml-colon;annotation' >
143 <!ENTITY % mathml-annotation-xml      '%mathml-prefix;%mathml-colon;annotation-xml' >
144 <!ENTITY % mathml-interval            '%mathml-prefix;%mathml-colon;interval' >
145 <!ENTITY % mathml-set                 '%mathml-prefix;%mathml-colon;set' >
146 <!ENTITY % mathml-list                '%mathml-prefix;%mathml-colon;list' >
147 <!ENTITY % mathml-vector              '%mathml-prefix;%mathml-colon;vector' >
148 <!ENTITY % mathml-matrix              '%mathml-prefix;%mathml-colon;matrix' >
149 <!ENTITY % mathml-matrixrow           '%mathml-prefix;%mathml-colon;matrixrow' >
150 <!ENTITY % mathml-fn                  '%mathml-prefix;%mathml-colon;fn' >
151 <!ENTITY % mathml-lowlimit            '%mathml-prefix;%mathml-colon;lowlimit' >
152 <!ENTITY % mathml-uplimit             '%mathml-prefix;%mathml-colon;uplimit' >
153 <!ENTITY % mathml-bvar                '%mathml-prefix;%mathml-colon;bvar' >
154 <!ENTITY % mathml-degree              '%mathml-prefix;%mathml-colon;degree' >
155 <!ENTITY % mathml-logbase             '%mathml-prefix;%mathml-colon;logbase' >
156 <!ENTITY % mathml-mstyle              '%mathml-prefix;%mathml-colon;mstyle' >
157 <!ENTITY % mathml-merror              '%mathml-prefix;%mathml-colon;merror' >
158 <!ENTITY % mathml-mphantom            '%mathml-prefix;%mathml-colon;mphantom' >
159 <!ENTITY % mathml-mrow                '%mathml-prefix;%mathml-colon;mrow' >
160 <!ENTITY % mathml-mfrac               '%mathml-prefix;%mathml-colon;mfrac' >
161 <!ENTITY % mathml-msqrt               '%mathml-prefix;%mathml-colon;msqrt' >
162 <!ENTITY % mathml-menclose            '%mathml-prefix;%mathml-colon;menclose' >
163 <!ENTITY % mathml-mroot               '%mathml-prefix;%mathml-colon;mroot' >
164 <!ENTITY % mathml-msub                '%mathml-prefix;%mathml-colon;msub' >
165 <!ENTITY % mathml-msup                '%mathml-prefix;%mathml-colon;msup' >
166 <!ENTITY % mathml-msubsup             '%mathml-prefix;%mathml-colon;msubsup' >
167 <!ENTITY % mathml-mmultiscripts       '%mathml-prefix;%mathml-colon;mmultiscripts' >
168 <!ENTITY % mathml-munder              '%mathml-prefix;%mathml-colon;munder' >
169 <!ENTITY % mathml-mover               '%mathml-prefix;%mathml-colon;mover' >
170 <!ENTITY % mathml-munderover          '%mathml-prefix;%mathml-colon;munderover' >
171 <!ENTITY % mathml-mtable              '%mathml-prefix;%mathml-colon;mtable' >
172 <!ENTITY % mathml-mtr                 '%mathml-prefix;%mathml-colon;mtr' >
173 <!ENTITY % mathml-mlabeledtr          '%mathml-prefix;%mathml-colon;mlabeledtr' >
174 <!ENTITY % mathml-mtd                 '%mathml-prefix;%mathml-colon;mtd' >
175 <!ENTITY % mathml-maction             '%mathml-prefix;%mathml-colon;maction' >
176 <!ENTITY % mathml-mfenced             '%mathml-prefix;%mathml-colon;mfenced' >
177 <!ENTITY % mathml-mpadded             '%mathml-prefix;%mathml-colon;mpadded' >
178 <!ENTITY % mathml-mi                  '%mathml-prefix;%mathml-colon;mi' >
179 <!ENTITY % mathml-mn                  '%mathml-prefix;%mathml-colon;mn' >
180 <!ENTITY % mathml-mo                  '%mathml-prefix;%mathml-colon;mo' >
181 <!ENTITY % mathml-mtext               '%mathml-prefix;%mathml-colon;mtext' >
182 <!ENTITY % mathml-ms                  '%mathml-prefix;%mathml-colon;ms' >
183 <!ENTITY % mathml-math                '%mathml-prefix;%mathml-colon;math' >
184
185 <!-- ************************************************************************ -->
186 <!-- Attributes shared by all elements                                        -->
187 <!-- ************************************************************************ -->
188
189 <!ENTITY % att-xmlns
190                                      'xmlns%mathml-colon;%mathml-prefix;
191                                       CDATA #FIXED 
192                                      "http://www.w3.org/1998/Math/MathML"' >
193 <!ENTITY  % att-global
194   '%att-xmlns;
195    xmlns:%mathml-xlink;               CDATA #IMPLIED
196    %mathml-xlink;:href                CDATA #IMPLIED
197    class                              CDATA #IMPLIED
198    style                              CDATA #IMPLIED
199    id                                 ID    #IMPLIED
200    xref                               IDREF #IMPLIED
201    other                              CDATA #IMPLIED' >
202
203 <!-- ************************************************************************ -->
204 <!-- Presentation element set                                                 -->
205 <!-- ************************************************************************ -->
206
207 <!-- Attribute definitions -->
208
209 <!ENTITY  % att-fontsize             'fontsize   CDATA             #IMPLIED' >
210 <!ENTITY  % att-fontweight           'fontweight (normal | bold)   #IMPLIED' >
211 <!ENTITY  % att-fontstyle            'fontstyle  (normal | italic) #IMPLIED' >
212 <!ENTITY  % att-fontfamily           'fontfamily CDATA             #IMPLIED' >
213 <!ENTITY  % att-color                'color      CDATA             #IMPLIED' >
214
215 <!ENTITY  % att-fontinfo             '%att-fontsize;
216                                       %att-fontweight;
217                                       %att-fontstyle;
218                                       %att-fontfamily;
219                                       %att-color;' >
220
221 <!ENTITY  % att-form                 'form          (prefix | infix | postfix) #IMPLIED' >
222 <!ENTITY  % att-fence                'fence         (true | false)             #IMPLIED' >
223 <!ENTITY  % att-separator            'separator     (true | false)             #IMPLIED' >
224 <!ENTITY  % att-lspace               'lspace        CDATA                      #IMPLIED' >
225 <!ENTITY  % att-rspace               'rspace        CDATA                      #IMPLIED' >
226 <!ENTITY  % att-stretchy             'stretchy      (true | false)             #IMPLIED' >
227 <!ENTITY  % att-symmetric            'symmetric     (true | false)             #IMPLIED' >
228 <!ENTITY  % att-maxsize              'maxsize       CDATA                      #IMPLIED' >
229 <!ENTITY  % att-minsize              'minsize       CDATA                      #IMPLIED' >
230 <!ENTITY  % att-largeop              'largeop       (true | false)             #IMPLIED' >
231 <!ENTITY  % att-movablelimits        'movablelimits (true | false)             #IMPLIED' >
232 <!ENTITY  % att-accent               'accent        (true | false)             #IMPLIED' >
233
234 <!ENTITY  % att-opinfo               '%att-form;
235                                       %att-fence;
236                                       %att-separator;
237                                       %att-lspace;
238                                       %att-rspace;
239                                       %att-stretchy;
240                                       %att-symmetric;
241                                       %att-maxsize;
242                                       %att-minsize;
243                                       %att-largeop;
244                                       %att-movablelimits;
245                                       %att-accent;' >
246
247 <!ENTITY  % att-width                'width  CDATA #IMPLIED' >
248 <!ENTITY  % att-height               'height CDATA #IMPLIED' >
249 <!ENTITY  % att-depth                'depth  CDATA #IMPLIED' >
250
251 <!ENTITY  % att-sizeinfo             '%att-width;
252                                       %att-height;
253                                       %att-depth;' >
254
255 <!ENTITY  % att-lquote               'lquote CDATA #IMPLIED' >
256 <!ENTITY  % att-rquote               'rquote CDATA #IMPLIED' >
257
258 <!ENTITY  % att-linethickness        'linethickness CDATA #IMPLIED' >
259
260 <!ENTITY  % att-scriptlevel          'scriptlevel          CDATA          #IMPLIED' >
261 <!ENTITY  % att-displaystyle         'displaystyle         (true | false) #IMPLIED' >
262 <!ENTITY  % att-scriptsizemultiplier 'scriptsizemultiplier CDATA          #IMPLIED' >
263 <!ENTITY  % att-scriptminsize        'scriptminsize        CDATA          #IMPLIED' >
264 <!ENTITY  % att-background           'background           CDATA          #IMPLIED' >
265
266 <!ENTITY  % att-open                 'open       CDATA #IMPLIED' >
267 <!ENTITY  % att-close                'close      CDATA #IMPLIED' >
268 <!ENTITY  % att-separators           'separators CDATA #IMPLIED' >
269
270 <!ENTITY  % att-subscriptshift       'subscriptshift   CDATA #IMPLIED' >
271 <!ENTITY  % att-superscriptshift     'superscriptshift CDATA #IMPLIED' >
272
273 <!ENTITY  % att-accentunder          'accentunder (true | false) #IMPLIED' >
274
275 <!ENTITY  % att-align                'align          CDATA #IMPLIED' >
276 <!ENTITY  % att-rowalign             'rowalign       CDATA #IMPLIED' >
277 <!ENTITY  % att-columnalign          'columnalign    CDATA #IMPLIED' >
278 <!ENTITY  % att-columnwidth          'columnwidth    CDATA #IMPLIED' >
279 <!ENTITY  % att-groupalign           'groupalign     CDATA #IMPLIED' >
280 <!ENTITY  % att-alignmentscope       'alignmentscope CDATA #IMPLIED' >
281
282 <!ENTITY  % att-rowspacing           'rowspacing    CDATA                   #IMPLIED' >
283 <!ENTITY  % att-columnspacing        'columnspacing CDATA                   #IMPLIED' >
284 <!ENTITY  % att-rowlines             'rowlines      CDATA                   #IMPLIED' >
285 <!ENTITY  % att-columnlines          'columnlines   CDATA                   #IMPLIED' >
286 <!ENTITY  % att-frame                'frame         (none | solid | dashed) #IMPLIED' >
287 <!ENTITY  % att-framespacing         'framespacing  CDATA                   #IMPLIED' >
288 <!ENTITY  % att-equalrows            'equalrows     CDATA                   #IMPLIED' >
289 <!ENTITY  % att-equalcolumns         'equalcolumns  CDATA                   #IMPLIED' >
290
291 <!ENTITY  % att-tableinfo            '%att-align;
292                                       %att-rowalign;
293                                       %att-columnalign;
294                                       %att-columnwidth;
295                                       %att-groupalign;
296                                       %att-alignmentscope;
297                                       %att-rowspacing;
298                                       %att-columnspacing;
299                                       %att-rowlines;
300                                       %att-columnlines;
301                                       %att-frame;
302                                       %att-framespacing;
303                                       %att-equalrows;
304                                       %att-equalcolumns;
305                                       %att-displaystyle;' >
306
307 <!ENTITY  % att-rowspan              'rowspan    CDATA #IMPLIED' >
308 <!ENTITY  % att-columnspan           'columnspan CDATA #IMPLIED' >
309
310 <!ENTITY  % att-edge                 'edge (left | right)  #IMPLIED' >
311
312 <!ENTITY  % att-actiontype           'actiontype CDATA #IMPLIED' >
313 <!ENTITY  % att-selection            'selection  CDATA #IMPLIED' >
314
315 <!ENTITY  % att-name                 'name CDATA #IMPLIED' >
316 <!ENTITY  % att-alt                  'alt CDATA  #IMPLIED' >
317 <!ENTITY  % att-index                'index CDATA  #IMPLIED' >
318
319 <!-- Presentation schemata with content -->
320
321 <!ENTITY  % ptoken                   '%mathml-mi; | %mathml-mn; | %mathml-mo; |
322                                       %mathml-mtext; | %mathml-ms;' >
323
324 <!ATTLIST %mathml-mi;                 %att-fontinfo;
325                                       %att-global; >
326
327 <!ATTLIST %mathml-mn;                 %att-fontinfo;
328                                       %att-global; >
329
330 <!ATTLIST %mathml-mo;                 %att-fontinfo;
331                                       %att-opinfo;
332                                       %att-global; >
333
334 <!ATTLIST %mathml-mtext;              %att-fontinfo;
335                                       %att-global; >
336
337 <!ATTLIST %mathml-ms;                 %att-fontinfo;
338                                       %att-lquote;
339                                       %att-rquote;
340                                       %att-global; >
341
342 <!-- Empty presentation schemata -->
343
344 <!ENTITY  % petoken                  '%mathml-mspace;' >
345 <!ELEMENT %mathml-mspace;             EMPTY >
346
347 <!ATTLIST %mathml-mspace;             %att-sizeinfo;
348                                       %att-global; >
349
350 <!-- Presentation: general layout schemata -->
351
352 <!ENTITY % pgenschema                '%mathml-mrow;|%mathml-mfrac;|%mathml-msqrt;|
353                                       %mathml-mroot;|%mathml-menclose;|
354                                       %mathml-mstyle;|%mathml-merror;|%mathml-mpadded;|
355                                       %mathml-mphantom;|%mathml-mfenced;' >
356
357 <!ATTLIST %mathml-mrow;               %att-global; >
358
359 <!ATTLIST %mathml-mfrac;              %att-linethickness;
360                                       %att-global; >
361
362 <!ATTLIST %mathml-msqrt;              %att-global; >
363
364 <!ATTLIST %mathml-menclose;           %att-global;
365                                       notation CDATA "longdiv" >
366
367 <!ATTLIST %mathml-mroot;              %att-global; >
368
369 <!ATTLIST %mathml-mstyle;             %att-fontinfo;
370                                       %att-opinfo;
371                                       %att-lquote;
372                                       %att-rquote;
373                                       %att-linethickness;
374                                       %att-scriptlevel;
375                                       %att-scriptsizemultiplier;
376                                       %att-scriptminsize;
377                                       %att-background;
378                                       %att-open;
379                                       %att-close;
380                                       %att-separators;
381                                       %att-subscriptshift;
382                                       %att-superscriptshift;
383                                       %att-accentunder;
384                                       %att-tableinfo;
385                                       %att-rowspan;
386                                       %att-columnspan;
387                                       %att-edge;
388                                       %att-actiontype;
389                                       %att-selection;
390                                       %att-global; >
391
392 <!ATTLIST %mathml-merror;             %att-global; >
393
394 <!ATTLIST %mathml-mpadded;            %att-sizeinfo;
395                                       %att-lspace;
396                                       %att-global; >
397
398 <!ATTLIST %mathml-mphantom;           %att-global; >
399
400 <!ATTLIST %mathml-mfenced;            %att-open;
401                                       %att-close;
402                                       %att-separators;
403                                       %att-global; >
404
405 <!-- Presentation layout schemata: scripts and limits -->
406
407 <!ENTITY  % pscrschema               '%mathml-msub;|%mathml-msup;|%mathml-msubsup;|
408                                       %mathml-munder;|%mathml-mover;|
409                                       %mathml-munderover;|%mathml-mmultiscripts;' >
410
411 <!ATTLIST %mathml-msub;               %att-subscriptshift;
412                                       %att-global; >
413
414 <!ATTLIST %mathml-msup;               %att-superscriptshift;
415                                       %att-global; >
416
417 <!ATTLIST %mathml-msubsup;            %att-subscriptshift;
418                                       %att-superscriptshift;
419                                       %att-global; >
420
421 <!ATTLIST %mathml-munder;             %att-accentunder;
422                                       %att-global; >
423
424 <!ATTLIST %mathml-mover;              %att-accent;
425                                       %att-global; >
426
427 <!ATTLIST %mathml-munderover;         %att-accent;
428                                       %att-accentunder;
429                                       %att-global; >
430
431 <!ATTLIST %mathml-mmultiscripts;      %att-subscriptshift;
432                                       %att-superscriptshift;
433                                       %att-global; >
434
435 <!-- Presentation layout schemata: empty elements for scripts -->
436
437 <!ENTITY  % pscreschema              '%mathml-mprescripts;|
438                                       %mathml-none;' >
439
440 <!ELEMENT %mathml-mprescripts;        EMPTY >
441 <!ATTLIST %mathml-mprescripts;        %att-xmlns; >
442
443 <!ELEMENT %mathml-none;               EMPTY >
444 <!ATTLIST %mathml-none;               %att-xmlns; >
445
446 <!-- Presentation layout schemata: tables -->
447
448 <!ENTITY  % ptabschema               '%mathml-mtable;|%mathml-mtr;|
449                                       %mathml-mlabeledtr;|%mathml-mtd;' >
450
451 <!ATTLIST %mathml-mtable;             %att-tableinfo;
452                                       %att-global; >
453
454 <!ATTLIST %mathml-mtr;                %att-rowalign;
455                                       %att-columnalign;
456                                       %att-groupalign;
457                                       %att-global; >
458
459 <!ATTLIST %mathml-mlabeledtr;         %att-rowalign;
460                                       %att-columnalign;
461                                       %att-groupalign;
462                                       %att-global; >
463
464 <!ATTLIST %mathml-mtd;                %att-rowalign;
465                                       %att-columnalign;
466                                       %att-groupalign;
467                                       %att-rowspan;
468                                       %att-columnspan;
469                                       %att-global; >
470
471 <!ENTITY  % plschema                 '%pgenschema;|%pscrschema;|%ptabschema;' >
472
473 <!-- Empty presentation layout schemata -->
474
475 <!ENTITY  % peschema                 '%mathml-maligngroup; | 
476                                       %mathml-malignmark;' >
477
478 <!ELEMENT %mathml-malignmark;         EMPTY >
479
480 <!ATTLIST %mathml-malignmark;         %att-edge; >
481
482 <!ELEMENT %mathml-maligngroup;        EMPTY >
483 <!ATTLIST %mathml-maligngroup;        %att-groupalign;
484                                       %att-global; >
485
486 <!ELEMENT %mathml-mchar;         EMPTY >
487 <!ATTLIST %mathml-mchar;         %att-name; >
488
489 <!ELEMENT %mathml-mglyph;         EMPTY >
490 <!ATTLIST %mathml-mglyph;         %att-alt;
491                                   %att-fontfamily;
492                                   %att-index; >
493
494 <!-- Presentation action schemata -->
495
496 <!ENTITY  % pactions                 '%mathml-maction;' >
497 <!ATTLIST %mathml-maction;            %att-actiontype;
498                                       %att-selection;
499                                       %att-global; >
500
501 <!-- The following entity for substitution into content constructs -->
502 <!-- excludes elements that are not valid as expressions.          -->
503
504 <!ENTITY  % PresInCont               '%ptoken; | %petoken; |
505                                       %plschema; | %peschema; | %pactions;' >
506
507 <!-- Presentation entity: all presentation constructs -->
508
509 <!ENTITY  % Presentation             '%ptoken; | %petoken; | %pscreschema; |
510                                       %plschema; | %peschema; | %pactions;'>
511
512 <!-- ************************************************************************ -->
513 <!-- Content element set                                                      -->
514 <!-- ************************************************************************ -->
515
516 <!-- Attribute definitions -->
517
518 <!ENTITY  % att-base                 'base CDATA "10"' >
519 <!ENTITY  % att-closure              'closure CDATA "closed"' >
520 <!ENTITY  % att-definition           'definitionURL CDATA ""' >
521 <!ENTITY  % att-encoding             'encoding CDATA ""' >
522 <!ENTITY  % att-nargs                'nargs CDATA "1"' >
523 <!ENTITY  % att-occurrence           'occurrence CDATA "function-model"' >
524 <!ENTITY  % att-order                'order CDATA "numeric"' >
525 <!ENTITY  % att-scope                'scope CDATA "local"' >
526 <!ENTITY  % att-type                 'type CDATA #IMPLIED' >
527
528 <!-- Content elements: leaf nodes -->
529
530 <!ENTITY  % ctoken                   '%mathml-csymbol;|%mathml-ci; | %mathml-cn;' >
531
532 <!ATTLIST %mathml-ci;                 %att-type;
533                                       %att-definition;
534                                       %att-global; >
535
536 <!ATTLIST %mathml-csymbol;            %att-encoding;
537                                       %att-type;
538                                       %att-definition;
539                                       %att-global; >
540
541 <!ATTLIST %mathml-cn;                 %att-type;
542                                       %att-base;
543                                       %att-definition;
544                                       %att-global; >
545
546 <!-- Content elements: specials -->
547
548 <!ENTITY  % cspecial                 '%mathml-apply; | %mathml-reln; |
549                                       %mathml-lambda;' >
550
551 <!ATTLIST %mathml-apply;              %att-global; >
552
553 <!ATTLIST %mathml-reln;               %att-global; >
554
555 <!ATTLIST %mathml-lambda;             %att-global; >
556
557 <!-- Content elements: others -->
558
559 <!ENTITY  % cother                   '%mathml-condition; | %mathml-declare; |
560                                       %mathml-sep;' >
561
562 <!ATTLIST %mathml-condition;          %att-global; >
563
564 <!ATTLIST %mathml-declare;            %att-type;
565                                       %att-scope;
566                                       %att-nargs;
567                                       %att-occurrence;
568                                       %att-definition;
569                                       %att-encoding;
570                                       %att-global; >
571
572 <!ELEMENT %mathml-sep;                EMPTY >
573 <!ATTLIST %mathml-sep;                %att-xmlns; >
574
575 <!-- Content elements: semantic mapping -->
576
577 <!ENTITY  % csemantics               '%mathml-semantics; | %mathml-annotation; |
578                                       %mathml-annotation;-xml' >
579
580 <!ATTLIST %mathml-semantics;          %att-definition;
581                                       %att-encoding;
582                                       %att-global; >
583
584 <!ATTLIST %mathml-annotation;         %att-encoding;
585                                       %att-global; >
586
587 <!ATTLIST %mathml-annotation-xml;     %att-encoding;
588                                       %att-global; >
589
590 <!-- Content elements: constructors -->
591
592 <!ENTITY  % cconstructor             '%mathml-interval; | %mathml-list; |
593                                       %mathml-matrix; | %mathml-matrixrow; |
594                                       %mathml-set; | %mathml-vector;' >
595
596 <!ATTLIST %mathml-interval;           %att-closure;
597                                       %att-global; >
598
599 <!ATTLIST %mathml-set;                %att-type;
600                                       %att-global; >
601
602 <!ATTLIST %mathml-list;               %att-order;
603                                       %att-global; >
604
605 <!ATTLIST %mathml-vector;             %att-global; >
606
607 <!ATTLIST %mathml-matrix;             %att-global; >
608
609 <!ATTLIST %mathml-matrixrow;          %att-global; >
610
611 <!-- Content elements: operators -->
612
613 <!ENTITY  % cfuncop1ary              '%mathml-inverse; | %mathml-ident;' >
614
615 <!ELEMENT %mathml-inverse;            EMPTY >
616 <!ATTLIST %mathml-inverse;            %att-definition;
617                                       %att-global; >
618
619 <!ENTITY  % cfuncopnary              '%mathml-fn; | %mathml-compose;' >
620
621 <!ATTLIST %mathml-fn;                 %att-definition;
622                                       %att-global; >
623
624 <!ELEMENT %mathml-ident;              EMPTY >
625 <!ATTLIST %mathml-ident;              %att-definition;
626                                       %att-global; >
627
628 <!ELEMENT %mathml-compose;            EMPTY >
629 <!ATTLIST %mathml-compose;            %att-definition;
630                                       %att-global; >
631
632 <!ENTITY  % carithop1ary             '%mathml-abs; | %mathml-conjugate; |
633                                       %mathml-exp; | %mathml-factorial; |
634                                       %mathml-arg; |
635                                       %mathml-real; | %mathml-imaginary;' >
636
637 <!ELEMENT %mathml-exp;                EMPTY >
638 <!ATTLIST %mathml-exp;                %att-definition;
639                                       %att-global; >
640
641 <!ELEMENT %mathml-abs;                EMPTY >
642 <!ATTLIST %mathml-abs;                %att-definition;
643                                       %att-global; >
644
645 <!ELEMENT %mathml-arg;                EMPTY >
646 <!ATTLIST %mathml-arg;                %att-definition;
647                                       %att-global; >
648
649 <!ELEMENT %mathml-real;               EMPTY >
650 <!ATTLIST %mathml-real;               %att-definition;
651                                       %att-global; >
652
653 <!ELEMENT %mathml-imaginary;          EMPTY >
654 <!ATTLIST %mathml-imaginary;          %att-definition;
655                                       %att-global; >
656
657 <!ELEMENT %mathml-conjugate;          EMPTY >
658 <!ATTLIST %mathml-conjugate;          %att-definition;
659                                       %att-global; >
660
661 <!ELEMENT %mathml-factorial;          EMPTY >
662 <!ATTLIST %mathml-factorial;          %att-definition;
663                                       %att-global; >
664
665 <!ENTITY  % carithop1or2ary          '%mathml-minus;' >
666
667 <!ELEMENT %mathml-minus;              EMPTY >
668 <!ATTLIST %mathml-minus;              %att-definition;
669                                       %att-global; >
670
671 <!ENTITY  % carithop2ary             '%mathml-quotient; |
672                                       %mathml-divide; |
673                                       %mathml-power; | %mathml-rem;' >
674
675 <!ELEMENT %mathml-quotient;           EMPTY >
676 <!ATTLIST %mathml-quotient;           %att-definition;
677                                       %att-global; >
678
679 <!ELEMENT %mathml-divide;             EMPTY >
680 <!ATTLIST %mathml-divide;             %att-definition;
681                                       %att-global; >
682
683 <!ELEMENT %mathml-power;              EMPTY >
684 <!ATTLIST %mathml-power;              %att-definition;
685                                       %att-global; >
686
687 <!ELEMENT %mathml-rem;                EMPTY >
688 <!ATTLIST %mathml-rem;                %att-definition;
689                                       %att-global; >
690
691 <!ENTITY  % carithopnary             '%mathml-plus; | %mathml-times; |
692                                       %mathml-max; | %mathml-min; | %mathml-gcd;' >
693
694 <!ELEMENT %mathml-plus;               EMPTY >
695 <!ATTLIST %mathml-plus;               %att-definition;
696                                       %att-global; >
697
698 <!ELEMENT %mathml-max;                EMPTY >
699 <!ATTLIST %mathml-max;                %att-definition;
700                                       %att-global; >
701
702 <!ELEMENT %mathml-min;                EMPTY >
703 <!ATTLIST %mathml-min;                %att-definition;
704                                       %att-global; >
705
706 <!ELEMENT %mathml-times;              EMPTY >
707 <!ATTLIST %mathml-times;              %att-definition;
708                                       %att-global; >
709
710 <!ELEMENT %mathml-gcd;                EMPTY >
711 <!ATTLIST %mathml-gcd;                %att-definition;
712                                       %att-global; >
713
714 <!ENTITY  % carithoproot             '%mathml-root;' >
715
716 <!ELEMENT %mathml-root;               EMPTY >
717 <!ATTLIST %mathml-root;               %att-definition;
718                                       %att-global; >
719
720 <!ENTITY  % clogicopquant            '%mathml-exists; | %mathml-forall;' >
721
722 <!ELEMENT %mathml-exists;             EMPTY >
723 <!ATTLIST %mathml-exists;             %att-definition;
724                                       %att-global; >
725
726 <!ELEMENT %mathml-forall;             EMPTY >
727 <!ATTLIST %mathml-forall;             %att-definition;
728                                       %att-global; >
729
730 <!ENTITY  % clogicopnary             '%mathml-and; | %mathml-or; | %mathml-xor;' >
731
732 <!ELEMENT %mathml-and;                EMPTY >
733 <!ATTLIST %mathml-and;                %att-definition;
734                                       %att-global; >
735
736 <!ELEMENT %mathml-or;                 EMPTY >
737 <!ATTLIST %mathml-or;                 %att-definition;
738                                       %att-global; >
739
740 <!ELEMENT %mathml-xor;                EMPTY >
741 <!ATTLIST %mathml-xor;                %att-definition;
742                                       %att-global; >
743
744 <!ENTITY  % clogicop1ary             '%mathml-not;' >
745
746 <!ELEMENT %mathml-not;                EMPTY >
747 <!ATTLIST %mathml-not;                %att-definition;
748                                       %att-global; >
749
750 <!ENTITY  % clogicop2ary             '%mathml-implies;' >
751
752 <!ELEMENT %mathml-implies;            EMPTY >
753 <!ATTLIST %mathml-implies;            %att-definition;
754                                       %att-global; >
755
756 <!ENTITY  % ccalcop                  '%mathml-log; | %mathml-int; |
757                                       %mathml-diff; | %mathml-partialdiff; |
758                                       %mathml-divergence; |
759                                       %mathml-grad; | %mathml-curl; |
760                                       %mathml-laplacian;' >
761
762 <!ELEMENT %mathml-divergence;         EMPTY >
763 <!ATTLIST %mathml-divergence;         %att-definition;
764                                       %att-global; >
765
766 <!ELEMENT %mathml-grad;               EMPTY >
767 <!ATTLIST %mathml-grad;               %att-definition;
768                                       %att-global; >
769
770 <!ELEMENT %mathml-curl;               EMPTY >
771 <!ATTLIST %mathml-curl;               %att-definition;
772                                       %att-global; >
773
774 <!ELEMENT %mathml-laplacian;          EMPTY >
775 <!ATTLIST %mathml-laplacian;          %att-definition;
776                                       %att-global; >
777
778 <!ELEMENT %mathml-log;                EMPTY >
779 <!ATTLIST %mathml-log;                %att-definition;
780                                       %att-global; >
781
782 <!ELEMENT %mathml-int;                EMPTY >
783 <!ATTLIST %mathml-int;                %att-definition;
784                                       %att-global; >
785
786 <!ELEMENT %mathml-diff;               EMPTY >
787 <!ATTLIST %mathml-diff;               %att-definition;
788                                       %att-global; >
789
790 <!ELEMENT %mathml-partialdiff;        EMPTY >
791 <!ATTLIST %mathml-partialdiff;        %att-definition;
792                                       %att-global; >
793
794 <!ENTITY  % ccalcop1ary              '%mathml-ln;' >
795
796 <!ELEMENT %mathml-ln;                 EMPTY >
797 <!ATTLIST %mathml-ln;                 %att-definition;
798                                       %att-global; >
799
800 <!ENTITY  % csetop1ary               '%mathml-card;' >
801
802
803 <!ELEMENT %mathml-card;               EMPTY >
804 <!ATTLIST %mathml-card;               %att-definition;
805                                       %att-global; >
806
807 <!ENTITY  % csetop2ary               '%mathml-setdiff;' >
808
809 <!ELEMENT %mathml-setdiff;            EMPTY >
810 <!ATTLIST %mathml-setdiff;            %att-definition;
811                                       %att-global; >
812
813 <!ENTITY  % csetopnary               '%mathml-union; | %mathml-intersect;' >
814
815 <!ELEMENT %mathml-union;              EMPTY >
816 <!ATTLIST %mathml-union;              %att-definition;
817                                       %att-global; >
818
819 <!ELEMENT %mathml-intersect;          EMPTY >
820 <!ATTLIST %mathml-intersect;          %att-definition;
821                                       %att-global; >
822
823 <!ENTITY  % cseqop                   '%mathml-sum; | %mathml-product; | %mathml-limit;' >
824
825 <!ELEMENT %mathml-sum;                EMPTY >
826 <!ATTLIST %mathml-sum;                %att-definition;
827                                       %att-global; >
828
829 <!ELEMENT %mathml-product;            EMPTY >
830 <!ATTLIST %mathml-product;            %att-definition;
831                                       %att-global; >
832
833 <!ELEMENT %mathml-limit;              EMPTY >
834 <!ATTLIST %mathml-limit;              %att-definition;
835                                       %att-global; >
836
837 <!ENTITY  % ctrigop                  '%mathml-sin; | %mathml-cos; |
838                                       %mathml-tan; | %mathml-sec; | %mathml-csc; |
839                                       %mathml-cot; | %mathml-sinh; |
840                                       %mathml-cosh; | %mathml-tanh; |
841                                       %mathml-sech; | %mathml-csch; |
842                                       %mathml-coth; | %mathml-arcsin; |
843                                       %mathml-arccos; | %mathml-arctan;' >
844
845 <!ELEMENT %mathml-sin;                EMPTY >
846 <!ATTLIST %mathml-sin;                %att-definition;
847                                       %att-global; >
848
849 <!ELEMENT %mathml-cos;                EMPTY >
850 <!ATTLIST %mathml-cos;                %att-definition;
851                                       %att-global; >
852
853 <!ELEMENT %mathml-tan;                EMPTY >
854 <!ATTLIST %mathml-tan;                %att-definition;
855                                       %att-global; >
856
857 <!ELEMENT %mathml-sec;                EMPTY >
858 <!ATTLIST %mathml-sec;                %att-definition;
859                                       %att-global; >
860
861 <!ELEMENT %mathml-csc;                EMPTY >
862 <!ATTLIST %mathml-csc;                %att-definition;
863                                       %att-global; >
864
865 <!ELEMENT %mathml-cot;                EMPTY >
866 <!ATTLIST %mathml-cot;                %att-definition;
867                                       %att-global; >
868
869 <!ELEMENT %mathml-sinh;               EMPTY >
870 <!ATTLIST %mathml-sinh;               %att-definition;
871                                       %att-global; >
872
873 <!ELEMENT %mathml-cosh;               EMPTY >
874 <!ATTLIST %mathml-cosh;               %att-definition;
875                                       %att-global; >
876
877 <!ELEMENT %mathml-tanh;               EMPTY >
878 <!ATTLIST %mathml-tanh;               %att-definition;
879                                       %att-global; >
880
881 <!ELEMENT %mathml-sech;               EMPTY >
882 <!ATTLIST %mathml-sech;               %att-definition;
883                                       %att-global; >
884
885 <!ELEMENT %mathml-csch;               EMPTY >
886 <!ATTLIST %mathml-csch;               %att-definition;
887                                       %att-global; >
888
889 <!ELEMENT %mathml-coth;               EMPTY >
890 <!ATTLIST %mathml-coth;               %att-definition;
891                                       %att-global; >
892
893 <!ELEMENT %mathml-arcsin;             EMPTY >
894 <!ATTLIST %mathml-arcsin;             %att-definition;
895                                       %att-global; >
896
897 <!ELEMENT %mathml-arccos;             EMPTY >
898 <!ATTLIST %mathml-arccos;             %att-definition;
899                                       %att-global; >
900
901 <!ELEMENT %mathml-arctan;             EMPTY >
902 <!ATTLIST %mathml-arctan;             %att-definition;
903                                       %att-global; >
904
905 <!ENTITY  % cstatopnary              '%mathml-mean; | %mathml-sdev; |
906                                       %mathml-variance; | %mathml-median; |
907                                       %mathml-mode;' >
908
909 <!ELEMENT %mathml-mean;               EMPTY >
910 <!ATTLIST %mathml-mean;               %att-definition;
911                                       %att-global; >
912
913 <!ELEMENT %mathml-sdev;               EMPTY >
914 <!ATTLIST %mathml-sdev;               %att-definition;
915                                       %att-global; >
916
917 <!ELEMENT %mathml-variance;           EMPTY >
918 <!ATTLIST %mathml-variance;           %att-definition;
919                                       %att-global; >
920
921 <!ELEMENT %mathml-median;             EMPTY >
922 <!ATTLIST %mathml-median;             %att-definition;
923                                       %att-global; >
924
925 <!ELEMENT %mathml-mode;               EMPTY >
926 <!ATTLIST %mathml-mode;               %att-definition;
927                                       %att-global; >
928
929 <!ENTITY  % cstatopmoment            '%mathml-moment;' >
930
931 <!ELEMENT %mathml-moment;             EMPTY >
932 <!ATTLIST %mathml-moment;             %att-definition;
933                                       %att-global; >
934
935 <!ENTITY  % clalgop1ary              '%mathml-determinant; |
936                                       %mathml-transpose;' >
937
938 <!ELEMENT %mathml-determinant;        EMPTY >
939 <!ATTLIST %mathml-determinant;        %att-definition;
940                                       %att-global; >
941
942 <!ELEMENT %mathml-transpose;          EMPTY >
943 <!ATTLIST %mathml-transpose;          %att-definition;
944                                       %att-global; >
945
946 <!ENTITY  % clalgop2ary              '%mathml-vectorproduct; |
947                                       %mathml-scalarproduct; |
948                                       %mathml-outerproduct;' >
949
950 <!ELEMENT %mathml-vectorproduct;      EMPTY >
951 <!ATTLIST %mathml-vectorproduct;      %att-definition;
952                                       %att-global; >
953
954 <!ELEMENT %mathml-scalarproduct;      EMPTY >
955 <!ATTLIST %mathml-scalarproduct;      %att-definition;
956                                       %att-global; >
957
958 <!ELEMENT %mathml-outerproduct;       EMPTY >
959 <!ATTLIST %mathml-outerproduct;       %att-definition;
960                                       %att-global; >
961
962 <!ENTITY  % clalgopnary              '%mathml-selector;' >
963
964 <!ELEMENT %mathml-selector;           EMPTY >
965 <!ATTLIST %mathml-selector;           %att-definition;
966                                       %att-global; >
967
968 <!-- Content elements: relations -->
969
970 <!ENTITY  % cgenrel2ary              '%mathml-neq;' >
971
972 <!ELEMENT %mathml-neq;                EMPTY >
973 <!ATTLIST %mathml-neq;                %att-definition;
974                                       %att-global; >
975
976 <!ENTITY  % cgenrelnary              '%mathml-eq; | %mathml-leq; |
977                                       %mathml-lt; | %mathml-geq; |
978                                       %mathml-gt;| %mathml-equivalent; |
979                                       %mathml-approx;' >
980
981 <!ELEMENT %mathml-eq;                 EMPTY >
982 <!ATTLIST %mathml-eq;                 %att-definition;
983                                       %att-global; >
984
985 <!ELEMENT %mathml-equivalent;         EMPTY >
986 <!ATTLIST %mathml-equivalent;         %att-definition;
987                                       %att-global; >
988
989 <!ELEMENT %mathml-approx;             EMPTY >
990 <!ATTLIST %mathml-approx;             %att-definition;
991                                       %att-global; >
992
993 <!ELEMENT %mathml-gt;                 EMPTY >
994 <!ATTLIST %mathml-gt;                 %att-definition;
995                                       %att-global; >
996
997 <!ELEMENT %mathml-lt;                 EMPTY >
998 <!ATTLIST %mathml-lt;                 %att-definition;
999                                       %att-global; >
1000
1001 <!ELEMENT %mathml-geq;                EMPTY >
1002 <!ATTLIST %mathml-geq;                %att-definition;
1003                                       %att-global; >
1004
1005 <!ELEMENT %mathml-leq;                EMPTY >
1006 <!ATTLIST %mathml-leq;                %att-definition;
1007                                       %att-global; >
1008
1009 <!ENTITY  % csetrel2ary              '%mathml-in; | %mathml-notin; |
1010                                       %mathml-notsubset; |
1011                                       %mathml-notprsubset;' >
1012
1013 <!ELEMENT %mathml-in;                 EMPTY >
1014 <!ATTLIST %mathml-in;                 %att-definition;
1015                                       %att-global; >
1016
1017 <!ELEMENT %mathml-notin;              EMPTY >
1018 <!ATTLIST %mathml-notin;              %att-definition;
1019                                       %att-global; >
1020
1021 <!ELEMENT %mathml-notsubset;          EMPTY >
1022 <!ATTLIST %mathml-notsubset;          %att-definition;
1023                                       %att-global; >
1024
1025 <!ELEMENT %mathml-notprsubset;        EMPTY >
1026 <!ATTLIST %mathml-notprsubset;        %att-definition;
1027                                       %att-global; >
1028
1029 <!ENTITY  % csetrelnary              '%mathml-subset; | %mathml-prsubset;' >
1030
1031 <!ELEMENT %mathml-subset;             EMPTY >
1032 <!ATTLIST %mathml-subset;             %att-definition;
1033                                       %att-global; >
1034
1035 <!ELEMENT %mathml-prsubset;           EMPTY >
1036 <!ATTLIST %mathml-prsubset;           %att-definition;
1037                                       %att-global; >
1038
1039 <!ENTITY  % cseqrel2ary              '%mathml-tendsto;' >
1040
1041 <!ELEMENT %mathml-tendsto;            EMPTY >
1042 <!ATTLIST %mathml-tendsto;            %att-definition;
1043                                       %att-type;
1044                                       %att-global; >
1045
1046 <!-- Content elements: quantifiers -->
1047
1048 <!ENTITY  % cquantifier              '%mathml-lowlimit; |
1049                                       %mathml-uplimit; | %mathml-bvar; |
1050                                       %mathml-degree; | %mathml-logbase;' >
1051
1052 <!ATTLIST %mathml-lowlimit;           %att-global; >
1053
1054 <!ATTLIST %mathml-uplimit;            %att-global; >
1055
1056 <!ATTLIST %mathml-bvar;               %att-global; >
1057
1058 <!ATTLIST %mathml-degree;             %att-global; >
1059
1060 <!ATTLIST %mathml-logbase;            %att-global; >
1061
1062 <!-- Operator groups -->
1063
1064 <!ENTITY  % cop1ary                  '%cfuncop1ary; | %carithop1ary; | %clogicop1ary; |
1065                                       %ccalcop1ary; | %ctrigop; | %clalgop1ary; |
1066                                       %csetop1ary;' >
1067
1068 <!ENTITY  % cop2ary                  '%carithop2ary; | %clogicop2ary;|
1069                                       %clalgop2ary; | %csetop2ary;' >
1070
1071 <!ENTITY  % copnary                  '%cfuncopnary; | %carithopnary; | %clogicopnary; |
1072                                       %csetopnary; | %cstatopnary; | %clalgopnary;' >
1073
1074 <!ENTITY  % copmisc                  '%carithoproot; | %carithop1or2ary; | %ccalcop; |
1075                                       %cseqop; | %cstatopmoment; | %clogicopquant;' >
1076
1077 <!-- Relation groups -->
1078
1079 <!ENTITY  % crel2ary                 '%cgenrel2ary; | %csetrel2ary; | %cseqrel2ary;' >
1080
1081 <!ENTITY  % crelnary                 '%cgenrelnary; | %csetrelnary;' >
1082
1083 <!-- Content constructs: all -->
1084
1085 <!ENTITY  % Content                  '%ctoken; | %cspecial; | %cother; | %csemantics; |
1086                                       %cconstructor; | %cquantifier; |
1087                                       %cop1ary; |%cop2ary; |%copnary; |%copmisc; |
1088                                       %crel2ary; |%crelnary;' >
1089
1090 <!-- Content constructs for substitution in presentation structures -->
1091
1092 <!ENTITY  % ContInPres               '%mathml-ci; |%mathml-csymbol;| %mathml-cn;|
1093                                       %mathml-apply; | %mathml-fn; |
1094                                       %mathml-lambda; | %mathml-reln; |
1095                                       %mathml-interval; | %mathml-list; |
1096                                       %mathml-matrix; | %mathml-matrixrow; |
1097                                       %mathml-set; | %mathml-vector; |
1098                                       %mathml-semantics; |%mathml-declare;' >
1099
1100 <!-- ************************************************************************ -->
1101 <!-- Recursive definition for content of expressions.                         -->
1102 <!-- Include presentation constructs at lowest level so presentation          -->
1103 <!-- layout schemata hold presentation or content elements.                   -->
1104 <!-- Include content constructs at lowest level so content elements           -->
1105 <!-- hold PCDATA or presentation elements at leaf level (for permitted        -->
1106 <!-- substitutable elements in context)                                       -->
1107 <!-- ************************************************************************ -->
1108
1109 <!ENTITY  % ContentExpression        '(%Content; | %PresInCont;)*' >
1110 <!ENTITY  % PresExpression           '(%Presentation; | %ContInPres;)*' >
1111 <!ENTITY  % MathExpression           '(%PresInCont; | %ContInPres;)*' >
1112
1113 <!-- PCDATA or MathML character elements -->
1114 <!ENTITY  % MathMLCharacters           '#PCDATA |
1115                                         %mathml-mchar; |
1116                                         %mathml-mglyph; ' >
1117
1118 <!-- Content elements: tokens                       -->
1119 <!-- (may contain embedded presentation constructs) -->
1120
1121 <!ELEMENT %mathml-ci;                 (%MathMLCharacters; | %PresInCont;)* >
1122 <!ELEMENT %mathml-csymbol;            (%MathMLCharacters; | %PresInCont;)* >
1123 <!ELEMENT %mathml-cn;                 (%MathMLCharacters; | %mathml-sep; | %PresInCont;)* >
1124
1125 <!-- Content elements: special -->
1126
1127 <!ELEMENT %mathml-apply;              (%ContentExpression;) >
1128 <!ELEMENT %mathml-reln;               (%ContentExpression;) >
1129 <!ELEMENT %mathml-lambda;             (%ContentExpression;) >
1130
1131 <!-- Content elements: other -->
1132
1133 <!ELEMENT %mathml-condition;          (%ContentExpression;) >
1134 <!ELEMENT %mathml-declare;            (%ContentExpression;) >
1135
1136 <!-- Content elements: semantics -->
1137
1138 <!ELEMENT %mathml-semantics;          (%ContentExpression;) >
1139 <!ELEMENT %mathml-annotation;         (#PCDATA) >
1140 <!ELEMENT %mathml-annotation-xml;     ANY >
1141
1142 <!-- Content elements: constructors -->
1143
1144 <!ELEMENT %mathml-interval;           (%ContentExpression;) >
1145 <!ELEMENT %mathml-set;                (%ContentExpression;) >
1146 <!ELEMENT %mathml-list;               (%ContentExpression;) >
1147 <!ELEMENT %mathml-vector;             (%ContentExpression;) >
1148 <!ELEMENT %mathml-matrix;             (%ContentExpression;) >
1149 <!ELEMENT %mathml-matrixrow;          (%ContentExpression;) >
1150
1151 <!-- Content elements: operator (user-defined) -->
1152
1153 <!ELEMENT %mathml-fn;                 (%ContentExpression;) >
1154
1155 <!-- Content elements: quantifiers -->
1156
1157 <!ELEMENT %mathml-lowlimit;           (%ContentExpression;) >
1158 <!ELEMENT %mathml-uplimit;            (%ContentExpression;) >
1159 <!ELEMENT %mathml-bvar;               (%ContentExpression;) >
1160 <!ELEMENT %mathml-degree;             (%ContentExpression;) >
1161 <!ELEMENT %mathml-logbase;            (%ContentExpression;) >
1162
1163 <!-- ************************************************************************ -->
1164 <!-- Presentation layout schemata contain tokens,                             -->
1165 <!-- layout and content schemata.                                             -->
1166 <!-- ************************************************************************ -->
1167
1168 <!ELEMENT %mathml-mstyle;             (%PresExpression;) >
1169 <!ELEMENT %mathml-merror;             (%PresExpression;) >
1170 <!ELEMENT %mathml-mphantom;           (%PresExpression;) >
1171 <!ELEMENT %mathml-mrow;               (%PresExpression;) >
1172 <!ELEMENT %mathml-mfrac;              (%PresExpression;) >
1173 <!ELEMENT %mathml-msqrt;              (%PresExpression;) >
1174 <!ELEMENT %mathml-menclose;           (%PresExpression;) >
1175 <!ELEMENT %mathml-mroot;              (%PresExpression;) >
1176 <!ELEMENT %mathml-msub;               (%PresExpression;) >
1177 <!ELEMENT %mathml-msup;               (%PresExpression;) >
1178 <!ELEMENT %mathml-msubsup;            (%PresExpression;) >
1179 <!ELEMENT %mathml-mmultiscripts;      (%PresExpression;) >
1180 <!ELEMENT %mathml-munder;             (%PresExpression;) >
1181 <!ELEMENT %mathml-mover;              (%PresExpression;) >
1182 <!ELEMENT %mathml-munderover;         (%PresExpression;) >
1183 <!ELEMENT %mathml-mtable;             (%PresExpression;) >
1184 <!ELEMENT %mathml-mtr;                (%PresExpression;) >
1185 <!ELEMENT %mathml-mlabeledtr;         (%PresExpression;) >
1186 <!ELEMENT %mathml-mtd;                (%PresExpression;) >
1187 <!ELEMENT %mathml-maction;            (%PresExpression;) >
1188 <!ELEMENT %mathml-mfenced;            (%PresExpression;) >
1189 <!ELEMENT %mathml-mpadded;            (%PresExpression;) >
1190
1191 <!-- Presentation elements contain PCDATA or malignmark constructs. -->
1192
1193 <!ELEMENT %mathml-mi;                 (%MathMLCharacters; |
1194                                        %mathml-malignmark;)* >
1195 <!ELEMENT %mathml-mn;                 (%MathMLCharacters; |
1196                                        %mathml-malignmark;)* >
1197 <!ELEMENT %mathml-mo;                 (%MathMLCharacters; |
1198                                        %mathml-malignmark;)* >
1199 <!ELEMENT %mathml-mtext;              (%MathMLCharacters; |
1200                                        %mathml-malignmark;)* >
1201 <!ELEMENT %mathml-ms;                 (%MathMLCharacters; |
1202                                        %mathml-malignmark;)* >
1203
1204 <!-- ************************************************************************ -->
1205 <!-- Browser interface definition                                             -->
1206 <!-- ************************************************************************ -->
1207
1208 <!-- Attributes for top-level element 'math' -->
1209
1210 <!ENTITY  % att-macros               'macros CDATA #IMPLIED' >
1211 <!ENTITY  % att-mode                 'mode   CDATA #IMPLIED' >
1212
1213 <!ENTITY  % att-topinfo              '%att-global;
1214                                       %att-macros;
1215                                       %att-mode;' >
1216
1217 <!-- Attributes for browser interface element -->
1218
1219 <!ENTITY  % att-baseline             'baseline CDATA #IMPLIED' >
1220 <!ENTITY  % att-overflow             'overflow (scroll|elide|truncate|scale) "scroll"' >
1221 <!ENTITY  % att-altimg               'altimg CDATA #IMPLIED' >
1222 <!ENTITY  % att-alttext              'alttext CDATA #IMPLIED' >
1223
1224 <!ENTITY  % att-browif               '%att-type;
1225                                       %att-name;
1226                                       %att-height;
1227                                       %att-width;
1228                                       %att-baseline;
1229                                       %att-overflow;
1230                                       %att-altimg;
1231                                       %att-alttext;' >
1232
1233 <!-- ************************************************************************ -->
1234 <!-- The top-level element 'math' contains MathML encoded mathematics.        -->
1235 <!-- The 'math' element has the browser info attributes iff it is             -->
1236 <!-- also the browser interface element.                                      -->
1237 <!-- ************************************************************************ -->
1238
1239 <!ELEMENT %mathml-math;               (%MathExpression;) >
1240
1241 <!ATTLIST %mathml-math;               %att-topinfo;
1242                                       %att-browif; >
1243
1244 <!-- id parsing:chars -->
1245 <!-- ************************************************************************ -->
1246 <!-- Entity sets from ISO Technical Report 9573-13                            -->
1247 <!-- ************************************************************************ -->
1248
1249 <!ENTITY  % ent-isoamsa PUBLIC
1250     "-//W3C//ENTITIES Added Math Symbols: Arrow Relations for MathML 2.0//EN"
1251     "isoamsa.ent" >
1252 %ent-isoamsa;
1253
1254 <!ENTITY  % ent-isoamsb PUBLIC
1255     "-//W3C//ENTITIES Added Math Symbols: Binary Operators for MathML 2.0//EN"
1256     "isoamsb.ent" >
1257 %ent-isoamsb;
1258
1259 <!ENTITY  % ent-isoamsc PUBLIC
1260     "-//W3C//ENTITIES Added Math Symbols: Delimiters for MathML 2.0//EN"
1261     "isoamsc.ent" >
1262 %ent-isoamsc;
1263
1264 <!ENTITY  % ent-isoamsn PUBLIC
1265     "-//W3C//ENTITIES Added Math Symbols: Negated Relations for MathML 2.0//EN"
1266     "isoamsn.ent" >
1267 %ent-isoamsn;
1268
1269 <!ENTITY  % ent-isoamso PUBLIC
1270     "-//W3C//ENTITIES Added Math Symbols: Ordinary for MathML 2.0//EN"
1271     "isoamso.ent" >
1272 %ent-isoamso;
1273
1274 <!ENTITY  % ent-isoamsr PUBLIC
1275     "-//W3C//ENTITIES Added Math Symbols: Relations for MathML 2.0//EN"
1276     "isoamsr.ent" >
1277 %ent-isoamsr;
1278
1279 <!ENTITY  % ent-isogrk3 PUBLIC
1280     "-//W3C//ENTITIES Greek Symbols for MathML 2.0//EN"
1281     "isogrk3.ent" >
1282 %ent-isogrk3;
1283
1284 <!ENTITY  % ent-isomfrk PUBLIC
1285     "-//W3C//ENTITIES Math Alphabets: Fraktur for MathML 2.0//EN"
1286     "isomfrk.ent" >
1287 %ent-isomfrk;
1288
1289 <!ENTITY  % ent-isomopf PUBLIC
1290     "-//W3C//ENTITIES Math Alphabets: Open Face for MathML 2.0//EN"
1291     "isomopf.ent" >
1292 %ent-isomopf;
1293
1294 <!ENTITY  % ent-isomscr PUBLIC
1295     "-//W3C//ENTITIES Math Alphabets: Script for MathML 2.0//EN"
1296     "isomscr.ent" >
1297 %ent-isomscr;
1298
1299 <!ENTITY  % ent-isotech PUBLIC
1300     "-//W3C//ENTITIES General Technical for MathML 2.0//EN"
1301     "isotech.ent" >
1302 %ent-isotech;
1303
1304 <!-- ************************************************************************ -->
1305 <!-- Entity sets from informative annex to                                    -->
1306 <!-- ISO Standard 8879:1986 (the SGML standard)                               -->
1307 <!-- ************************************************************************ -->
1308
1309 <!ENTITY  % ent-isobox  PUBLIC
1310     "-//W3C//ENTITIES Box and Line Drawing for MathML 2.0//EN"
1311     "isobox.ent" >
1312 %ent-isobox;
1313
1314 <!ENTITY  % ent-isocyr1 PUBLIC
1315     "-//W3C//ENTITIES Russian Cyrillic for MathML 2.0//EN"
1316     "isocyr1.ent" >
1317 %ent-isocyr1;
1318
1319 <!ENTITY  % ent-isocyr2 PUBLIC
1320     "-//W3C//ENTITIES Non-Russian Cyrillic for MathML 2.0//EN"
1321     "isocyr2.ent" >
1322 %ent-isocyr2;
1323
1324 <!ENTITY  % ent-isodia  PUBLIC
1325     "-//W3C//ENTITIES Diacritical Marks for MathML 2.0//EN"
1326     "isodia.ent" >
1327 %ent-isodia;
1328
1329
1330 <!ENTITY  % ent-isolat1 PUBLIC
1331     "-//W3C//ENTITIES Added Latin 1 for MathML 2.0//EN"
1332     "isolat1.ent" >
1333 %ent-isolat1;
1334
1335 <!ENTITY  % ent-isolat2 PUBLIC
1336     "-//W3C//ENTITIES Added Latin 2 for MathML 2.0//EN"
1337     "isolat2.ent" >
1338 %ent-isolat2;
1339
1340 <!ENTITY  % ent-isonum PUBLIC
1341     "-//W3C//ENTITIES Numeric and Special Graphic for MathML 2.0//EN"
1342     "isonum.ent" >
1343 %ent-isonum;
1344
1345 <!ENTITY  % ent-isopub PUBLIC
1346     "-//W3C//ENTITIES Publishing for MathML 2.0//EN"
1347     "isopub.ent" >
1348 %ent-isopub;
1349
1350 <!-- ************************************************************************ -->
1351 <!-- MathML aliases for characters defined above                              -->
1352 <!-- ************************************************************************ -->
1353
1354 <!ENTITY  % ent-mmlalias  PUBLIC
1355     "-//W3C//ENTITIES Aiases for MathML 2.0//EN"
1356     "mmlalias.ent" >
1357 %ent-mmlalias;
1358
1359 <!-- ************************************************************************ -->
1360 <!-- New characters defined by MathML                                         -->
1361 <!-- ************************************************************************ -->
1362
1363 <!ENTITY  % ent-mmlextra PUBLIC
1364     "-//W3C//ENTITIES Extra for MathML 2.0//EN"
1365     "mmlextra.ent" >
1366 %ent-mmlextra;
1367
1368 <!-- end of DTD fragment -->