xref: /aoo41x/main/MathMLDTD/math.dtd (revision cdf0e10c)
1*cdf0e10cSrcweir<!-- Copyright 1997-1999  World Wide Web Consortium,    -->
2*cdf0e10cSrcweir<!-- (Massachusetts Institute of Technology,            -->
3*cdf0e10cSrcweir<!--  Institut National de Recherche en Informatique et en Automatique, -->
4*cdf0e10cSrcweir<!--  Keio University). All Rights Reserved.            -->
5*cdf0e10cSrcweir<!-- http://www.w3.org/Consortium/Legal/                -->
6*cdf0e10cSrcweir
7*cdf0e10cSrcweir<!-- Modified DTD for MathML 1.01                       -->
8*cdf0e10cSrcweir<!--                                                    -->
9*cdf0e10cSrcweir<!-- Original DTD:                                      -->
10*cdf0e10cSrcweir<!--    http://www.w3.org/1999/07/REC-MathML-19990707/mmlents.zip  -->
11*cdf0e10cSrcweir<!--                                                    -->
12*cdf0e10cSrcweir<!-- modified 20. June 2001:                            -->
13*cdf0e10cSrcweir<!-- 1) added "math:" namespace prefix                  -->
14*cdf0e10cSrcweir<!-- 2) removed entity include files                    -->
15*cdf0e10cSrcweir<!-- 3) added copyright notice above to comply with     -->
16*cdf0e10cSrcweir<!--    W3C IPR Software Notice                         -->
17*cdf0e10cSrcweir<!-- 4) added this comment block                        -->
18*cdf0e10cSrcweir<!-- Modifications are intended to ease validation      -->
19*cdf0e10cSrcweir<!-- of MathML files written by StarMath 6.0            -->
20*cdf0e10cSrcweir
21*cdf0e10cSrcweir
22*cdf0e10cSrcweir<!-- Content model for content and presentation        -->
23*cdf0e10cSrcweir<!--  and browser interface tags in MathML              -->
24*cdf0e10cSrcweir<!-- initial draft 9.May.1997          syntax = XML     -->
25*cdf0e10cSrcweir<!-- author = s.buswell sb@stilo.demon.co.uk            -->
26*cdf0e10cSrcweir<!--                                                    -->
27*cdf0e10cSrcweir<!-- revised 14.May.1997 by Robert Miner                -->
28*cdf0e10cSrcweir<!-- revised 29.June.1997 and 2.July.1997 by s.buswell  -->
29*cdf0e10cSrcweir<!--                                                    -->
30*cdf0e10cSrcweir<!-- revised 15.December.1997  by s.buswell             -->
31*cdf0e10cSrcweir<!-- revised 8.February.1998   by s.buswell             -->
32*cdf0e10cSrcweir<!-- revised 4.april.1998      by s.buswell             -->
33*cdf0e10cSrcweir<!-- 21.February.1999 entities and small revisions by d.carlisle    -->
34*cdf0e10cSrcweir<!--                                                    -->
35*cdf0e10cSrcweir<!-- W3C Recommendation      7 April 1998                               -->
36*cdf0e10cSrcweir<!-- *************************************************  -->
37*cdf0e10cSrcweir
38*cdf0e10cSrcweir<!-- general attribute definitions for class & style & id & other -->
39*cdf0e10cSrcweir<!-- : attributes shared by all mathml elements        -->
40*cdf0e10cSrcweir
41*cdf0e10cSrcweir<!ENTITY % att-globalatts      'math:class CDATA #IMPLIED
42*cdf0e10cSrcweir                                 math:style CDATA #IMPLIED
43*cdf0e10cSrcweir                                 math:id    ID    #IMPLIED
44*cdf0e10cSrcweir                                 math:other CDATA #IMPLIED'  >
45*cdf0e10cSrcweir
46*cdf0e10cSrcweir<!-- *************************************************  -->
47*cdf0e10cSrcweir<!-- Presentation element set                           -->
48*cdf0e10cSrcweir
49*cdf0e10cSrcweir<!-- presentation attribute definitions -->
50*cdf0e10cSrcweir
51*cdf0e10cSrcweir<!ENTITY % att-fontsize        'math:fontsize CDATA #IMPLIED'             >
52*cdf0e10cSrcweir<!ENTITY % att-fontweight      'math:fontweight (normal | bold) #IMPLIED'  >
53*cdf0e10cSrcweir<!ENTITY % att-fontstyle       'math:fontstyle (normal | italic) #IMPLIED' >
54*cdf0e10cSrcweir<!ENTITY % att-fontfamily      'math:fontfamily CDATA   #IMPLIED'         >
55*cdf0e10cSrcweir<!ENTITY % att-color           'math:color CDATA   #IMPLIED'              >
56*cdf0e10cSrcweir
57*cdf0e10cSrcweir<!ENTITY % att-fontinfo      '%att-fontsize;
58*cdf0e10cSrcweir                             %att-fontweight;
59*cdf0e10cSrcweir                             %att-fontstyle;
60*cdf0e10cSrcweir                             %att-fontfamily;
61*cdf0e10cSrcweir                             %att-color;'  >
62*cdf0e10cSrcweir
63*cdf0e10cSrcweir<!ENTITY % att-form        'math:form (prefix | infix | postfix) #IMPLIED' >
64*cdf0e10cSrcweir<!ENTITY % att-fence       'math:fence (true | false ) #IMPLIED'    >
65*cdf0e10cSrcweir<!ENTITY % att-separator   'math:separator (true | false ) #IMPLIED'    >
66*cdf0e10cSrcweir<!ENTITY % att-lspace      'math:lspace CDATA  #IMPLIED'       >
67*cdf0e10cSrcweir<!ENTITY % att-rspace      'math:rspace CDATA  #IMPLIED'       >
68*cdf0e10cSrcweir<!ENTITY % att-stretchy    'math:stretchy (true | false ) #IMPLIED'     >
69*cdf0e10cSrcweir<!ENTITY % att-symmetric   'math:symmetric (true | false ) #IMPLIED'    >
70*cdf0e10cSrcweir<!ENTITY % att-maxsize     'math:maxsize CDATA #IMPLIED'       >
71*cdf0e10cSrcweir<!ENTITY % att-minsize     'math:minsize CDATA #IMPLIED'       >
72*cdf0e10cSrcweir<!ENTITY % att-largeop           'math:largeop (true | false ) #IMPLIED' >
73*cdf0e10cSrcweir<!ENTITY % att-movablelimits     'math:movablelimits (true | false )
74*cdf0e10cSrcweir#IMPLIED' >
75*cdf0e10cSrcweir<!ENTITY % att-accent               'math:accent (true | false)  #IMPLIED'>
76*cdf0e10cSrcweir
77*cdf0e10cSrcweir<!ENTITY % att-opinfo '%att-form;
78*cdf0e10cSrcweir                        %att-fence;
79*cdf0e10cSrcweir                        %att-separator;
80*cdf0e10cSrcweir                        %att-lspace;
81*cdf0e10cSrcweir                        %att-rspace;
82*cdf0e10cSrcweir                        %att-stretchy;
83*cdf0e10cSrcweir                        %att-symmetric;
84*cdf0e10cSrcweir                        %att-maxsize;
85*cdf0e10cSrcweir                        %att-minsize;
86*cdf0e10cSrcweir                        %att-largeop;
87*cdf0e10cSrcweir                        %att-movablelimits;
88*cdf0e10cSrcweir                        %att-accent;'         >
89*cdf0e10cSrcweir
90*cdf0e10cSrcweir<!ENTITY % att-width             'math:width CDATA #IMPLIED'   >
91*cdf0e10cSrcweir<!ENTITY % att-height            'math:height CDATA #IMPLIED' >
92*cdf0e10cSrcweir<!ENTITY % att-depth             'math:depth CDATA #IMPLIED'   >
93*cdf0e10cSrcweir
94*cdf0e10cSrcweir<!ENTITY % att-sizeinfo          '%att-width;
95*cdf0e10cSrcweir                                  %att-height;
96*cdf0e10cSrcweir                                  %att-depth;'          >
97*cdf0e10cSrcweir
98*cdf0e10cSrcweir<!ENTITY % att-lquote              'math:lquote CDATA #IMPLIED'   >
99*cdf0e10cSrcweir<!ENTITY % att-rquote              'math:rquote CDATA #IMPLIED'   >
100*cdf0e10cSrcweir
101*cdf0e10cSrcweir<!ENTITY % att-linethickness        'math:linethickness CDATA #IMPLIED' >
102*cdf0e10cSrcweir
103*cdf0e10cSrcweir<!ENTITY % att-scriptlevel          'math:scriptlevel CDATA #IMPLIED'>
104*cdf0e10cSrcweir<!ENTITY % att-displaystyle         'math:displaystyle (true | false)
105*cdf0e10cSrcweir#IMPLIED'>
106*cdf0e10cSrcweir<!ENTITY % att-scriptsizemultiplier 'math:scriptsizemultiplier CDATA
107*cdf0e10cSrcweir#IMPLIED'  >
108*cdf0e10cSrcweir<!ENTITY % att-scriptminsize        'math:scriptminsize CDATA #IMPLIED'>
109*cdf0e10cSrcweir<!ENTITY % att-background           'math:background CDATA #IMPLIED' >
110*cdf0e10cSrcweir
111*cdf0e10cSrcweir<!ENTITY % att-open                 'math:open CDATA #IMPLIED' >
112*cdf0e10cSrcweir<!ENTITY % att-close                'math:close CDATA #IMPLIED' >
113*cdf0e10cSrcweir<!ENTITY % att-separators           'math:separators CDATA #IMPLIED' >
114*cdf0e10cSrcweir
115*cdf0e10cSrcweir<!ENTITY % att-subscriptshift       'math:subscriptshift CDATA #IMPLIED'>
116*cdf0e10cSrcweir<!ENTITY % att-superscriptshift     'math:superscriptshift CDATA #IMPLIED'    >
117*cdf0e10cSrcweir
118*cdf0e10cSrcweir<!ENTITY % att-accentunder          'math:accentunder (true | false)
119*cdf0e10cSrcweir#IMPLIED'>
120*cdf0e10cSrcweir
121*cdf0e10cSrcweir<!ENTITY % att-align                'math:align CDATA #IMPLIED'           >
122*cdf0e10cSrcweir<!ENTITY % att-rowalign             'math:rowalign CDATA #IMPLIED'    >
123*cdf0e10cSrcweir<!ENTITY % att-columnalign          'math:columnalign CDATA #IMPLIED'   >
124*cdf0e10cSrcweir<!ENTITY % att-groupalign           'math:groupalign CDATA #IMPLIED'    >
125*cdf0e10cSrcweir<!ENTITY % att-alignmentscope       'math:alignmentscope CDATA #IMPLIED'  >
126*cdf0e10cSrcweir
127*cdf0e10cSrcweir<!ENTITY % att-rowspacing           'math:rowspacing CDATA #IMPLIED'      >
128*cdf0e10cSrcweir<!ENTITY % att-columnspacing        'math:columnspacing CDATA #IMPLIED'   >
129*cdf0e10cSrcweir<!ENTITY % att-rowlines             'math:rowlines CDATA #IMPLIED'           >
130*cdf0e10cSrcweir<!ENTITY % att-columnlines          'math:columnlines CDATA #IMPLIED'         >
131*cdf0e10cSrcweir<!ENTITY % att-frame                'math:frame (none | solid | dashed)
132*cdf0e10cSrcweir#IMPLIED'  >
133*cdf0e10cSrcweir<!ENTITY % att-framespacing         'math:framespacing CDATA #IMPLIED'       >
134*cdf0e10cSrcweir<!ENTITY % att-equalrows            'math:equalrows CDATA #IMPLIED'         >
135*cdf0e10cSrcweir<!ENTITY % att-equalcolumns         'math:equalcolumns CDATA #IMPLIED'     >
136*cdf0e10cSrcweir
137*cdf0e10cSrcweir<!ENTITY % att-tableinfo           '%att-align;
138*cdf0e10cSrcweir                                   %att-rowalign;
139*cdf0e10cSrcweir                                   %att-columnalign;
140*cdf0e10cSrcweir                                   %att-groupalign;
141*cdf0e10cSrcweir                                   %att-alignmentscope;
142*cdf0e10cSrcweir                                   %att-rowspacing;
143*cdf0e10cSrcweir                                   %att-columnspacing;
144*cdf0e10cSrcweir                                   %att-rowlines;
145*cdf0e10cSrcweir                                   %att-columnlines;
146*cdf0e10cSrcweir                                   %att-frame;
147*cdf0e10cSrcweir                                   %att-framespacing;
148*cdf0e10cSrcweir                                   %att-equalrows;
149*cdf0e10cSrcweir                                   %att-equalcolumns;
150*cdf0e10cSrcweir                                   %att-displaystyle;'        >
151*cdf0e10cSrcweir
152*cdf0e10cSrcweir<!ENTITY % att-rowspan              'math:rowspan CDATA #IMPLIED'         >
153*cdf0e10cSrcweir<!ENTITY % att-columnspan           'math:columnspan CDATA #IMPLIED'      >
154*cdf0e10cSrcweir
155*cdf0e10cSrcweir<!ENTITY % att-edge                  'math:edge (left | right)  #IMPLIED ' >
156*cdf0e10cSrcweir
157*cdf0e10cSrcweir<!ENTITY % att-actiontype            'math:actiontype CDATA #IMPLIED' >
158*cdf0e10cSrcweir<!ENTITY % att-selection             'math:selection CDATA #IMPLIED ' >
159*cdf0e10cSrcweir
160*cdf0e10cSrcweir<!-- presentation token schemata with content-->
161*cdf0e10cSrcweir
162*cdf0e10cSrcweir<!ENTITY % ptoken "math:mi | math:mn | math:mo | math:mtext | math:ms" >
163*cdf0e10cSrcweir
164*cdf0e10cSrcweir<!ATTLIST math:mi        %att-fontinfo;
165*cdf0e10cSrcweir                    %att-globalatts;    >
166*cdf0e10cSrcweir
167*cdf0e10cSrcweir<!ATTLIST math:mn        %att-fontinfo;
168*cdf0e10cSrcweir                    %att-globalatts;    >
169*cdf0e10cSrcweir
170*cdf0e10cSrcweir<!ATTLIST math:mo        %att-fontinfo;
171*cdf0e10cSrcweir                    %att-opinfo;
172*cdf0e10cSrcweir                    %att-globalatts;     >
173*cdf0e10cSrcweir
174*cdf0e10cSrcweir<!ATTLIST math:mtext     %att-fontinfo;
175*cdf0e10cSrcweir                    %att-globalatts;     >
176*cdf0e10cSrcweir
177*cdf0e10cSrcweir<!ATTLIST math:ms        %att-fontinfo;
178*cdf0e10cSrcweir                    %att-lquote;
179*cdf0e10cSrcweir                    %att-rquote;
180*cdf0e10cSrcweir                    %att-globalatts;          >
181*cdf0e10cSrcweir
182*cdf0e10cSrcweir<!-- empty presentation token schemata -->
183*cdf0e10cSrcweir
184*cdf0e10cSrcweir<!ENTITY % petoken  "math:mspace" >
185*cdf0e10cSrcweir<!ELEMENT math:mspace     EMPTY  >
186*cdf0e10cSrcweir
187*cdf0e10cSrcweir<!ATTLIST math:mspace    %att-sizeinfo;
188*cdf0e10cSrcweir                    %att-globalatts;       >
189*cdf0e10cSrcweir
190*cdf0e10cSrcweir<!-- presentation general layout schemata -->
191*cdf0e10cSrcweir
192*cdf0e10cSrcweir<!ENTITY % pgenschema "math:mrow|math:mfrac|math:msqrt|math:mroot|
193*cdf0e10cSrcweir                    math:mstyle|math:merror|math:mpadded| math:mphantom|math:mfenced" >
194*cdf0e10cSrcweir
195*cdf0e10cSrcweir<!ATTLIST math:mrow      %att-globalatts;   >
196*cdf0e10cSrcweir
197*cdf0e10cSrcweir<!ATTLIST math:mfrac     %att-linethickness;
198*cdf0e10cSrcweir                    %att-globalatts; >
199*cdf0e10cSrcweir
200*cdf0e10cSrcweir<!ATTLIST math:msqrt     %att-globalatts;   >
201*cdf0e10cSrcweir
202*cdf0e10cSrcweir<!ATTLIST math:mroot     %att-globalatts;   >
203*cdf0e10cSrcweir
204*cdf0e10cSrcweir<!ATTLIST math:mstyle    %att-fontinfo;
205*cdf0e10cSrcweir                    %att-opinfo;
206*cdf0e10cSrcweir                    %att-lquote;
207*cdf0e10cSrcweir                    %att-rquote;
208*cdf0e10cSrcweir                    %att-linethickness;
209*cdf0e10cSrcweir                    %att-scriptlevel;
210*cdf0e10cSrcweir                    %att-scriptsizemultiplier;
211*cdf0e10cSrcweir                    %att-scriptminsize;
212*cdf0e10cSrcweir                                        %att-background;
213*cdf0e10cSrcweir                                        %att-open;
214*cdf0e10cSrcweir                                        %att-close;
215*cdf0e10cSrcweir                                        %att-separators;
216*cdf0e10cSrcweir                    %att-subscriptshift;
217*cdf0e10cSrcweir                    %att-superscriptshift;
218*cdf0e10cSrcweir                    %att-accentunder;
219*cdf0e10cSrcweir                    %att-tableinfo;
220*cdf0e10cSrcweir                    %att-rowspan;
221*cdf0e10cSrcweir                    %att-columnspan;
222*cdf0e10cSrcweir                                        %att-edge;
223*cdf0e10cSrcweir                                        %att-actiontype;
224*cdf0e10cSrcweir                                        %att-selection;
225*cdf0e10cSrcweir                    %att-globalatts;          >
226*cdf0e10cSrcweir
227*cdf0e10cSrcweir<!ATTLIST math:merror    %att-globalatts;   >
228*cdf0e10cSrcweir
229*cdf0e10cSrcweir<!ATTLIST math:mpadded   %att-sizeinfo;
230*cdf0e10cSrcweir                    %att-lspace;
231*cdf0e10cSrcweir                    %att-globalatts;     >
232*cdf0e10cSrcweir
233*cdf0e10cSrcweir<!ATTLIST math:mphantom  %att-globalatts;     >
234*cdf0e10cSrcweir
235*cdf0e10cSrcweir<!ATTLIST math:mfenced   %att-open;
236*cdf0e10cSrcweir                    %att-close;
237*cdf0e10cSrcweir                    %att-separators;
238*cdf0e10cSrcweir                    %att-globalatts;     >
239*cdf0e10cSrcweir
240*cdf0e10cSrcweir<!-- presentation  layout schemata : scripts and limits -->
241*cdf0e10cSrcweir
242*cdf0e10cSrcweir<!ENTITY % pscrschema  "math:msub|math:msup|math:msubsup|
243*cdf0e10cSrcweir                    math:munder|math:mover|math:munderover|math:mmultiscripts" >
244*cdf0e10cSrcweir
245*cdf0e10cSrcweir<!ATTLIST math:msub      %att-subscriptshift;
246*cdf0e10cSrcweir                    %att-globalatts;     >
247*cdf0e10cSrcweir
248*cdf0e10cSrcweir<!ATTLIST math:msup      %att-superscriptshift;
249*cdf0e10cSrcweir                    %att-globalatts;          >
250*cdf0e10cSrcweir
251*cdf0e10cSrcweir<!ATTLIST math:msubsup   %att-subscriptshift;
252*cdf0e10cSrcweir                    %att-superscriptshift;
253*cdf0e10cSrcweir                    %att-globalatts;          >
254*cdf0e10cSrcweir
255*cdf0e10cSrcweir<!ATTLIST math:munder    %att-accentunder;
256*cdf0e10cSrcweir                    %att-globalatts;          >
257*cdf0e10cSrcweir
258*cdf0e10cSrcweir<!ATTLIST math:mover     %att-accent;
259*cdf0e10cSrcweir                    %att-globalatts;           >
260*cdf0e10cSrcweir
261*cdf0e10cSrcweir<!ATTLIST math:munderover %att-accent;
262*cdf0e10cSrcweir                     %att-accentunder;
263*cdf0e10cSrcweir                     %att-globalatts;      >
264*cdf0e10cSrcweir
265*cdf0e10cSrcweir<!ATTLIST math:mmultiscripts
266*cdf0e10cSrcweir                    %att-subscriptshift;
267*cdf0e10cSrcweir                    %att-superscriptshift;
268*cdf0e10cSrcweir                    %att-globalatts;          >
269*cdf0e10cSrcweir
270*cdf0e10cSrcweir<!-- presentation layout schemata: script empty elements -->
271*cdf0e10cSrcweir
272*cdf0e10cSrcweir<!ENTITY % pscreschema "math:mprescripts|math:none" >
273*cdf0e10cSrcweir
274*cdf0e10cSrcweir<!ELEMENT math:mprescripts    EMPTY          >
275*cdf0e10cSrcweir<!ATTLIST math:mprescripts   %att-globalatts;      >
276*cdf0e10cSrcweir
277*cdf0e10cSrcweir<!ELEMENT math:none          EMPTY          >
278*cdf0e10cSrcweir<!ATTLIST math:none          %att-globalatts;      >
279*cdf0e10cSrcweir
280*cdf0e10cSrcweir<!-- presentation layout schemata: tables -->
281*cdf0e10cSrcweir
282*cdf0e10cSrcweir<!ENTITY % ptabschema "math:mtable|math:mtr|math:mtd" >
283*cdf0e10cSrcweir
284*cdf0e10cSrcweir<!ATTLIST math:mtable    %att-tableinfo;
285*cdf0e10cSrcweir                    %att-globalatts;      >
286*cdf0e10cSrcweir
287*cdf0e10cSrcweir<!ATTLIST math:mtr       %att-rowalign;
288*cdf0e10cSrcweir                    %att-columnalign;
289*cdf0e10cSrcweir                    %att-groupalign;
290*cdf0e10cSrcweir                    %att-globalatts; >
291*cdf0e10cSrcweir
292*cdf0e10cSrcweir<!ATTLIST math:mtd       %att-rowalign;
293*cdf0e10cSrcweir                    %att-columnalign;
294*cdf0e10cSrcweir                    %att-groupalign;
295*cdf0e10cSrcweir                    %att-rowspan;
296*cdf0e10cSrcweir                    %att-columnspan;
297*cdf0e10cSrcweir                    %att-globalatts;   >
298*cdf0e10cSrcweir
299*cdf0e10cSrcweir<!ENTITY % plschema  "%pgenschema;|%pscrschema;|%ptabschema;" >
300*cdf0e10cSrcweir
301*cdf0e10cSrcweir<!-- empty presentation layout schemata -->
302*cdf0e10cSrcweir
303*cdf0e10cSrcweir<!ENTITY % peschema "math:maligngroup | math:malignmark" >
304*cdf0e10cSrcweir
305*cdf0e10cSrcweir<!ELEMENT  math:malignmark  EMPTY          >
306*cdf0e10cSrcweir
307*cdf0e10cSrcweir<!ATTLIST math:malignmark    %att-edge;
308*cdf0e10cSrcweir                        %att-globalatts;      >
309*cdf0e10cSrcweir
310*cdf0e10cSrcweir<!ELEMENT math:maligngroup    EMPTY          >
311*cdf0e10cSrcweir<!ATTLIST math:maligngroup   %att-groupalign;
312*cdf0e10cSrcweir                        %att-globalatts;      >
313*cdf0e10cSrcweir
314*cdf0e10cSrcweir<!-- presentation action schemata -->
315*cdf0e10cSrcweir
316*cdf0e10cSrcweir<!ENTITY % pactions "math:maction" >
317*cdf0e10cSrcweir<!ATTLIST math:maction   %att-actiontype;
318*cdf0e10cSrcweir                    %att-selection;
319*cdf0e10cSrcweir                    %att-globalatts;     >
320*cdf0e10cSrcweir
321*cdf0e10cSrcweir<!-- Presentation entity for substitution into content tag constructs -->
322*cdf0e10cSrcweir<!-- excludes elements which are not valid as expressions             -->
323*cdf0e10cSrcweir
324*cdf0e10cSrcweir<!ENTITY % PresInCont    "%ptoken; | %petoken; |
325*cdf0e10cSrcweir                          %plschema; | %peschema; | %pactions;">
326*cdf0e10cSrcweir
327*cdf0e10cSrcweir<!-- Presentation entity - all presentation constructs -->
328*cdf0e10cSrcweir
329*cdf0e10cSrcweir<!ENTITY % Presentation  "%ptoken; | %petoken; | %pscreschema; |
330*cdf0e10cSrcweir                          %plschema; | %peschema; | %pactions;">
331*cdf0e10cSrcweir
332*cdf0e10cSrcweir<!-- *************************************************  -->
333*cdf0e10cSrcweir<!-- Content element set                                -->
334*cdf0e10cSrcweir<!-- attribute definitions                              -->
335*cdf0e10cSrcweir
336*cdf0e10cSrcweir<!ENTITY % att-base              'math:base CDATA "10"'           >
337*cdf0e10cSrcweir<!ENTITY % att-closure           'math:closure CDATA "closed"'    >
338*cdf0e10cSrcweir<!ENTITY % att-definition        'math:definitionURL CDATA ""'    >
339*cdf0e10cSrcweir<!ENTITY % att-encoding          'math:encoding CDATA ""'         >
340*cdf0e10cSrcweir<!ENTITY % att-nargs             'math:nargs CDATA "1"'           >
341*cdf0e10cSrcweir<!ENTITY % att-occurence         'math:occurence CDATA "function-model"'  >
342*cdf0e10cSrcweir<!ENTITY % att-order             'math:order CDATA "numeric"'         >
343*cdf0e10cSrcweir<!ENTITY % att-scope             'math:scope CDATA "local"'         >
344*cdf0e10cSrcweir<!ENTITY % att-type              'math:type CDATA #IMPLIED'         >
345*cdf0e10cSrcweir
346*cdf0e10cSrcweir<!-- content leaf token elements -->
347*cdf0e10cSrcweir
348*cdf0e10cSrcweir<!ENTITY % ctoken "math:ci | math:cn" >
349*cdf0e10cSrcweir
350*cdf0e10cSrcweir<!ATTLIST math:ci   %att-type;
351*cdf0e10cSrcweir               %att-globalatts;     >
352*cdf0e10cSrcweir
353*cdf0e10cSrcweir<!ATTLIST math:cn   %att-type;
354*cdf0e10cSrcweir               %att-base;
355*cdf0e10cSrcweir               %att-globalatts;     >
356*cdf0e10cSrcweir
357*cdf0e10cSrcweir<!-- content elements - specials -->
358*cdf0e10cSrcweir
359*cdf0e10cSrcweir<!ENTITY % cspecial "math:apply | math:reln | math:lambda" >
360*cdf0e10cSrcweir
361*cdf0e10cSrcweir<!ATTLIST math:apply   %att-globalatts;     >
362*cdf0e10cSrcweir
363*cdf0e10cSrcweir<!ATTLIST math:reln    %att-globalatts;     >
364*cdf0e10cSrcweir
365*cdf0e10cSrcweir<!ATTLIST math:lambda  %att-globalatts;     >
366*cdf0e10cSrcweir
367*cdf0e10cSrcweir<!-- content elements - others -->
368*cdf0e10cSrcweir
369*cdf0e10cSrcweir<!ENTITY % cother "math:condition | math:declare | math:sep" >
370*cdf0e10cSrcweir
371*cdf0e10cSrcweir<!ATTLIST math:condition       %att-globalatts;     >
372*cdf0e10cSrcweir
373*cdf0e10cSrcweir<!ATTLIST math:declare         %att-type;
374*cdf0e10cSrcweir                          %att-scope;
375*cdf0e10cSrcweir                          %att-nargs;
376*cdf0e10cSrcweir                          %att-occurence;
377*cdf0e10cSrcweir                          %att-definition;
378*cdf0e10cSrcweir                          %att-globalatts;     >
379*cdf0e10cSrcweir
380*cdf0e10cSrcweir<!ELEMENT math:sep       EMPTY >
381*cdf0e10cSrcweir<!ATTLIST math:sep       %att-globalatts;     >
382*cdf0e10cSrcweir
383*cdf0e10cSrcweir<!-- content elements - semantic mapping -->
384*cdf0e10cSrcweir
385*cdf0e10cSrcweir<!ENTITY % csemantics "math:semantics | math:annotation | math:annotation-xml" >
386*cdf0e10cSrcweir
387*cdf0e10cSrcweir<!ATTLIST math:semantics         %att-definition;
388*cdf0e10cSrcweir                            %att-globalatts;     >
389*cdf0e10cSrcweir
390*cdf0e10cSrcweir<!ATTLIST math:annotation        %att-encoding;
391*cdf0e10cSrcweir                            %att-globalatts;     >
392*cdf0e10cSrcweir
393*cdf0e10cSrcweir<!ATTLIST math:annotation-xml    %att-encoding;
394*cdf0e10cSrcweir                            %att-globalatts;     >
395*cdf0e10cSrcweir
396*cdf0e10cSrcweir<!-- content elements - constructors -->
397*cdf0e10cSrcweir
398*cdf0e10cSrcweir<!ENTITY % cconstructor "math:interval | math:list | math:matrix | math:matrixrow | math:set |
399*cdf0e10cSrcweirmath:vector" >
400*cdf0e10cSrcweir
401*cdf0e10cSrcweir<!ATTLIST math:interval     %att-closure;
402*cdf0e10cSrcweir                       %att-globalatts;     >
403*cdf0e10cSrcweir
404*cdf0e10cSrcweir<!ATTLIST math:set          %att-globalatts;     >
405*cdf0e10cSrcweir
406*cdf0e10cSrcweir<!ATTLIST math:list         %att-order;
407*cdf0e10cSrcweir                       %att-globalatts;     >
408*cdf0e10cSrcweir
409*cdf0e10cSrcweir<!ATTLIST math:vector       %att-globalatts;     >
410*cdf0e10cSrcweir
411*cdf0e10cSrcweir<!ATTLIST math:matrix       %att-globalatts;     >
412*cdf0e10cSrcweir
413*cdf0e10cSrcweir<!ATTLIST math:matrixrow    %att-globalatts;     >
414*cdf0e10cSrcweir
415*cdf0e10cSrcweir<!-- content elements - operators -->
416*cdf0e10cSrcweir
417*cdf0e10cSrcweir<!ENTITY % cfuncop1ary "math:inverse | math:ident " >
418*cdf0e10cSrcweir
419*cdf0e10cSrcweir<!ELEMENT math:inverse          EMPTY       >
420*cdf0e10cSrcweir<!ATTLIST math:inverse     %att-definition;
421*cdf0e10cSrcweir                      %att-globalatts;     >
422*cdf0e10cSrcweir
423*cdf0e10cSrcweir<!ENTITY % cfuncopnary "math:fn |  math:compose" >
424*cdf0e10cSrcweir
425*cdf0e10cSrcweir<!ATTLIST math:fn     %att-definition;
426*cdf0e10cSrcweir                 %att-globalatts;     >
427*cdf0e10cSrcweir
428*cdf0e10cSrcweir<!ELEMENT math:ident       EMPTY       >
429*cdf0e10cSrcweir<!ATTLIST math:ident       %att-definition;
430*cdf0e10cSrcweir                      %att-globalatts;     >
431*cdf0e10cSrcweir
432*cdf0e10cSrcweir<!ELEMENT math:compose     EMPTY       >
433*cdf0e10cSrcweir<!ATTLIST math:compose     %att-definition;
434*cdf0e10cSrcweir                      %att-globalatts;     >
435*cdf0e10cSrcweir
436*cdf0e10cSrcweir<!ENTITY % carithop1ary "math:abs | math:conjugate | math:exp | math:factorial" >
437*cdf0e10cSrcweir
438*cdf0e10cSrcweir<!ELEMENT math:exp         EMPTY       >
439*cdf0e10cSrcweir<!ATTLIST math:exp         %att-definition;
440*cdf0e10cSrcweir                      %att-globalatts;     >
441*cdf0e10cSrcweir
442*cdf0e10cSrcweir<!ELEMENT math:abs         EMPTY       >
443*cdf0e10cSrcweir<!ATTLIST math:abs         %att-definition;
444*cdf0e10cSrcweir                      %att-globalatts;     >
445*cdf0e10cSrcweir
446*cdf0e10cSrcweir<!ELEMENT math:conjugate   EMPTY       >
447*cdf0e10cSrcweir<!ATTLIST math:conjugate   %att-definition;
448*cdf0e10cSrcweir                      %att-globalatts;     >
449*cdf0e10cSrcweir
450*cdf0e10cSrcweir<!ELEMENT math:factorial   EMPTY       >
451*cdf0e10cSrcweir<!ATTLIST math:factorial   %att-definition;
452*cdf0e10cSrcweir                      %att-globalatts;     >
453*cdf0e10cSrcweir
454*cdf0e10cSrcweir<!ENTITY % carithop1or2ary "math:minus" >
455*cdf0e10cSrcweir
456*cdf0e10cSrcweir<!ELEMENT math:minus       EMPTY       >
457*cdf0e10cSrcweir<!ATTLIST math:minus       %att-definition;
458*cdf0e10cSrcweir                      %att-globalatts;     >
459*cdf0e10cSrcweir
460*cdf0e10cSrcweir<!ENTITY % carithop2ary "math:quotient | math:divide | math:power | math:rem" >
461*cdf0e10cSrcweir
462*cdf0e10cSrcweir<!ELEMENT math:quotient       EMPTY       >
463*cdf0e10cSrcweir<!ATTLIST math:quotient       %att-definition;
464*cdf0e10cSrcweir                         %att-globalatts;     >
465*cdf0e10cSrcweir
466*cdf0e10cSrcweir<!ELEMENT math:divide       EMPTY       >
467*cdf0e10cSrcweir<!ATTLIST math:divide       %att-definition;
468*cdf0e10cSrcweir                       %att-globalatts;     >
469*cdf0e10cSrcweir
470*cdf0e10cSrcweir<!ELEMENT math:power          EMPTY       >
471*cdf0e10cSrcweir<!ATTLIST math:power       %att-definition;
472*cdf0e10cSrcweir                      %att-globalatts;     >
473*cdf0e10cSrcweir
474*cdf0e10cSrcweir<!ELEMENT math:rem          EMPTY       >
475*cdf0e10cSrcweir<!ATTLIST math:rem        %att-definition;
476*cdf0e10cSrcweir                     %att-globalatts;     >
477*cdf0e10cSrcweir
478*cdf0e10cSrcweir<!ENTITY % carithopnary "math:plus | math:times | math:max | math:min | math:gcd" >
479*cdf0e10cSrcweir
480*cdf0e10cSrcweir<!ELEMENT math:plus          EMPTY       >
481*cdf0e10cSrcweir<!ATTLIST math:plus        %att-definition;
482*cdf0e10cSrcweir                      %att-globalatts;     >
483*cdf0e10cSrcweir
484*cdf0e10cSrcweir<!ELEMENT math:max          EMPTY       >
485*cdf0e10cSrcweir<!ATTLIST math:max         %att-definition;
486*cdf0e10cSrcweir                      %att-globalatts;     >
487*cdf0e10cSrcweir
488*cdf0e10cSrcweir<!ELEMENT math:min          EMPTY       >
489*cdf0e10cSrcweir<!ATTLIST math:min         %att-definition;
490*cdf0e10cSrcweir                      %att-globalatts;     >
491*cdf0e10cSrcweir
492*cdf0e10cSrcweir<!ELEMENT math:times          EMPTY       >
493*cdf0e10cSrcweir<!ATTLIST math:times     %att-definition;
494*cdf0e10cSrcweir                    %att-globalatts;     >
495*cdf0e10cSrcweir
496*cdf0e10cSrcweir<!ELEMENT math:gcd          EMPTY       >
497*cdf0e10cSrcweir<!ATTLIST math:gcd     %att-definition;
498*cdf0e10cSrcweir                  %att-globalatts;     >
499*cdf0e10cSrcweir
500*cdf0e10cSrcweir<!ENTITY % carithoproot "math:root" >
501*cdf0e10cSrcweir
502*cdf0e10cSrcweir<!ELEMENT math:root          EMPTY       >
503*cdf0e10cSrcweir<!ATTLIST math:root     %att-definition;
504*cdf0e10cSrcweir                   %att-globalatts;     >
505*cdf0e10cSrcweir
506*cdf0e10cSrcweir<!ENTITY % clogicopquant "math:exists | math:forall" >
507*cdf0e10cSrcweir
508*cdf0e10cSrcweir<!ELEMENT math:exists          EMPTY       >
509*cdf0e10cSrcweir<!ATTLIST math:exists     %att-definition;
510*cdf0e10cSrcweir                      %att-globalatts;     >
511*cdf0e10cSrcweir
512*cdf0e10cSrcweir<!ELEMENT math:forall          EMPTY       >
513*cdf0e10cSrcweir<!ATTLIST math:forall     %att-definition;
514*cdf0e10cSrcweir                      %att-globalatts;     >
515*cdf0e10cSrcweir
516*cdf0e10cSrcweir<!ENTITY % clogicopnary "math:and | math:or | math:xor" >
517*cdf0e10cSrcweir
518*cdf0e10cSrcweir<!ELEMENT math:and          EMPTY       >
519*cdf0e10cSrcweir<!ATTLIST math:and     %att-definition;
520*cdf0e10cSrcweir                      %att-globalatts;     >
521*cdf0e10cSrcweir
522*cdf0e10cSrcweir<!ELEMENT math:or          EMPTY       >
523*cdf0e10cSrcweir<!ATTLIST math:or     %att-definition;
524*cdf0e10cSrcweir                      %att-globalatts;     >
525*cdf0e10cSrcweir
526*cdf0e10cSrcweir<!ELEMENT math:xor          EMPTY       >
527*cdf0e10cSrcweir<!ATTLIST math:xor     %att-definition;
528*cdf0e10cSrcweir                      %att-globalatts;     >
529*cdf0e10cSrcweir
530*cdf0e10cSrcweir<!ENTITY % clogicop1ary "math:not" >
531*cdf0e10cSrcweir
532*cdf0e10cSrcweir<!ELEMENT math:not          EMPTY       >
533*cdf0e10cSrcweir<!ATTLIST math:not     %att-definition;
534*cdf0e10cSrcweir                      %att-globalatts;     >
535*cdf0e10cSrcweir
536*cdf0e10cSrcweir<!ENTITY % clogicop2ary "math:implies" >
537*cdf0e10cSrcweir
538*cdf0e10cSrcweir<!ELEMENT math:implies          EMPTY       >
539*cdf0e10cSrcweir<!ATTLIST math:implies     %att-definition;
540*cdf0e10cSrcweir                      %att-globalatts;     >
541*cdf0e10cSrcweir
542*cdf0e10cSrcweir<!ENTITY % ccalcop "math:log | math:int | math:diff | math:partialdiff" >
543*cdf0e10cSrcweir
544*cdf0e10cSrcweir<!ELEMENT math:log          EMPTY       >
545*cdf0e10cSrcweir<!ATTLIST math:log     %att-definition;
546*cdf0e10cSrcweir                      %att-globalatts;     >
547*cdf0e10cSrcweir
548*cdf0e10cSrcweir<!ELEMENT math:int          EMPTY       >
549*cdf0e10cSrcweir<!ATTLIST math:int     %att-definition;
550*cdf0e10cSrcweir                      %att-globalatts;     >
551*cdf0e10cSrcweir
552*cdf0e10cSrcweir<!ELEMENT math:diff          EMPTY       >
553*cdf0e10cSrcweir<!ATTLIST math:diff     %att-definition;
554*cdf0e10cSrcweir                      %att-globalatts;     >
555*cdf0e10cSrcweir
556*cdf0e10cSrcweir<!ELEMENT math:partialdiff          EMPTY       >
557*cdf0e10cSrcweir<!ATTLIST math:partialdiff     %att-definition;
558*cdf0e10cSrcweir                      %att-globalatts;     >
559*cdf0e10cSrcweir
560*cdf0e10cSrcweir<!ENTITY % ccalcop1ary "math:ln" >
561*cdf0e10cSrcweir
562*cdf0e10cSrcweir<!ELEMENT math:ln          EMPTY       >
563*cdf0e10cSrcweir<!ATTLIST math:ln     %att-definition;
564*cdf0e10cSrcweir                      %att-globalatts;     >
565*cdf0e10cSrcweir
566*cdf0e10cSrcweir<!ENTITY % csetop2ary "math:setdiff" >
567*cdf0e10cSrcweir
568*cdf0e10cSrcweir<!ELEMENT math:setdiff          EMPTY       >
569*cdf0e10cSrcweir<!ATTLIST math:setdiff     %att-definition;
570*cdf0e10cSrcweir                      %att-globalatts;     >
571*cdf0e10cSrcweir
572*cdf0e10cSrcweir<!ENTITY % csetopnary "math:union | math:intersect" >
573*cdf0e10cSrcweir
574*cdf0e10cSrcweir<!ELEMENT math:union          EMPTY       >
575*cdf0e10cSrcweir<!ATTLIST math:union     %att-definition;
576*cdf0e10cSrcweir                      %att-globalatts;     >
577*cdf0e10cSrcweir
578*cdf0e10cSrcweir<!ELEMENT math:intersect          EMPTY       >
579*cdf0e10cSrcweir<!ATTLIST math:intersect     %att-definition;
580*cdf0e10cSrcweir                      %att-globalatts;     >
581*cdf0e10cSrcweir
582*cdf0e10cSrcweir<!ENTITY % cseqop "math:sum | math:product | math:limit" >
583*cdf0e10cSrcweir
584*cdf0e10cSrcweir<!ELEMENT math:sum          EMPTY       >
585*cdf0e10cSrcweir<!ATTLIST math:sum     %att-definition;
586*cdf0e10cSrcweir                      %att-globalatts;     >
587*cdf0e10cSrcweir
588*cdf0e10cSrcweir<!ELEMENT math:product          EMPTY       >
589*cdf0e10cSrcweir<!ATTLIST math:product     %att-definition;
590*cdf0e10cSrcweir                      %att-globalatts;     >
591*cdf0e10cSrcweir
592*cdf0e10cSrcweir<!ELEMENT math:limit          EMPTY       >
593*cdf0e10cSrcweir<!ATTLIST math:limit     %att-definition;
594*cdf0e10cSrcweir                      %att-globalatts;     >
595*cdf0e10cSrcweir
596*cdf0e10cSrcweir<!ENTITY % ctrigop "math:sin | math:cos | math:tan | math:sec | math:csc | math:cot | math:sinh
597*cdf0e10cSrcweir                | math:cosh | math:tanh | math:sech | math:csch | math:coth
598*cdf0e10cSrcweir                | math:arcsin | math:arccos | math:arctan" >
599*cdf0e10cSrcweir
600*cdf0e10cSrcweir<!ELEMENT math:sin          EMPTY       >
601*cdf0e10cSrcweir<!ATTLIST math:sin     %att-definition;
602*cdf0e10cSrcweir                      %att-globalatts;     >
603*cdf0e10cSrcweir
604*cdf0e10cSrcweir<!ELEMENT math:cos          EMPTY       >
605*cdf0e10cSrcweir<!ATTLIST math:cos     %att-definition;
606*cdf0e10cSrcweir                      %att-globalatts;     >
607*cdf0e10cSrcweir
608*cdf0e10cSrcweir<!ELEMENT math:tan          EMPTY       >
609*cdf0e10cSrcweir<!ATTLIST math:tan     %att-definition;
610*cdf0e10cSrcweir                      %att-globalatts;     >
611*cdf0e10cSrcweir
612*cdf0e10cSrcweir<!ELEMENT math:sec          EMPTY       >
613*cdf0e10cSrcweir<!ATTLIST math:sec     %att-definition;
614*cdf0e10cSrcweir                      %att-globalatts;     >
615*cdf0e10cSrcweir
616*cdf0e10cSrcweir<!ELEMENT math:csc          EMPTY       >
617*cdf0e10cSrcweir<!ATTLIST math:csc     %att-definition;
618*cdf0e10cSrcweir                      %att-globalatts;     >
619*cdf0e10cSrcweir
620*cdf0e10cSrcweir<!ELEMENT math:cot          EMPTY       >
621*cdf0e10cSrcweir<!ATTLIST math:cot     %att-definition;
622*cdf0e10cSrcweir                      %att-globalatts;     >
623*cdf0e10cSrcweir
624*cdf0e10cSrcweir<!ELEMENT math:sinh          EMPTY       >
625*cdf0e10cSrcweir<!ATTLIST math:sinh     %att-definition;
626*cdf0e10cSrcweir                      %att-globalatts;     >
627*cdf0e10cSrcweir
628*cdf0e10cSrcweir<!ELEMENT math:cosh          EMPTY       >
629*cdf0e10cSrcweir<!ATTLIST math:cosh     %att-definition;
630*cdf0e10cSrcweir                      %att-globalatts;     >
631*cdf0e10cSrcweir
632*cdf0e10cSrcweir<!ELEMENT math:tanh          EMPTY       >
633*cdf0e10cSrcweir<!ATTLIST math:tanh     %att-definition;
634*cdf0e10cSrcweir                      %att-globalatts;     >
635*cdf0e10cSrcweir
636*cdf0e10cSrcweir<!ELEMENT math:sech          EMPTY       >
637*cdf0e10cSrcweir<!ATTLIST math:sech     %att-definition;
638*cdf0e10cSrcweir                      %att-globalatts;     >
639*cdf0e10cSrcweir
640*cdf0e10cSrcweir<!ELEMENT math:csch          EMPTY       >
641*cdf0e10cSrcweir<!ATTLIST math:csch     %att-definition;
642*cdf0e10cSrcweir                      %att-globalatts;     >
643*cdf0e10cSrcweir
644*cdf0e10cSrcweir<!ELEMENT math:coth          EMPTY       >
645*cdf0e10cSrcweir<!ATTLIST math:coth     %att-definition;
646*cdf0e10cSrcweir                      %att-globalatts;     >
647*cdf0e10cSrcweir
648*cdf0e10cSrcweir<!ELEMENT math:arcsin          EMPTY       >
649*cdf0e10cSrcweir<!ATTLIST math:arcsin     %att-definition;
650*cdf0e10cSrcweir                      %att-globalatts;     >
651*cdf0e10cSrcweir
652*cdf0e10cSrcweir<!ELEMENT math:arccos          EMPTY       >
653*cdf0e10cSrcweir<!ATTLIST math:arccos     %att-definition;
654*cdf0e10cSrcweir                      %att-globalatts;     >
655*cdf0e10cSrcweir
656*cdf0e10cSrcweir<!ELEMENT math:arctan          EMPTY       >
657*cdf0e10cSrcweir<!ATTLIST math:arctan     %att-definition;
658*cdf0e10cSrcweir                      %att-globalatts;     >
659*cdf0e10cSrcweir
660*cdf0e10cSrcweir<!ENTITY % cstatopnary "math:mean | math:sdev | math:variance | math:median | math:mode" >
661*cdf0e10cSrcweir
662*cdf0e10cSrcweir<!ELEMENT math:mean          EMPTY       >
663*cdf0e10cSrcweir<!ATTLIST math:mean     %att-definition;
664*cdf0e10cSrcweir                      %att-globalatts;     >
665*cdf0e10cSrcweir
666*cdf0e10cSrcweir<!ELEMENT math:sdev          EMPTY       >
667*cdf0e10cSrcweir<!ATTLIST math:sdev     %att-definition;
668*cdf0e10cSrcweir                      %att-globalatts;     >
669*cdf0e10cSrcweir
670*cdf0e10cSrcweir<!ELEMENT math:variance          EMPTY       >
671*cdf0e10cSrcweir<!ATTLIST math:variance     %att-definition;
672*cdf0e10cSrcweir                      %att-globalatts;     >
673*cdf0e10cSrcweir
674*cdf0e10cSrcweir<!ELEMENT math:median          EMPTY       >
675*cdf0e10cSrcweir<!ATTLIST math:median     %att-definition;
676*cdf0e10cSrcweir                      %att-globalatts;     >
677*cdf0e10cSrcweir
678*cdf0e10cSrcweir<!ELEMENT math:mode          EMPTY       >
679*cdf0e10cSrcweir<!ATTLIST math:mode     %att-definition;
680*cdf0e10cSrcweir                      %att-globalatts;     >
681*cdf0e10cSrcweir
682*cdf0e10cSrcweir<!ENTITY % cstatopmoment "math:moment" >
683*cdf0e10cSrcweir
684*cdf0e10cSrcweir<!ELEMENT math:moment          EMPTY       >
685*cdf0e10cSrcweir<!ATTLIST math:moment     %att-definition;
686*cdf0e10cSrcweir                      %att-globalatts;     >
687*cdf0e10cSrcweir
688*cdf0e10cSrcweir<!ENTITY % clalgop1ary "math:determinant | math:transpose" >
689*cdf0e10cSrcweir
690*cdf0e10cSrcweir<!ELEMENT math:determinant          EMPTY       >
691*cdf0e10cSrcweir<!ATTLIST math:determinant     %att-definition;
692*cdf0e10cSrcweir                      %att-globalatts;     >
693*cdf0e10cSrcweir
694*cdf0e10cSrcweir<!ELEMENT math:transpose          EMPTY       >
695*cdf0e10cSrcweir<!ATTLIST math:transpose     %att-definition;
696*cdf0e10cSrcweir                      %att-globalatts;     >
697*cdf0e10cSrcweir
698*cdf0e10cSrcweir<!ENTITY % clalgopnary "math:selector" >
699*cdf0e10cSrcweir
700*cdf0e10cSrcweir<!ELEMENT math:selector          EMPTY       >
701*cdf0e10cSrcweir<!ATTLIST math:selector     %att-definition;
702*cdf0e10cSrcweir                      %att-globalatts;     >
703*cdf0e10cSrcweir
704*cdf0e10cSrcweir<!-- content elements -  relations  -->
705*cdf0e10cSrcweir
706*cdf0e10cSrcweir<!ENTITY % cgenrel2ary "math:neq" >
707*cdf0e10cSrcweir
708*cdf0e10cSrcweir<!ELEMENT math:neq          EMPTY       >
709*cdf0e10cSrcweir<!ATTLIST math:neq     %att-definition;
710*cdf0e10cSrcweir                      %att-globalatts;     >
711*cdf0e10cSrcweir
712*cdf0e10cSrcweir<!ENTITY % cgenrelnary "math:eq | math:leq | math:lt | math:geq | math:gt" >
713*cdf0e10cSrcweir
714*cdf0e10cSrcweir<!ELEMENT math:eq          EMPTY       >
715*cdf0e10cSrcweir<!ATTLIST math:eq     %att-definition;
716*cdf0e10cSrcweir                      %att-globalatts;     >
717*cdf0e10cSrcweir
718*cdf0e10cSrcweir<!ELEMENT math:gt          EMPTY       >
719*cdf0e10cSrcweir<!ATTLIST math:gt     %att-definition;
720*cdf0e10cSrcweir                      %att-globalatts;     >
721*cdf0e10cSrcweir
722*cdf0e10cSrcweir<!ELEMENT math:lt          EMPTY       >
723*cdf0e10cSrcweir<!ATTLIST math:lt     %att-definition;
724*cdf0e10cSrcweir                      %att-globalatts;     >
725*cdf0e10cSrcweir
726*cdf0e10cSrcweir<!ELEMENT math:geq          EMPTY       >
727*cdf0e10cSrcweir<!ATTLIST math:geq     %att-definition;
728*cdf0e10cSrcweir                      %att-globalatts;     >
729*cdf0e10cSrcweir
730*cdf0e10cSrcweir<!ELEMENT math:leq          EMPTY       >
731*cdf0e10cSrcweir<!ATTLIST math:leq     %att-definition;
732*cdf0e10cSrcweir                      %att-globalatts;     >
733*cdf0e10cSrcweir
734*cdf0e10cSrcweir<!ENTITY % csetrel2ary "math:in | math:notin | math:notsubset | math:notprsubset" >
735*cdf0e10cSrcweir
736*cdf0e10cSrcweir<!ELEMENT math:in          EMPTY       >
737*cdf0e10cSrcweir<!ATTLIST math:in     %att-definition;
738*cdf0e10cSrcweir                      %att-globalatts;     >
739*cdf0e10cSrcweir
740*cdf0e10cSrcweir<!ELEMENT math:notin          EMPTY       >
741*cdf0e10cSrcweir<!ATTLIST math:notin     %att-definition;
742*cdf0e10cSrcweir                      %att-globalatts;     >
743*cdf0e10cSrcweir
744*cdf0e10cSrcweir<!ELEMENT math:notsubset          EMPTY       >
745*cdf0e10cSrcweir<!ATTLIST math:notsubset     %att-definition;
746*cdf0e10cSrcweir                      %att-globalatts;     >
747*cdf0e10cSrcweir
748*cdf0e10cSrcweir<!ELEMENT math:notprsubset          EMPTY       >
749*cdf0e10cSrcweir<!ATTLIST math:notprsubset     %att-definition;
750*cdf0e10cSrcweir                      %att-globalatts;     >
751*cdf0e10cSrcweir
752*cdf0e10cSrcweir<!ENTITY % csetrelnary "math:subset | math:prsubset" >
753*cdf0e10cSrcweir
754*cdf0e10cSrcweir<!ELEMENT math:subset          EMPTY       >
755*cdf0e10cSrcweir<!ATTLIST math:subset     %att-definition;
756*cdf0e10cSrcweir                      %att-globalatts;     >
757*cdf0e10cSrcweir
758*cdf0e10cSrcweir<!ELEMENT math:prsubset          EMPTY       >
759*cdf0e10cSrcweir<!ATTLIST math:prsubset     %att-definition;
760*cdf0e10cSrcweir                      %att-globalatts;     >
761*cdf0e10cSrcweir
762*cdf0e10cSrcweir<!ENTITY % cseqrel2ary "math:tendsto" >
763*cdf0e10cSrcweir
764*cdf0e10cSrcweir<!ELEMENT math:tendsto          EMPTY       >
765*cdf0e10cSrcweir<!ATTLIST math:tendsto     %att-definition;
766*cdf0e10cSrcweir                      %att-type;
767*cdf0e10cSrcweir                      %att-globalatts;     >
768*cdf0e10cSrcweir
769*cdf0e10cSrcweir<!-- content elements -  quantifiers  -->
770*cdf0e10cSrcweir
771*cdf0e10cSrcweir<!ENTITY % cquantifier "math:lowlimit | math:uplimit | math:bvar | math:degree | math:logbase" >
772*cdf0e10cSrcweir
773*cdf0e10cSrcweir<!ATTLIST math:lowlimit  %att-globalatts;     >
774*cdf0e10cSrcweir
775*cdf0e10cSrcweir<!ATTLIST math:uplimit  %att-globalatts;     >
776*cdf0e10cSrcweir
777*cdf0e10cSrcweir<!ATTLIST math:bvar     %att-globalatts;     >
778*cdf0e10cSrcweir
779*cdf0e10cSrcweir<!ATTLIST math:degree   %att-globalatts;     >
780*cdf0e10cSrcweir
781*cdf0e10cSrcweir<!ATTLIST math:logbase  %att-globalatts;     >
782*cdf0e10cSrcweir
783*cdf0e10cSrcweir<!-- operator groups -->
784*cdf0e10cSrcweir
785*cdf0e10cSrcweir<!ENTITY % cop1ary "%cfuncop1ary; | %carithop1ary; | %clogicop1ary;
786*cdf0e10cSrcweir                    | %ccalcop1ary; | %ctrigop; | %clalgop1ary; " >
787*cdf0e10cSrcweir
788*cdf0e10cSrcweir<!ENTITY % cop2ary "%carithop2ary; | %clogicop2ary;| %csetop2ary; " >
789*cdf0e10cSrcweir
790*cdf0e10cSrcweir<!ENTITY % copnary "%cfuncopnary; | %carithopnary; | %clogicopnary;
791*cdf0e10cSrcweir                    | %csetopnary; | %cstatopnary;  | %clalgopnary; " >
792*cdf0e10cSrcweir
793*cdf0e10cSrcweir<!ENTITY % copmisc "%carithoproot; | %carithop1or2ary; | %ccalcop;
794*cdf0e10cSrcweir                    | %cseqop; | %cstatopmoment; | %clogicopquant;" >
795*cdf0e10cSrcweir
796*cdf0e10cSrcweir<!-- relation groups -->
797*cdf0e10cSrcweir
798*cdf0e10cSrcweir<!ENTITY % crel2ary "%cgenrel2ary;  | %csetrel2ary; | %cseqrel2ary;   " >
799*cdf0e10cSrcweir
800*cdf0e10cSrcweir<!ENTITY % crelnary "%cgenrelnary; | %csetrelnary;" >
801*cdf0e10cSrcweir
802*cdf0e10cSrcweir<!-- content constructs - all -->
803*cdf0e10cSrcweir
804*cdf0e10cSrcweir<!ENTITY % Content "%ctoken; | %cspecial;  | %cother;  | %csemantics;
805*cdf0e10cSrcweir                    |%cconstructor; | %cquantifier;
806*cdf0e10cSrcweir                    |%cop1ary; |%cop2ary; |%copnary; |%copmisc;
807*cdf0e10cSrcweir                    |%crel2ary; |%crelnary;" >
808*cdf0e10cSrcweir
809*cdf0e10cSrcweir<!-- content constructs for substitution in presentation structures -->
810*cdf0e10cSrcweir
811*cdf0e10cSrcweir<!ENTITY % ContInPres "math:ci | math:cn  | math:apply  | math:fn | math:lambda | math:reln
812*cdf0e10cSrcweir                    | math:interval | math:list | math:matrix |math:matrixrow
813*cdf0e10cSrcweir                    | math:set | math:vector | math:semantics" > <!--dpc-->
814*cdf0e10cSrcweir
815*cdf0e10cSrcweir<!-- *************************************************  -->
816*cdf0e10cSrcweir
817*cdf0e10cSrcweir<!-- recursive definition for content of expressions             -->
818*cdf0e10cSrcweir<!-- include presentation tag constructs at lowest level         -->
819*cdf0e10cSrcweir<!-- so presentation layout schemata hold presentation or Content -->
820*cdf0e10cSrcweir<!-- include Content tag constructs at lowest level              -->
821*cdf0e10cSrcweir<!-- so Content tokens hold PCDATA or Presentation at leaf level -->
822*cdf0e10cSrcweir<!-- (for permitted substitutable elements in context)           -->
823*cdf0e10cSrcweir
824*cdf0e10cSrcweir<!ENTITY % ContentExpression   "(%Content; | %PresInCont;)* "     >
825*cdf0e10cSrcweir<!ENTITY % PresExpression      "(%Presentation; | %ContInPres;)* "     >
826*cdf0e10cSrcweir<!ENTITY % MathExpression      "(%PresInCont; | %ContInPres;)* "     >
827*cdf0e10cSrcweir
828*cdf0e10cSrcweir<!--  content token elements (may hold embedded presentation constructs)
829*cdf0e10cSrcweir-->
830*cdf0e10cSrcweir
831*cdf0e10cSrcweir<!ELEMENT math:ci       (#PCDATA | %PresInCont;)*   >
832*cdf0e10cSrcweir<!ELEMENT math:cn       (#PCDATA | math:sep | %PresInCont;)*   >
833*cdf0e10cSrcweir
834*cdf0e10cSrcweir<!--  content special elements    -->
835*cdf0e10cSrcweir
836*cdf0e10cSrcweir<!ELEMENT math:apply      (%ContentExpression;)   >
837*cdf0e10cSrcweir<!ELEMENT math:reln       (%ContentExpression;)   >
838*cdf0e10cSrcweir<!ELEMENT math:lambda     (%ContentExpression;)   >
839*cdf0e10cSrcweir
840*cdf0e10cSrcweir<!--  content other elements    -->
841*cdf0e10cSrcweir
842*cdf0e10cSrcweir<!ELEMENT math:condition      (%ContentExpression;)   >
843*cdf0e10cSrcweir<!ELEMENT math:declare        (%ContentExpression;)   >
844*cdf0e10cSrcweir
845*cdf0e10cSrcweir<!--  content semantics elements    -->
846*cdf0e10cSrcweir
847*cdf0e10cSrcweir<!ELEMENT math:semantics              (%ContentExpression;)   >
848*cdf0e10cSrcweir<!ELEMENT math:annotation             (#PCDATA)                >
849*cdf0e10cSrcweir<!ELEMENT math:annotation-xml         (%ContentExpression;)   >
850*cdf0e10cSrcweir
851*cdf0e10cSrcweir<!--  content constructor elements    -->
852*cdf0e10cSrcweir
853*cdf0e10cSrcweir<!ELEMENT math:interval       (%ContentExpression;)   >
854*cdf0e10cSrcweir<!ELEMENT math:set            (%ContentExpression;)   >
855*cdf0e10cSrcweir<!ELEMENT math:list           (%ContentExpression;)   >
856*cdf0e10cSrcweir<!ELEMENT math:vector         (%ContentExpression;)   >
857*cdf0e10cSrcweir<!ELEMENT math:matrix         (%ContentExpression;)   >
858*cdf0e10cSrcweir<!ELEMENT math:matrixrow      (%ContentExpression;)   >
859*cdf0e10cSrcweir
860*cdf0e10cSrcweir<!--  content operator element (user-defined)    -->
861*cdf0e10cSrcweir
862*cdf0e10cSrcweir<!ELEMENT math:fn       (%ContentExpression;)   >
863*cdf0e10cSrcweir
864*cdf0e10cSrcweir<!--  content quantifier elements    -->
865*cdf0e10cSrcweir
866*cdf0e10cSrcweir<!ELEMENT math:lowlimit       (%ContentExpression;)   >
867*cdf0e10cSrcweir<!ELEMENT math:uplimit        (%ContentExpression;)   >
868*cdf0e10cSrcweir<!ELEMENT math:bvar           (%ContentExpression;)   >
869*cdf0e10cSrcweir<!ELEMENT math:degree         (%ContentExpression;)   >
870*cdf0e10cSrcweir<!ELEMENT math:logbase        (%ContentExpression;)   >
871*cdf0e10cSrcweir
872*cdf0e10cSrcweir<!-- *************************************************  -->
873*cdf0e10cSrcweir<!-- presentation layout schema contain tokens, layout and content
874*cdf0e10cSrcweirschema  -->
875*cdf0e10cSrcweir
876*cdf0e10cSrcweir<!ELEMENT math:mstyle          (%PresExpression;)                      >
877*cdf0e10cSrcweir<!ELEMENT math:merror          (%PresExpression;)                      >
878*cdf0e10cSrcweir<!ELEMENT math:mphantom        (%PresExpression;)                      >
879*cdf0e10cSrcweir<!ELEMENT math:mrow            (%PresExpression;)                      >
880*cdf0e10cSrcweir<!ELEMENT math:mfrac           (%PresExpression;)                      >
881*cdf0e10cSrcweir<!ELEMENT math:msqrt           (%PresExpression;)                      >
882*cdf0e10cSrcweir<!ELEMENT math:mroot           (%PresExpression;)                      >
883*cdf0e10cSrcweir<!ELEMENT math:msub            (%PresExpression;)                      >
884*cdf0e10cSrcweir<!ELEMENT math:msup            (%PresExpression;)                      >
885*cdf0e10cSrcweir<!ELEMENT math:msubsup         (%PresExpression;)                      >
886*cdf0e10cSrcweir<!ELEMENT math:mmultiscripts   (%PresExpression;)                      >
887*cdf0e10cSrcweir<!ELEMENT math:munder          (%PresExpression;)                      >
888*cdf0e10cSrcweir<!ELEMENT math:mover           (%PresExpression;)                      >
889*cdf0e10cSrcweir<!ELEMENT math:munderover      (%PresExpression;)                      >
890*cdf0e10cSrcweir<!ELEMENT math:mtable          (%PresExpression;)                      >
891*cdf0e10cSrcweir<!ELEMENT math:mtr             (%PresExpression;)                      >
892*cdf0e10cSrcweir<!ELEMENT math:mtd             (%PresExpression;)                      >
893*cdf0e10cSrcweir<!ELEMENT math:maction         (%PresExpression;)                      >
894*cdf0e10cSrcweir<!ELEMENT math:mfenced         (%PresExpression;)                      >
895*cdf0e10cSrcweir<!ELEMENT math:mpadded         (%PresExpression;)                      >
896*cdf0e10cSrcweir
897*cdf0e10cSrcweir<!-- presentation tokens contain PCDATA or malignmark constructs -->
898*cdf0e10cSrcweir
899*cdf0e10cSrcweir<!ELEMENT math:mi     (#PCDATA | math:malignmark )*        >
900*cdf0e10cSrcweir<!ELEMENT math:mn     (#PCDATA | math:malignmark )*        >
901*cdf0e10cSrcweir<!ELEMENT math:mo     (#PCDATA | math:malignmark )*        >
902*cdf0e10cSrcweir<!ELEMENT math:mtext  (#PCDATA | math:malignmark )*        >
903*cdf0e10cSrcweir<!ELEMENT math:ms     (#PCDATA | math:malignmark )*        >
904*cdf0e10cSrcweir
905*cdf0e10cSrcweir<!-- *************************************************  -->
906*cdf0e10cSrcweir<!-- browser interface definition -->
907*cdf0e10cSrcweir
908*cdf0e10cSrcweir<!-- attributes for top level math element -->
909*cdf0e10cSrcweir
910*cdf0e10cSrcweir<!ENTITY  %     att-macros      'math:macros CDATA #IMPLIED' >
911*cdf0e10cSrcweir<!ENTITY  %     att-mode        'math:mode   CDATA #IMPLIED' >
912*cdf0e10cSrcweir
913*cdf0e10cSrcweir<!ENTITY  %     att-topinfo    '%att-globalatts;
914*cdf0e10cSrcweir                                %att-macros;
915*cdf0e10cSrcweir                                %att-mode;'     >
916*cdf0e10cSrcweir
917*cdf0e10cSrcweir<!-- attributes for browser interface element element -->
918*cdf0e10cSrcweir
919*cdf0e10cSrcweir<!ENTITY  %     att-name        'math:name CDATA #IMPLIED' >
920*cdf0e10cSrcweir<!ENTITY  %     att-baseline    'math:baseline CDATA #IMPLIED' >
921*cdf0e10cSrcweir<!ENTITY  %     att-overflow    'math:overflow
922*cdf0e10cSrcweir(scroll|elide|truncate|scale) "scroll"' >
923*cdf0e10cSrcweir<!ENTITY  %     att-altimg      'math:altimg CDATA #IMPLIED' >
924*cdf0e10cSrcweir<!ENTITY  %     att-alttext     'math:alttext CDATA #IMPLIED' >
925*cdf0e10cSrcweir
926*cdf0e10cSrcweir<!ENTITY  %     att-browif      '%att-type;
927*cdf0e10cSrcweir                                %att-name;
928*cdf0e10cSrcweir                                %att-height;
929*cdf0e10cSrcweir                                %att-width;
930*cdf0e10cSrcweir                                %att-baseline;
931*cdf0e10cSrcweir                                %att-overflow;
932*cdf0e10cSrcweir                                %att-altimg;
933*cdf0e10cSrcweir                                %att-alttext; '     >
934*cdf0e10cSrcweir
935*cdf0e10cSrcweir<!-- the top level math  element      -->
936*cdf0e10cSrcweir<!-- math  contains MathML encoded mathematics -->
937*cdf0e10cSrcweir<!-- math has the browser info attributes iff it is the
938*cdf0e10cSrcweir    browser interface element also -->
939*cdf0e10cSrcweir
940*cdf0e10cSrcweir<!ELEMENT math:math       (%MathExpression;)    >
941*cdf0e10cSrcweir
942*cdf0e10cSrcweir<!ATTLIST  math:math         %att-topinfo;
943*cdf0e10cSrcweir                        %att-browif;   >
944*cdf0e10cSrcweir
945*cdf0e10cSrcweir
946*cdf0e10cSrcweir<!-- ENTITY sets -->
947*cdf0e10cSrcweir
948*cdf0e10cSrcweir<!-- ... removed ... -->
949*cdf0e10cSrcweir
950*cdf0e10cSrcweir
951*cdf0e10cSrcweir<!-- MathML new characters -->
952*cdf0e10cSrcweir
953*cdf0e10cSrcweir<!-- ... removed ... -->
954*cdf0e10cSrcweir
955*cdf0e10cSrcweir<!-- end of ENTITY sets -->
956*cdf0e10cSrcweir<!-- end of DTD fragment -->
957*cdf0e10cSrcweir<!-- *************************************************  -->
958