diff options
Diffstat (limited to 'htdocs/sgml-lib/UPD-MathML2-20021015/mathml2.dtd')
-rw-r--r-- | htdocs/sgml-lib/UPD-MathML2-20021015/mathml2.dtd | 2078 |
1 files changed, 2078 insertions, 0 deletions
diff --git a/htdocs/sgml-lib/UPD-MathML2-20021015/mathml2.dtd b/htdocs/sgml-lib/UPD-MathML2-20021015/mathml2.dtd new file mode 100644 index 0000000..b55fcaf --- /dev/null +++ b/htdocs/sgml-lib/UPD-MathML2-20021015/mathml2.dtd @@ -0,0 +1,2078 @@ +<!-- MathML 2.0 DTD ....................................................... --> +<!-- file: mathml2.dtd +--> + +<!-- MathML 2.0 DTD + + This is the Mathematical Markup Language (MathML) 2.0, an XML + application for describing mathematical notation and capturing + both its structure and content. + + Copyright 1998-2002 World Wide Web Consortium + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). + All Rights Reserved. + + Permission to use, copy, modify and distribute the MathML 2.0 DTD and + its accompanying documentation for any purpose and without fee is + hereby granted in perpetuity, provided that the above copyright notice + and this paragraph appear in all copies. The copyright holders make + no representation about the suitability of the DTD for any purpose. + + It is provided "as is" without expressed or implied warranty. + + Revision: $Id: mathml2.dtd,v 1.6 2002/07/05 22:42:53 davidc Exp $ + + This entity may be identified by the PUBLIC and SYSTEM identifiers: + + PUBLIC "-//W3C//DTD MathML 2.0//EN" + SYSTEM "mathml2.dtd" + + Revisions: editor and revision history at EOF +--> + + +<!-- MathML Qualified Names module ............................... --> +<!ENTITY % mathml-qname.module "INCLUDE" > +<![%mathml-qname.module;[ +<!ENTITY % mathml-qname.mod + PUBLIC "-//W3C//ENTITIES MathML 2.0 Qualified Names 1.0//EN" + "mathml2-qname-1.mod" > +%mathml-qname.mod;]]> + +<!-- if %NS.prefixed; is INCLUDE, include all NS attributes, + otherwise just those associated with MathML +--> +<![%NS.prefixed;[ +<!ENTITY % MATHML.NamespaceDecl.attrib + "%NamespaceDecl.attrib;" +> +]]> +<!ENTITY % MATHML.NamespaceDecl.attrib + "%MATHML.xmlns.attrib;" +> + +<!ENTITY % XLINK.prefix "xlink" > + +<!-- Attributes shared by all elements .......................... --> + +<!ENTITY % MATHML.Common.attrib + "%MATHML.NamespaceDecl.attrib; + %XLINK.prefix;:href CDATA #IMPLIED + %XLINK.prefix;:type CDATA #IMPLIED + class CDATA #IMPLIED + style CDATA #IMPLIED + id ID #IMPLIED + xref IDREF #IMPLIED + other CDATA #IMPLIED" +> + +<!-- Presentation element set ................................... --> + +<!-- Attribute definitions --> + +<!ENTITY % att-fontsize + "fontsize CDATA #IMPLIED" > +<!ENTITY % att-fontweight + "fontweight ( normal | bold ) #IMPLIED" > +<!ENTITY % att-fontstyle + "fontstyle ( normal | italic ) #IMPLIED" > +<!ENTITY % att-fontfamily + "fontfamily CDATA #IMPLIED" > +<!ENTITY % att-color + "color CDATA #IMPLIED" > + +<!-- MathML2 typographically-distinguished symbol attributes --> + +<!ENTITY % att-mathvariant + "mathvariant CDATA #IMPLIED" > +<!ENTITY % att-mathsize + "mathsize CDATA #IMPLIED" > +<!ENTITY % att-mathcolor + "mathcolor CDATA #IMPLIED" > +<!ENTITY % att-mathbackground + "mathbackground CDATA #IMPLIED" > + +<!ENTITY % att-fontinfo + "%att-fontsize; + %att-fontweight; + %att-fontstyle; + %att-fontfamily; + %att-color; + %att-mathvariant; + %att-mathsize; + %att-mathcolor; + %att-mathbackground;" +> + +<!ENTITY % att-form + "form ( prefix | infix | postfix ) #IMPLIED" > +<!ENTITY % att-fence + "fence ( true | false ) #IMPLIED" > +<!ENTITY % att-separator + "separator ( true | false ) #IMPLIED" > +<!ENTITY % att-lspace + "lspace CDATA #IMPLIED" > +<!ENTITY % att-rspace + "rspace CDATA #IMPLIED" > +<!ENTITY % att-stretchy + "stretchy ( true | false ) #IMPLIED" > +<!ENTITY % att-symmetric + "symmetric ( true | false ) #IMPLIED" > +<!ENTITY % att-maxsize + "maxsize CDATA #IMPLIED" > +<!ENTITY % att-minsize + "minsize CDATA #IMPLIED" > +<!ENTITY % att-largeop + "largeop ( true | false) #IMPLIED" > +<!ENTITY % att-movablelimits + "movablelimits ( true | false ) #IMPLIED" > +<!ENTITY % att-accent + "accent ( true | false ) #IMPLIED" > + +<!ENTITY % att-opinfo + "%att-form; + %att-fence; + %att-separator; + %att-lspace; + %att-rspace; + %att-stretchy; + %att-symmetric; + %att-maxsize; + %att-minsize; + %att-largeop; + %att-movablelimits; + %att-accent;" +> +<!ENTITY % att-width + "width CDATA #IMPLIED" > +<!ENTITY % att-height + "height CDATA #IMPLIED" > +<!ENTITY % att-depth + "depth CDATA #IMPLIED" > +<!ENTITY % att-linebreak + "linebreak CDATA #IMPLIED" > +<!ENTITY % att-sizeinfo + "%att-width; + %att-height; + %att-depth;" +> +<!ENTITY % att-lquote + "lquote CDATA #IMPLIED" > +<!ENTITY % att-rquote + "rquote CDATA #IMPLIED" > +<!ENTITY % att-linethickness + "linethickness CDATA #IMPLIED" > +<!ENTITY % att-scriptlevel + "scriptlevel CDATA #IMPLIED" > +<!ENTITY % att-displaystyle + "displaystyle ( true | false ) #IMPLIED" > +<!ENTITY % att-scriptsizemultiplier + "scriptsizemultiplier CDATA #IMPLIED" > +<!ENTITY % att-scriptminsize + "scriptminsize CDATA #IMPLIED" > +<!ENTITY % att-background + "background CDATA #IMPLIED" > +<!ENTITY % att-veryverythinmathspace + "veryverythinmathspace CDATA #IMPLIED" > +<!ENTITY % att-verythinmathspace + "verythinmathspace CDATA #IMPLIED" > +<!ENTITY % att-thinmathspace + "thinmathspace CDATA #IMPLIED" > +<!ENTITY % att-mediummathspace + "mediummathspace CDATA #IMPLIED" > +<!ENTITY % att-thickmathspace + "thickmathspace CDATA #IMPLIED" > +<!ENTITY % att-verythickmathspace + "verythickmathspace CDATA #IMPLIED" > +<!ENTITY % att-veryverythickmathspace + "veryverythickmathspace CDATA #IMPLIED" > +<!ENTITY % att-open + "open CDATA #IMPLIED" > +<!ENTITY % att-close + "close CDATA #IMPLIED" > +<!ENTITY % att-separators + "separators CDATA #IMPLIED" > +<!ENTITY % att-subscriptshift + "subscriptshift CDATA #IMPLIED" > +<!ENTITY % att-superscriptshift + "superscriptshift CDATA #IMPLIED" > +<!ENTITY % att-accentunder + "accentunder ( true | false ) #IMPLIED" > +<!ENTITY % att-align + "align CDATA #IMPLIED" > +<!ENTITY % att-numalign + "numalign CDATA #IMPLIED" > +<!ENTITY % att-denomalign + "denomalign CDATA #IMPLIED" > +<!ENTITY % att-rowalign + "rowalign CDATA #IMPLIED" > +<!ENTITY % att-columnalign + "columnalign CDATA #IMPLIED" > +<!ENTITY % att-columnwidth + "columnwidth CDATA #IMPLIED" > +<!ENTITY % att-groupalign + "groupalign CDATA #IMPLIED" > +<!ENTITY % att-alignmentscope + "alignmentscope CDATA #IMPLIED" > +<!ENTITY % att-rowspacing + "rowspacing CDATA #IMPLIED" > +<!ENTITY % att-columnspacing + "columnspacing CDATA #IMPLIED" > +<!ENTITY % att-rowlines + "rowlines CDATA #IMPLIED" > +<!ENTITY % att-columnlines + "columnlines CDATA #IMPLIED" > +<!ENTITY % att-frame + "frame ( none | solid | dashed ) #IMPLIED" > +<!ENTITY % att-side + "side ( left | right | leftoverlap | rightoverlap ) #IMPLIED" > +<!ENTITY % att-framespacing + "framespacing CDATA #IMPLIED" > +<!ENTITY % att-equalrows + "equalrows CDATA #IMPLIED" > +<!ENTITY % att-equalcolumns + "equalcolumns CDATA #IMPLIED" > + +<!ENTITY % att-tableinfo + "%att-align; + %att-rowalign; + %att-columnalign; + %att-columnwidth; + %att-groupalign; + %att-alignmentscope; + %att-side; + %att-rowspacing; + %att-columnspacing; + %att-rowlines; + %att-columnlines; + %att-width; + %att-frame; + %att-framespacing; + %att-equalrows; + %att-equalcolumns; + %att-displaystyle;" +> + +<!ENTITY % att-rowspan + "rowspan CDATA #IMPLIED" > +<!ENTITY % att-columnspan + "columnspan CDATA #IMPLIED" > +<!ENTITY % att-edge + "edge ( left | right ) #IMPLIED" > +<!ENTITY % att-actiontype + "actiontype CDATA #IMPLIED" > +<!ENTITY % att-selection + "selection CDATA #IMPLIED" > + +<!ENTITY % att-name + "name CDATA #IMPLIED" > +<!ENTITY % att-alt + "alt CDATA #IMPLIED" > +<!ENTITY % att-index + "index CDATA #IMPLIED" > + +<!ENTITY % att-bevelled + "bevelled CDATA #IMPLIED" > + +<!-- Presentation schemata with content --> + +<!ENTITY % ptoken + "%mi.qname; | %mn.qname; | %mo.qname; + | %mtext.qname; | %ms.qname;" > + +<!ATTLIST %mi.qname; + %MATHML.Common.attrib; + %att-fontinfo; +> + +<!ATTLIST %mn.qname; + %MATHML.Common.attrib; + %att-fontinfo; +> + +<!ATTLIST %mo.qname; + %MATHML.Common.attrib; + %att-fontinfo; + %att-opinfo; +> + +<!ATTLIST %mtext.qname; + %MATHML.Common.attrib; + %att-fontinfo; +> + +<!ATTLIST %ms.qname; + %MATHML.Common.attrib; + %att-fontinfo; + %att-lquote; + %att-rquote; +> + +<!-- Empty presentation schemata --> + +<!ENTITY % petoken + "%mspace.qname;" > +<!ELEMENT %mspace.qname; EMPTY > + +<!ATTLIST %mspace.qname; + %att-sizeinfo; + %att-linebreak; + %MATHML.Common.attrib; +> + +<!-- Presentation: general layout schemata --> + +<!ENTITY % pgenschema + "%mrow.qname; | %mfrac.qname; | %msqrt.qname; | %mroot.qname; + | %menclose.qname; | %mstyle.qname; | %merror.qname; + | %mpadded.qname; | %mphantom.qname; | %mfenced.qname;" > + +<!ATTLIST %mrow.qname; + %MATHML.Common.attrib; +> + +<!ATTLIST %mfrac.qname; + %MATHML.Common.attrib; + %att-bevelled; + %att-numalign; + %att-denomalign; + %att-linethickness; +> + +<!ATTLIST %msqrt.qname; + %MATHML.Common.attrib; +> + +<!ATTLIST %menclose.qname; + %MATHML.Common.attrib; + notation CDATA 'longdiv' > + +<!ATTLIST %mroot.qname; + %MATHML.Common.attrib; +> + +<!ATTLIST %mstyle.qname; + %MATHML.Common.attrib; + %att-fontinfo; + %att-opinfo; + %att-lquote; + %att-rquote; + %att-linethickness; + %att-scriptlevel; + %att-scriptsizemultiplier; + %att-scriptminsize; + %att-background; + %att-veryverythinmathspace; + %att-verythinmathspace; + %att-thinmathspace; + %att-mediummathspace; + %att-thickmathspace; + %att-verythickmathspace; + %att-veryverythickmathspace; + %att-open; + %att-close; + %att-separators; + %att-subscriptshift; + %att-superscriptshift; + %att-accentunder; + %att-tableinfo; + %att-rowspan; + %att-columnspan; + %att-edge; + %att-actiontype; + %att-selection; +> + +<!ATTLIST %merror.qname; + %MATHML.Common.attrib; +> + +<!ATTLIST %mpadded.qname; + %MATHML.Common.attrib; + %att-sizeinfo; + %att-lspace; +> + +<!ATTLIST %mphantom.qname; + %MATHML.Common.attrib; +> + +<!ATTLIST %mfenced.qname; + %MATHML.Common.attrib; + %att-open; + %att-close; + %att-separators; +> + +<!-- Presentation layout schemata: scripts and limits --> + +<!ENTITY % pscrschema + "%msub.qname; | %msup.qname; | %msubsup.qname; | %munder.qname; + | %mover.qname; | %munderover.qname; | %mmultiscripts.qname;" > + +<!ATTLIST %msub.qname; + %MATHML.Common.attrib; + %att-subscriptshift; +> + +<!ATTLIST %msup.qname; + %MATHML.Common.attrib; + %att-superscriptshift; +> + +<!ATTLIST %msubsup.qname; + %MATHML.Common.attrib; + %att-subscriptshift; + %att-superscriptshift; +> + +<!ATTLIST %munder.qname; + %MATHML.Common.attrib; + %att-accentunder; +> + +<!ATTLIST %mover.qname; + %MATHML.Common.attrib; + %att-accent; +> + +<!ATTLIST %munderover.qname; + %MATHML.Common.attrib; + %att-accent; + %att-accentunder; +> + +<!ATTLIST %mmultiscripts.qname; + %MATHML.Common.attrib; + %att-subscriptshift; + %att-superscriptshift; +> + +<!-- Presentation layout schemata: empty elements for scripts --> + +<!ENTITY % pscreschema + "%mprescripts.qname; | %none.qname;" > + +<!ELEMENT %mprescripts.qname; EMPTY > +<!ATTLIST %mprescripts.qname; + %MATHML.xmlns.attrib; > + +<!ELEMENT %none.qname; EMPTY > +<!ATTLIST %none.qname; + %MATHML.xmlns.attrib; > + +<!-- Presentation layout schemata: tables --> + +<!ENTITY % ptabschema + "%mtable.qname; | %mtr.qname; | %mlabeledtr.qname; | %mtd.qname;" > + +<!ATTLIST %mtable.qname; + %MATHML.Common.attrib; + %att-tableinfo; +> + +<!ATTLIST %mtr.qname; + %MATHML.Common.attrib; + %att-rowalign; + %att-columnalign; + %att-groupalign; +> + +<!ATTLIST %mlabeledtr.qname; + %MATHML.Common.attrib; + %att-rowalign; + %att-columnalign; + %att-groupalign; +> + +<!ATTLIST %mtd.qname; + %MATHML.Common.attrib; + %att-rowalign; + %att-columnalign; + %att-groupalign; + %att-rowspan; + %att-columnspan; +> + +<!ENTITY % plschema + "%pgenschema; | %pscrschema; | %ptabschema;" > + +<!-- Empty presentation layout schemata --> + +<!ENTITY % peschema + "%maligngroup.qname; | %malignmark.qname;" > + +<!ELEMENT %malignmark.qname; EMPTY > + +<!ATTLIST %malignmark.qname; + %att-edge; > + +<!ELEMENT %maligngroup.qname; EMPTY > +<!ATTLIST %maligngroup.qname; + %MATHML.Common.attrib; + %att-groupalign; +> + + +<!ELEMENT %mglyph.qname; EMPTY > +<!ATTLIST %mglyph.qname; + %att-alt; + %att-fontfamily; + %att-index; > + +<!-- Presentation action schemata --> + +<!ENTITY % pactions + "%maction.qname;" > +<!ATTLIST %maction.qname; + %MATHML.Common.attrib; + %att-actiontype; + %att-selection; +> + +<!-- The following entity for substitution into + content constructs excludes elements that + are not valid as expressions. +--> + +<!ENTITY % PresInCont + "%ptoken; | %petoken; | + %plschema; | %peschema; | %pactions;" > + +<!-- Presentation entity: all presentation constructs --> + +<!ENTITY % Presentation + "%ptoken; | %petoken; | %pscreschema; | + %plschema; | %peschema; | %pactions;"> + +<!-- Content element set ........................................ --> + +<!-- Attribute definitions --> + +<!ENTITY % att-base + "base CDATA '10'" > +<!ENTITY % att-closure + "closure CDATA 'closed'" > +<!ENTITY % att-definition + "definitionURL CDATA ''" > +<!ENTITY % att-encoding + "encoding CDATA ''" > +<!ENTITY % att-nargs + "nargs CDATA '1'" > +<!ENTITY % att-occurrence + "occurrence CDATA 'function-model'" > +<!ENTITY % att-order + "order CDATA 'numeric'" > +<!ENTITY % att-scope + "scope CDATA 'local'" > +<!ENTITY % att-type + "type CDATA #IMPLIED" > + +<!-- Content elements: leaf nodes --> + +<!ENTITY % ctoken + "%csymbol.qname; | %ci.qname; | %cn.qname;" > + +<!ATTLIST %ci.qname; + %MATHML.Common.attrib; + %att-type; + %att-definition; + %att-encoding; +> + +<!ATTLIST %csymbol.qname; + %MATHML.Common.attrib; + %att-encoding; + %att-type; + %att-definition; +> + +<!ATTLIST %cn.qname; + %MATHML.Common.attrib; + %att-type; + %att-base; + %att-definition; + %att-encoding; +> + +<!-- Content elements: specials --> + +<!ENTITY % cspecial + "%apply.qname; | %reln.qname; | + %lambda.qname;" > + +<!ATTLIST %apply.qname; + %MATHML.Common.attrib; +> + +<!ATTLIST %reln.qname; + %MATHML.Common.attrib; +> + +<!ATTLIST %lambda.qname; + %MATHML.Common.attrib; +> + +<!-- Content elements: others --> + +<!ENTITY % cother + "%condition.qname; | %declare.qname; | %sep.qname;" > + +<!ATTLIST %condition.qname; + %MATHML.Common.attrib; +> + +<!ATTLIST %declare.qname; + %MATHML.Common.attrib; + %att-type; + %att-scope; + %att-nargs; + %att-occurrence; + %att-definition; + %att-encoding; +> + +<!ELEMENT %sep.qname; EMPTY > +<!ATTLIST %sep.qname; + %MATHML.xmlns.attrib; > + +<!-- Content elements: semantic mapping --> + +<!ENTITY % csemantics + "%semantics.qname; | %annotation.qname; | + %annotation-xml.qname;" > + +<!ATTLIST %semantics.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ATTLIST %annotation.qname; + %MATHML.Common.attrib; + %att-encoding; +> + +<!ATTLIST %annotation-xml.qname; + %MATHML.Common.attrib; + %att-encoding; +> + +<!-- Content elements: constructors --> + +<!ENTITY % cconstructor + "%interval.qname; | %list.qname; | %matrix.qname; + | %matrixrow.qname; | %set.qname; | %vector.qname; + | %piecewise.qname; " > + +<!ATTLIST %interval.qname; + %MATHML.Common.attrib; + %att-closure; +> + +<!ATTLIST %set.qname; + %MATHML.Common.attrib; + %att-type; +> + +<!ATTLIST %list.qname; + %MATHML.Common.attrib; + %att-order; +> + +<!ATTLIST %vector.qname; + %MATHML.Common.attrib; +> + +<!ATTLIST %matrix.qname; + %MATHML.Common.attrib; +> + +<!ATTLIST %matrixrow.qname; + %MATHML.Common.attrib; +> + +<!ATTLIST %piecewise.qname; + %MATHML.Common.attrib; +> + +<!ATTLIST %piece.qname; + %MATHML.Common.attrib; +> + +<!ATTLIST %otherwise.qname; + %MATHML.Common.attrib; +> + + +<!-- Content elements: symbols --> + +<!ENTITY % c0ary + "%integers.qname; | + %reals.qname; | + %rationals.qname; | + %naturalnumbers.qname; | + %complexes.qname; | + %primes.qname; | + %exponentiale.qname; | + %imaginaryi.qname; | + %notanumber.qname; | + %true.qname; | + %false.qname; | + %emptyset.qname; | + %pi.qname; | + %eulergamma.qname; | + %infinity.qname;" > + +<!ELEMENT %integers.qname; EMPTY > +<!ATTLIST %integers.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %reals.qname; EMPTY > +<!ATTLIST %reals.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %rationals.qname; EMPTY > +<!ATTLIST %rationals.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %naturalnumbers.qname; EMPTY > +<!ATTLIST %naturalnumbers.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %complexes.qname; EMPTY > +<!ATTLIST %complexes.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %primes.qname; EMPTY > +<!ATTLIST %primes.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %exponentiale.qname; EMPTY > +<!ATTLIST %exponentiale.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %imaginaryi.qname; EMPTY > +<!ATTLIST %imaginaryi.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %notanumber.qname; EMPTY > +<!ATTLIST %notanumber.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %true.qname; EMPTY > +<!ATTLIST %true.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %false.qname; EMPTY > +<!ATTLIST %false.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %emptyset.qname; EMPTY > +<!ATTLIST %emptyset.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %pi.qname; EMPTY > +<!ATTLIST %pi.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %eulergamma.qname; EMPTY > +<!ATTLIST %eulergamma.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %infinity.qname; EMPTY > +<!ATTLIST %infinity.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!-- Content elements: operators --> + +<!ENTITY % cfuncop1ary + "%inverse.qname; | %ident.qname;| + %domain.qname; | %codomain.qname; | + %image.qname; " > + +<!ELEMENT %inverse.qname; EMPTY > +<!ATTLIST %inverse.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %domain.qname; EMPTY > +<!ATTLIST %domain.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %codomain.qname; EMPTY > +<!ATTLIST %codomain.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %image.qname; EMPTY > +<!ATTLIST %image.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + + + +<!ENTITY % cfuncopnary + "%fn.qname; | %compose.qname;" > + +<!ATTLIST %fn.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %ident.qname; EMPTY > +<!ATTLIST %ident.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %compose.qname; EMPTY > +<!ATTLIST %compose.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ENTITY % carithop1ary + "%abs.qname; | %conjugate.qname; | %exp.qname; | %factorial.qname; | + %arg.qname; | %real.qname; | %imaginary.qname; | + %floor.qname; | %ceiling.qname;" > + +<!ELEMENT %exp.qname; EMPTY > +<!ATTLIST %exp.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %abs.qname; EMPTY > +<!ATTLIST %abs.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %arg.qname; EMPTY > +<!ATTLIST %arg.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %real.qname; EMPTY > +<!ATTLIST %real.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %imaginary.qname; EMPTY > +<!ATTLIST %imaginary.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %conjugate.qname; EMPTY > +<!ATTLIST %conjugate.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %factorial.qname; EMPTY > +<!ATTLIST %factorial.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + + +<!ELEMENT %floor.qname; EMPTY > +<!ATTLIST %floor.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %ceiling.qname; EMPTY > +<!ATTLIST %ceiling.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> +<!ENTITY % carithop1or2ary + "%minus.qname;" > + +<!ELEMENT %minus.qname; EMPTY > +<!ATTLIST %minus.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ENTITY % carithop2ary + "%quotient.qname; | %divide.qname; | %power.qname; | %rem.qname;" > + +<!ELEMENT %quotient.qname; EMPTY > +<!ATTLIST %quotient.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %divide.qname; EMPTY > +<!ATTLIST %divide.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %power.qname; EMPTY > +<!ATTLIST %power.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %rem.qname; EMPTY > +<!ATTLIST %rem.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ENTITY % carithopnary + "%plus.qname; | %times.qname; | %max.qname; + | %min.qname; | %gcd.qname; | %lcm.qname;" > + +<!ELEMENT %plus.qname; EMPTY > +<!ATTLIST %plus.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %max.qname; EMPTY > +<!ATTLIST %max.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %min.qname; EMPTY > +<!ATTLIST %min.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %times.qname; EMPTY > +<!ATTLIST %times.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %gcd.qname; EMPTY > +<!ATTLIST %gcd.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %lcm.qname; EMPTY > +<!ATTLIST %lcm.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ENTITY % carithoproot + "%root.qname;" > + +<!ELEMENT %root.qname; EMPTY > +<!ATTLIST %root.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ENTITY % clogicopquant + "%exists.qname; | %forall.qname;" > + +<!ELEMENT %exists.qname; EMPTY > +<!ATTLIST %exists.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %forall.qname; EMPTY > +<!ATTLIST %forall.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ENTITY % clogicopnary + "%and.qname; | %or.qname; | %xor.qname;" > + +<!ELEMENT %and.qname; EMPTY > +<!ATTLIST %and.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %or.qname; EMPTY > +<!ATTLIST %or.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %xor.qname; EMPTY > +<!ATTLIST %xor.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ENTITY % clogicop1ary + "%not.qname;" > + +<!ELEMENT %not.qname; EMPTY > +<!ATTLIST %not.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ENTITY % clogicop2ary + "%implies.qname;" > + +<!ELEMENT %implies.qname; EMPTY > +<!ATTLIST %implies.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ENTITY % ccalcop + "%log.qname; | %int.qname; | %diff.qname; | %partialdiff.qname; | + %divergence.qname; | %grad.qname; | %curl.qname; | %laplacian.qname;" > + +<!ELEMENT %divergence.qname; EMPTY > +<!ATTLIST %divergence.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %grad.qname; EMPTY > +<!ATTLIST %grad.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %curl.qname; EMPTY > +<!ATTLIST %curl.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %laplacian.qname; EMPTY > +<!ATTLIST %laplacian.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %log.qname; EMPTY > +<!ATTLIST %log.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %int.qname; EMPTY > +<!ATTLIST %int.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %diff.qname; EMPTY > +<!ATTLIST %diff.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %partialdiff.qname; EMPTY > +<!ATTLIST %partialdiff.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ENTITY % ccalcop1ary + "%ln.qname;" > + +<!ELEMENT %ln.qname; EMPTY > +<!ATTLIST %ln.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ENTITY % csetop1ary + "%card.qname;" > + +<!ELEMENT %card.qname; EMPTY > +<!ATTLIST %card.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ENTITY % csetop2ary + "%setdiff.qname;" > + +<!ELEMENT %setdiff.qname; EMPTY > +<!ATTLIST %setdiff.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ENTITY % csetopnary + "%union.qname; | %intersect.qname; | %cartesianproduct.qname; " > + +<!ELEMENT %union.qname; EMPTY > +<!ATTLIST %union.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %intersect.qname; EMPTY > +<!ATTLIST %intersect.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %cartesianproduct.qname; EMPTY > +<!ATTLIST %cartesianproduct.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ENTITY % cseqop + "%sum.qname; | %product.qname; | %limit.qname;" > + +<!ELEMENT %sum.qname; EMPTY > +<!ATTLIST %sum.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %product.qname; EMPTY > +<!ATTLIST %product.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %limit.qname; EMPTY > +<!ATTLIST %limit.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ENTITY % ctrigop + "%sin.qname; | %cos.qname; | %tan.qname; + | %sec.qname; | %csc.qname; | %cot.qname; + | %sinh.qname; | %cosh.qname; | %tanh.qname; + | %sech.qname; | %csch.qname; | %coth.qname; + | %arcsin.qname; | %arccos.qname; | %arctan.qname; + | %arccosh.qname; | %arccot.qname; | %arccoth.qname; + | %arccsc.qname; | %arccsch.qname; | %arcsec.qname; + | %arcsech.qname; | %arcsinh.qname; | %arctanh.qname; + " > + +<!ELEMENT %sin.qname; EMPTY > +<!ATTLIST %sin.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %cos.qname; EMPTY > +<!ATTLIST %cos.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %tan.qname; EMPTY > +<!ATTLIST %tan.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %sec.qname; EMPTY > +<!ATTLIST %sec.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %csc.qname; EMPTY > +<!ATTLIST %csc.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %cot.qname; EMPTY > +<!ATTLIST %cot.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %sinh.qname; EMPTY > +<!ATTLIST %sinh.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %cosh.qname; EMPTY > +<!ATTLIST %cosh.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %tanh.qname; EMPTY > +<!ATTLIST %tanh.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %sech.qname; EMPTY > +<!ATTLIST %sech.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %csch.qname; EMPTY > +<!ATTLIST %csch.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %coth.qname; EMPTY > +<!ATTLIST %coth.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %arcsin.qname; EMPTY > +<!ATTLIST %arcsin.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %arccos.qname; EMPTY > +<!ATTLIST %arccos.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %arctan.qname; EMPTY > +<!ATTLIST %arctan.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %arccosh.qname; EMPTY > +<!ATTLIST %arccosh.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + + +<!ELEMENT %arccot.qname; EMPTY > +<!ATTLIST %arccot.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %arccoth.qname; EMPTY > +<!ATTLIST %arccoth.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + + +<!ELEMENT %arccsc.qname; EMPTY > +<!ATTLIST %arccsc.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %arccsch.qname; EMPTY > +<!ATTLIST %arccsch.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %arcsec.qname; EMPTY > +<!ATTLIST %arcsec.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %arcsech.qname; EMPTY > +<!ATTLIST %arcsech.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %arcsinh.qname; EMPTY > +<!ATTLIST %arcsinh.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %arctanh.qname; EMPTY > +<!ATTLIST %arctanh.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + + + +<!ENTITY % cstatopnary + "%mean.qname; | %sdev.qname; | + %variance.qname; | %median.qname; | + %mode.qname;" > + +<!ELEMENT %mean.qname; EMPTY > +<!ATTLIST %mean.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %sdev.qname; EMPTY > +<!ATTLIST %sdev.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %variance.qname; EMPTY > +<!ATTLIST %variance.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %median.qname; EMPTY > +<!ATTLIST %median.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %mode.qname; EMPTY > +<!ATTLIST %mode.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ENTITY % cstatopmoment + "%moment.qname;" > + +<!ELEMENT %moment.qname; EMPTY > +<!ATTLIST %moment.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ENTITY % clalgop1ary + "%determinant.qname; | + %transpose.qname;" > + +<!ELEMENT %determinant.qname; EMPTY > +<!ATTLIST %determinant.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %transpose.qname; EMPTY > +<!ATTLIST %transpose.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ENTITY % clalgop2ary + "%vectorproduct.qname; + | %scalarproduct.qname; + | %outerproduct.qname;" > + +<!ELEMENT %vectorproduct.qname; EMPTY > +<!ATTLIST %vectorproduct.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %scalarproduct.qname; EMPTY > +<!ATTLIST %scalarproduct.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %outerproduct.qname; EMPTY > +<!ATTLIST %outerproduct.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ENTITY % clalgopnary + "%selector.qname;" > + +<!ELEMENT %selector.qname; EMPTY > +<!ATTLIST %selector.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!-- Content elements: relations --> + +<!ENTITY % cgenrel2ary + "%neq.qname; | %factorof.qname;" > + +<!ELEMENT %neq.qname; EMPTY > +<!ATTLIST %neq.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %factorof.qname; EMPTY > +<!ATTLIST %factorof.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ENTITY % cgenrelnary + "%eq.qname; | %leq.qname; | %lt.qname; | %geq.qname; + | %gt.qname;| %equivalent.qname; | %approx.qname;" > + +<!ELEMENT %eq.qname; EMPTY > +<!ATTLIST %eq.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %equivalent.qname; EMPTY > +<!ATTLIST %equivalent.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %approx.qname; EMPTY > +<!ATTLIST %approx.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %gt.qname; EMPTY > +<!ATTLIST %gt.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %lt.qname; EMPTY > +<!ATTLIST %lt.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %geq.qname; EMPTY > +<!ATTLIST %geq.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %leq.qname; EMPTY > +<!ATTLIST %leq.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ENTITY % csetrel2ary + "%in.qname; | %notin.qname; | %notsubset.qname; | %notprsubset.qname;" > + +<!ELEMENT %in.qname; EMPTY > +<!ATTLIST %in.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %notin.qname; EMPTY > +<!ATTLIST %notin.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %notsubset.qname; EMPTY > +<!ATTLIST %notsubset.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %notprsubset.qname; EMPTY > +<!ATTLIST %notprsubset.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ENTITY % csetrelnary + "%subset.qname; | %prsubset.qname;" > + +<!ELEMENT %subset.qname; EMPTY > +<!ATTLIST %subset.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ELEMENT %prsubset.qname; EMPTY > +<!ATTLIST %prsubset.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; +> + +<!ENTITY % cseqrel2ary + "%tendsto.qname;" > + +<!ELEMENT %tendsto.qname; EMPTY > +<!ATTLIST %tendsto.qname; + %MATHML.Common.attrib; + %att-definition; + %att-encoding; + %att-type; +> + +<!-- Content elements: quantifiers --> + +<!ENTITY % cquantifier + "%lowlimit.qname; | %uplimit.qname; | %bvar.qname; + | %degree.qname; | %logbase.qname; + | %momentabout.qname; | %domainofapplication.qname; " > + +<!ATTLIST %lowlimit.qname; + %MATHML.Common.attrib; +> + +<!ATTLIST %uplimit.qname; + %MATHML.Common.attrib; +> + +<!ATTLIST %bvar.qname; + %MATHML.Common.attrib; +> + +<!ATTLIST %degree.qname; + %MATHML.Common.attrib; +> + +<!ATTLIST %logbase.qname; + %MATHML.Common.attrib; +> + +<!ATTLIST %momentabout.qname; + %MATHML.Common.attrib; +> + +<!ATTLIST %domainofapplication.qname; + %MATHML.Common.attrib; +> + +<!-- Operator groups --> + +<!ENTITY % cop1ary + "%cfuncop1ary; | %carithop1ary; | %clogicop1ary; | + %ccalcop1ary; | %ctrigop; | %clalgop1ary; | + %csetop1ary;" > + +<!ENTITY % cop2ary + "%carithop2ary; | %clogicop2ary;| %clalgop2ary; | %csetop2ary;" > + +<!ENTITY % copnary + "%cfuncopnary; | %carithopnary; | %clogicopnary; | + %csetopnary; | %cstatopnary; | %clalgopnary;" > + +<!ENTITY % copmisc + "%carithoproot; | %carithop1or2ary; | %ccalcop; | + %cseqop; | %cstatopmoment; | %clogicopquant;" > + +<!-- Relation groups --> + +<!ENTITY % crel2ary + "%cgenrel2ary; | %csetrel2ary; | %cseqrel2ary;" > + +<!ENTITY % crelnary + "%cgenrelnary; | %csetrelnary;" > + +<!-- Content constructs: all --> + +<!ENTITY % Content + "%ctoken; | %cspecial; | %cother; | %csemantics; | %c0ary; + | %cconstructor; | %cquantifier; | %cop1ary; | %cop2ary; + | %copnary; |%copmisc; | %crel2ary; | %crelnary;" > + +<!-- Content constructs for substitution in presentation structures --> + +<!ENTITY % ContInPres + "%ci.qname; |%csymbol.qname;| %cn.qname; | %c0ary; | + %apply.qname; | %fn.qname; | + %lambda.qname; | %reln.qname; | + %cconstructor; | + %semantics.qname; |%declare.qname;" > + +<!-- ............................................................. --> +<!-- Recursive definition for content of expressions. Include + presentation constructs at lowest level so presentation + layout schemata hold presentation or content elements. + Include content constructs at lowest level so content + elements hold PCDATA or presentation elements at leaf + level (for permitted substitutable elements in context) +--> + +<!ENTITY % ContentExpression + "(%Content; | %PresInCont;)*" > +<!ENTITY % PresExpression + "(%Presentation; | %ContInPres;)*" > +<!ENTITY % MathExpression + "(%PresInCont; | %ContInPres;)*" > + +<!-- PCDATA or MathML character elements --> +<!ENTITY % MathMLCharacters + "#PCDATA | %mglyph.qname; " > + +<!-- Content elements: tokens --> +<!-- (may contain embedded presentation constructs) --> + +<!ELEMENT %ci.qname; (%MathMLCharacters; | %PresInCont;)* > +<!ELEMENT %csymbol.qname; (%MathMLCharacters; | %PresInCont;)* > +<!ELEMENT %cn.qname; (%MathMLCharacters; | %sep.qname; | %PresInCont;)* > + +<!-- Content elements: special --> + +<!ELEMENT %apply.qname; (%ContentExpression;) > +<!ELEMENT %reln.qname; (%ContentExpression;) > +<!ELEMENT %lambda.qname; (%ContentExpression;) > + +<!-- Content elements: other --> + +<!ELEMENT %condition.qname; (%ContentExpression;) > +<!ELEMENT %declare.qname; (%ContentExpression;) > + +<!-- Content elements: semantics --> + +<!ELEMENT %semantics.qname; (%ContentExpression;) > +<!ENTITY % Annotation.content "( #PCDATA )" > +<!ELEMENT %annotation.qname; %Annotation.content; > + +<!ENTITY % Annotation-xml.content "ANY" > +<!ELEMENT %annotation-xml.qname; %Annotation-xml.content; > + +<!-- Content elements: constructors --> + +<!ELEMENT %interval.qname; (%ContentExpression;) > +<!ELEMENT %set.qname; (%ContentExpression;) > +<!ELEMENT %list.qname; (%ContentExpression;) > +<!ELEMENT %vector.qname; (%ContentExpression;) > +<!ELEMENT %matrix.qname; (%ContentExpression;) > +<!ELEMENT %matrixrow.qname; (%ContentExpression;) > + +<!ELEMENT %piecewise.qname; ((%piece.qname;)*, (%otherwise.qname;)? ) > +<!ELEMENT %piece.qname; (%ContentExpression;) > +<!ELEMENT %otherwise.qname; (%ContentExpression;) > + +<!-- Content elements: operator (user-defined) --> + +<!ELEMENT %fn.qname; (%ContentExpression;) > + +<!-- Content elements: quantifiers --> + +<!ELEMENT %lowlimit.qname; (%ContentExpression;) > +<!ELEMENT %uplimit.qname; (%ContentExpression;) > +<!ELEMENT %bvar.qname; (%ContentExpression;) > +<!ELEMENT %degree.qname; (%ContentExpression;) > +<!ELEMENT %logbase.qname; (%ContentExpression;) > +<!ELEMENT %momentabout.qname; (%ContentExpression;) > +<!ELEMENT %domainofapplication.qname; (%ContentExpression;) > + +<!-- ............................................................. --> +<!-- Presentation layout schemata contain tokens, + layout and content schemata. +--> + +<!ELEMENT %mstyle.qname; (%PresExpression;) > +<!ELEMENT %merror.qname; (%PresExpression;) > +<!ELEMENT %mphantom.qname; (%PresExpression;) > +<!ELEMENT %mrow.qname; (%PresExpression;) > +<!ELEMENT %mfrac.qname; (%PresExpression;) > +<!ELEMENT %msqrt.qname; (%PresExpression;) > +<!ELEMENT %menclose.qname; (%PresExpression;) > +<!ELEMENT %mroot.qname; (%PresExpression;) > +<!ELEMENT %msub.qname; (%PresExpression;) > +<!ELEMENT %msup.qname; (%PresExpression;) > +<!ELEMENT %msubsup.qname; (%PresExpression;) > +<!ELEMENT %mmultiscripts.qname; (%PresExpression;) > +<!ELEMENT %munder.qname; (%PresExpression;) > +<!ELEMENT %mover.qname; (%PresExpression;) > +<!ELEMENT %munderover.qname; (%PresExpression;) > +<!ELEMENT %mtable.qname; (%PresExpression;) > +<!ELEMENT %mtr.qname; (%PresExpression;) > +<!ELEMENT %mlabeledtr.qname; (%PresExpression;) > +<!ELEMENT %mtd.qname; (%PresExpression;) > +<!ELEMENT %maction.qname; (%PresExpression;) > +<!ELEMENT %mfenced.qname; (%PresExpression;) > +<!ELEMENT %mpadded.qname; (%PresExpression;) > + +<!-- Presentation elements contain PCDATA or malignmark constructs. --> + +<!ELEMENT %mi.qname; (%MathMLCharacters; | + %malignmark.qname;)* > +<!ELEMENT %mn.qname; (%MathMLCharacters; | + %malignmark.qname;)* > +<!ELEMENT %mo.qname; (%MathMLCharacters; | + %malignmark.qname;)* > +<!ELEMENT %mtext.qname; (%MathMLCharacters; | + %malignmark.qname;)* > +<!ELEMENT %ms.qname; (%MathMLCharacters; | + %malignmark.qname;)* > + +<!-- Browser interface definition ............................... --> + +<!-- Attributes for top-level element "math" --> + +<!ENTITY % att-macros + "macros CDATA #IMPLIED" > +<!ENTITY % att-mode + "mode CDATA #IMPLIED" > +<!ENTITY % att-display + "display CDATA #IMPLIED" > + +<!ENTITY % att-topinfo + "%MATHML.Common.attrib; + %att-macros; + %att-mode; + %att-display;" > + +<!-- Attributes for browser interface element --> + +<!ENTITY % att-baseline + "baseline CDATA #IMPLIED" > +<!ENTITY % att-overflow + "overflow ( scroll | elide | truncate | scale ) 'scroll'" > +<!ENTITY % att-altimg + "altimg CDATA #IMPLIED" > +<!ENTITY % att-alttext + "alttext CDATA #IMPLIED" > + +<!ENTITY % att-browif + "%att-type; + %att-name; + %att-height; + %att-width; + %att-baseline; + %att-overflow; + %att-altimg; + %att-alttext;" > + +<!-- ............................................................. --> +<!-- The top-level element "math" contains MathML encoded + mathematics. The "math" element has the browser info + attributes iff it is also the browser interface element. +--> + +<!ELEMENT %math.qname; (%MathExpression;) > + +<!ATTLIST %math.qname; + %att-topinfo; + %att-browif; > + +<!-- MathML Character Entities .............................................. --> +<!ENTITY % mathml-charent.module "INCLUDE" > +<![%mathml-charent.module;[ +<!-- Entity sets from ISO Technical Report 9573-13 ..... --> + +<!ENTITY % ent-isoamsa + PUBLIC "-//W3C//ENTITIES Added Math Symbols: Arrow Relations for MathML 2.0//EN" + "iso9573-13/isoamsa.ent" > +%ent-isoamsa; + +<!ENTITY % ent-isoamsb + PUBLIC "-//W3C//ENTITIES Added Math Symbols: Binary Operators for MathML 2.0//EN" + "iso9573-13/isoamsb.ent" > +%ent-isoamsb; + +<!ENTITY % ent-isoamsc + PUBLIC "-//W3C//ENTITIES Added Math Symbols: Delimiters for MathML 2.0//EN" + "iso9573-13/isoamsc.ent" > +%ent-isoamsc; + +<!ENTITY % ent-isoamsn + PUBLIC "-//W3C//ENTITIES Added Math Symbols: Negated Relations for MathML 2.0//EN" + "iso9573-13/isoamsn.ent" > +%ent-isoamsn; + +<!ENTITY % ent-isoamso + PUBLIC "-//W3C//ENTITIES Added Math Symbols: Ordinary for MathML 2.0//EN" + "iso9573-13/isoamso.ent" > +%ent-isoamso; + +<!ENTITY % ent-isoamsr + PUBLIC "-//W3C//ENTITIES Added Math Symbols: Relations for MathML 2.0//EN" + "iso9573-13/isoamsr.ent" > +%ent-isoamsr; + +<!ENTITY % ent-isogrk3 + PUBLIC "-//W3C//ENTITIES Greek Symbols for MathML 2.0//EN" + "iso9573-13/isogrk3.ent" > +%ent-isogrk3; + +<!ENTITY % ent-isomfrk + PUBLIC "-//W3C//ENTITIES Math Alphabets: Fraktur for MathML 2.0//EN" + "iso9573-13/isomfrk.ent" > +%ent-isomfrk; + +<!ENTITY % ent-isomopf + PUBLIC "-//W3C//ENTITIES Math Alphabets: Open Face for MathML 2.0//EN" + "iso9573-13/isomopf.ent" > +%ent-isomopf; + +<!ENTITY % ent-isomscr + PUBLIC "-//W3C//ENTITIES Math Alphabets: Script for MathML 2.0//EN" + "iso9573-13/isomscr.ent" > +%ent-isomscr; + +<!ENTITY % ent-isotech + PUBLIC "-//W3C//ENTITIES General Technical for MathML 2.0//EN" + "iso9573-13/isotech.ent" > +%ent-isotech; + +<!-- Entity sets from informative annex to ISO 8879:1986 (SGML) ....... --> + +<!ENTITY % ent-isobox + PUBLIC "-//W3C//ENTITIES Box and Line Drawing for MathML 2.0//EN" + "iso8879/isobox.ent" > +%ent-isobox; + +<!ENTITY % ent-isocyr1 + PUBLIC "-//W3C//ENTITIES Russian Cyrillic for MathML 2.0//EN" + "iso8879/isocyr1.ent" > +%ent-isocyr1; + +<!ENTITY % ent-isocyr2 + PUBLIC "-//W3C//ENTITIES Non-Russian Cyrillic for MathML 2.0//EN" + "iso8879/isocyr2.ent" > +%ent-isocyr2; + +<!ENTITY % ent-isodia + PUBLIC "-//W3C//ENTITIES Diacritical Marks for MathML 2.0//EN" + "iso8879/isodia.ent" > +%ent-isodia; + +<!ENTITY % ent-isolat1 + PUBLIC "-//W3C//ENTITIES Added Latin 1 for MathML 2.0//EN" + "iso8879/isolat1.ent" > +%ent-isolat1; + +<!ENTITY % ent-isolat2 + PUBLIC "-//W3C//ENTITIES Added Latin 2 for MathML 2.0//EN" + "iso8879/isolat2.ent" > +%ent-isolat2; + +<!ENTITY % ent-isonum + PUBLIC "-//W3C//ENTITIES Numeric and Special Graphic for MathML 2.0//EN" + "iso8879/isonum.ent" > +%ent-isonum; + +<!ENTITY % ent-isopub + PUBLIC "-//W3C//ENTITIES Publishing for MathML 2.0//EN" + "iso8879/isopub.ent" > +%ent-isopub; + +<!-- New characters defined by MathML ............................ --> + +<!ENTITY % ent-mmlextra + PUBLIC "-//W3C//ENTITIES Extra for MathML 2.0//EN" + "mathml/mmlextra.ent" > +%ent-mmlextra; + +<!-- MathML aliases for characters defined above ................. --> + +<!ENTITY % ent-mmlalias + PUBLIC "-//W3C//ENTITIES Aiases for MathML 2.0//EN" + "mathml/mmlalias.ent" > +%ent-mmlalias; + +<!-- end of MathML Character Entity section -->]]> + +<!-- Revision History: + + Initial draft (syntax = XML) 1997-05-09 + Stephen Buswell + Revised 1997-05-14 + Robert Miner + Revised 1997-06-29 and 1997-07-02 + Stephen Buswell + Revised 1997-12-15 + Stephen Buswell + Revised 1998-02-08 + Stephen Buswell + Revised 1998-04-04 + Stephen Buswell + Entities and small revisions 1999-02-21 + David Carlisle + Added attribute definitionURL to ci and cn 1999-10-11 + Nico Poppelier + Additions for MathML 2 1999-12-16 + David Carlisle + Namespace support 2000-01-14 + David Carlisle + XHTML Compatibility 2000-02-23 + Murray Altheim + New content elements 2000-03-26 + David Carlisle + Further revisions for MathML2 CR draft 2000-07-11 + David Carlisle + Further revisions for MathML2 CR draft 2000-10-31 + David Carlisle + Revisions for Unicode 3.2 2002-05-21 + David Carlisle + Add width and side attributes to mtable (to align with the specification) 2002-06-05 + David Carlisle + Use %XLINK.prefix rather than hardwired xlink:, add xlink:type 2002-06-12 + David Carlisle + Add missing numalign and denomalign attributes for mfrac 2002-07-05 + David Carlisle + +--> + +<!-- end of MathML 2.0 DTD ................................................ --> +<!-- ....................................................................... --> + |