asciimath 1.0.9 → 2.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/AST.adoc +457 -0
- data/CHANGELOG.adoc +12 -0
- data/Gemfile.lock +39 -0
- data/README.adoc +27 -3
- data/asciimath.gemspec +9 -5
- data/lib/asciimath.rb +5 -4
- data/lib/asciimath/ast.rb +456 -0
- data/lib/asciimath/cli.rb +4 -1
- data/lib/asciimath/color_table.rb +21 -0
- data/lib/asciimath/html.rb +126 -111
- data/lib/asciimath/latex.rb +386 -0
- data/lib/asciimath/markup.rb +478 -0
- data/lib/asciimath/mathml.rb +189 -87
- data/lib/asciimath/parser.rb +498 -343
- data/lib/asciimath/symbol_table.rb +25 -0
- data/lib/asciimath/version.rb +1 -1
- data/spec/ast.rb +144 -0
- data/spec/parser_spec.rb +592 -165
- data/spec/schema/mathml2/common/common-attribs.xsd +41 -0
- data/spec/schema/mathml2/common/math.xsd +126 -0
- data/spec/schema/mathml2/common/xlink-href.xsd +20 -0
- data/spec/schema/mathml2/content/arith.xsd +90 -0
- data/spec/schema/mathml2/content/calculus.xsd +146 -0
- data/spec/schema/mathml2/content/common-attrib.xsd +30 -0
- data/spec/schema/mathml2/content/constants.xsd +83 -0
- data/spec/schema/mathml2/content/constructs.xsd +260 -0
- data/spec/schema/mathml2/content/elementary-functions.xsd +117 -0
- data/spec/schema/mathml2/content/functions.xsd +73 -0
- data/spec/schema/mathml2/content/linear-algebra.xsd +173 -0
- data/spec/schema/mathml2/content/logic.xsd +53 -0
- data/spec/schema/mathml2/content/relations.xsd +55 -0
- data/spec/schema/mathml2/content/semantics.xsd +85 -0
- data/spec/schema/mathml2/content/sets.xsd +236 -0
- data/spec/schema/mathml2/content/statistics.xsd +136 -0
- data/spec/schema/mathml2/content/tokens.xsd +120 -0
- data/spec/schema/mathml2/content/vector-calculus.xsd +88 -0
- data/spec/schema/mathml2/mathml2.xsd +59 -0
- data/spec/schema/mathml2/presentation/action.xsd +44 -0
- data/spec/schema/mathml2/presentation/characters.xsd +37 -0
- data/spec/schema/mathml2/presentation/common-attribs.xsd +113 -0
- data/spec/schema/mathml2/presentation/common-types.xsd +103 -0
- data/spec/schema/mathml2/presentation/error.xsd +40 -0
- data/spec/schema/mathml2/presentation/layout.xsd +195 -0
- data/spec/schema/mathml2/presentation/scripts.xsd +186 -0
- data/spec/schema/mathml2/presentation/space.xsd +52 -0
- data/spec/schema/mathml2/presentation/style.xsd +69 -0
- data/spec/schema/mathml2/presentation/table.xsd +216 -0
- data/spec/schema/mathml2/presentation/tokens.xsd +124 -0
- data/spec/schema/mathml3/mathml3-common.xsd +99 -0
- data/spec/schema/mathml3/mathml3-content.xsd +684 -0
- data/spec/schema/mathml3/mathml3-presentation.xsd +2151 -0
- data/spec/schema/mathml3/mathml3-strict-content.xsd +186 -0
- data/spec/schema/mathml3/mathml3.xsd +9 -0
- metadata +102 -10
- data/.gitignore +0 -16
- data/.travis.yml +0 -18
@@ -0,0 +1,37 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
|
3
|
+
<xs:schema
|
4
|
+
xmlns:xs="http://www.w3.org/2001/XMLSchema"
|
5
|
+
xmlns="http://www.w3.org/1998/Math/MathML"
|
6
|
+
targetNamespace="http://www.w3.org/1998/Math/MathML"
|
7
|
+
elementFormDefault="qualified"
|
8
|
+
>
|
9
|
+
|
10
|
+
<xs:annotation>
|
11
|
+
<xs:documentation>
|
12
|
+
This is the XML Schema module for the MathML "mglyph" element.
|
13
|
+
Author: Stéphane Dalmas, INRIA.
|
14
|
+
</xs:documentation>
|
15
|
+
</xs:annotation>
|
16
|
+
|
17
|
+
<xs:attributeGroup name="mglyph.attlist">
|
18
|
+
<xs:attribute name="alt" type="xs:string"/>
|
19
|
+
<xs:attribute name="fontfamily" type="xs:string"/>
|
20
|
+
<xs:attribute name="index" type="xs:positiveInteger"/>
|
21
|
+
</xs:attributeGroup>
|
22
|
+
|
23
|
+
<xs:complexType name="mglyph.type">
|
24
|
+
<xs:attributeGroup ref="mglyph.attlist"/>
|
25
|
+
</xs:complexType>
|
26
|
+
|
27
|
+
<xs:element name="mglyph" type="mglyph.type"/>
|
28
|
+
|
29
|
+
</xs:schema>
|
30
|
+
|
31
|
+
|
32
|
+
<!--
|
33
|
+
Copyright û 2002 World Wide Web Consortium, (Massachusetts Institute
|
34
|
+
of Technology, Institut National de Recherche en Informatique et en
|
35
|
+
Automatique, Keio University). All Rights Reserved. See
|
36
|
+
http://www.w3.org/Consortium/Legal/.
|
37
|
+
-->
|
@@ -0,0 +1,113 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
|
3
|
+
<xs:schema
|
4
|
+
xmlns:xs="http://www.w3.org/2001/XMLSchema"
|
5
|
+
xmlns="http://www.w3.org/1998/Math/MathML"
|
6
|
+
targetNamespace="http://www.w3.org/1998/Math/MathML"
|
7
|
+
elementFormDefault="qualified"
|
8
|
+
>
|
9
|
+
|
10
|
+
<xs:annotation>
|
11
|
+
<xs:documentation>
|
12
|
+
This schema module defines sets of attributes common to several elements
|
13
|
+
of presentation MathML.
|
14
|
+
Author: Stéphane Dalmas, INRIA.
|
15
|
+
</xs:documentation>
|
16
|
+
</xs:annotation>
|
17
|
+
|
18
|
+
<!-- The mathematics style attributes. These attributes are valid on all
|
19
|
+
presentation token elements except "mspace" and "mglyph", and on no
|
20
|
+
other elements except "mstyle". -->
|
21
|
+
|
22
|
+
<xs:attributeGroup name="Token-style.attrib">
|
23
|
+
<xs:attribute name="mathvariant">
|
24
|
+
<xs:simpleType>
|
25
|
+
<xs:restriction base="xs:string">
|
26
|
+
<xs:enumeration value="normal"/>
|
27
|
+
<xs:enumeration value="bold"/>
|
28
|
+
<xs:enumeration value="italic"/>
|
29
|
+
<xs:enumeration value="bold-italic"/>
|
30
|
+
<xs:enumeration value="double-struck"/>
|
31
|
+
<xs:enumeration value="bold-fraktur"/>
|
32
|
+
<xs:enumeration value="script"/>
|
33
|
+
<xs:enumeration value="bold-script"/>
|
34
|
+
<xs:enumeration value="fraktur"/>
|
35
|
+
<xs:enumeration value="sans-serif"/>
|
36
|
+
<xs:enumeration value="bold-sans-serif"/>
|
37
|
+
<xs:enumeration value="sans-serif-italic"/>
|
38
|
+
<xs:enumeration value="sans-serif-bold-italic"/>
|
39
|
+
<xs:enumeration value="monospace"/>
|
40
|
+
</xs:restriction>
|
41
|
+
</xs:simpleType>
|
42
|
+
</xs:attribute>
|
43
|
+
<xs:attribute name="mathsize">
|
44
|
+
<xs:simpleType>
|
45
|
+
<xs:union memberTypes="simple-size length-with-unit"/>
|
46
|
+
</xs:simpleType>
|
47
|
+
</xs:attribute>
|
48
|
+
<!-- For both of the following attributes the types should be
|
49
|
+
more restricted -->
|
50
|
+
<xs:attribute name="mathcolor" type="xs:string"/>
|
51
|
+
<xs:attribute name="mathbackground" type="xs:string"/>
|
52
|
+
</xs:attributeGroup>
|
53
|
+
|
54
|
+
<!-- These operators are all related to operators. They are valid on "mo"
|
55
|
+
and "mstyle". -->
|
56
|
+
|
57
|
+
<xs:attributeGroup name="Operator.attrib">
|
58
|
+
<!-- this attribute value is normally inferred from the position of
|
59
|
+
the operator in its "<mrow"> -->
|
60
|
+
<xs:attribute name="form">
|
61
|
+
<xs:simpleType>
|
62
|
+
<xs:restriction base="xs:string">
|
63
|
+
<xs:enumeration value="prefix"/>
|
64
|
+
<xs:enumeration value="infix"/>
|
65
|
+
<xs:enumeration value="postfix"/>
|
66
|
+
</xs:restriction>
|
67
|
+
</xs:simpleType>
|
68
|
+
</xs:attribute>
|
69
|
+
<!-- set by dictionnary, else it is "thickmathspace" -->
|
70
|
+
<xs:attribute name="lspace">
|
71
|
+
<xs:simpleType>
|
72
|
+
<xs:union memberTypes="length-with-unit named-space"/>
|
73
|
+
</xs:simpleType>
|
74
|
+
</xs:attribute>
|
75
|
+
<!-- set by dictionnary, else it is "thickmathspace" -->
|
76
|
+
<xs:attribute name="rspace">
|
77
|
+
<xs:simpleType>
|
78
|
+
<xs:union memberTypes="length-with-unit named-space"/>
|
79
|
+
</xs:simpleType>
|
80
|
+
</xs:attribute>
|
81
|
+
<!-- set by dictionnary, else it is "false" -->
|
82
|
+
<xs:attribute name="fence" type="xs:boolean"/>
|
83
|
+
<!-- set by dictionnary, else it is "false" -->
|
84
|
+
<xs:attribute name="separator" type="xs:boolean"/>
|
85
|
+
<!-- set by dictionnary, else it is "false" -->
|
86
|
+
<xs:attribute name="stretchy" type="xs:boolean"/>
|
87
|
+
<!-- set by dictionnary, else it is "true" -->
|
88
|
+
<xs:attribute name="symmetric" type="xs:boolean"/>
|
89
|
+
<!-- set by dictionnary, else it is "false" -->
|
90
|
+
<xs:attribute name="movablelimits" type="xs:boolean"/>
|
91
|
+
<!-- set by dictionnary, else it is "false" -->
|
92
|
+
<xs:attribute name="accent" type="xs:boolean"/>
|
93
|
+
<!-- set by dictionnary, else it is "false" -->
|
94
|
+
<xs:attribute name="largeop" type="xs:boolean"/>
|
95
|
+
<xs:attribute name="minsize">
|
96
|
+
<xs:simpleType>
|
97
|
+
<xs:union memberTypes="length-with-unit named-space"/>
|
98
|
+
</xs:simpleType>
|
99
|
+
</xs:attribute>
|
100
|
+
<xs:attribute name="maxsize">
|
101
|
+
<xs:simpleType>
|
102
|
+
<xs:union memberTypes="length-with-unit named-space infinity xs:float"/>
|
103
|
+
</xs:simpleType>
|
104
|
+
</xs:attribute>
|
105
|
+
</xs:attributeGroup>
|
106
|
+
|
107
|
+
</xs:schema>
|
108
|
+
<!--
|
109
|
+
Copyright û 2002 World Wide Web Consortium, (Massachusetts Institute
|
110
|
+
of Technology, Institut National de Recherche en Informatique et en
|
111
|
+
Automatique, Keio University). All Rights Reserved. See
|
112
|
+
http://www.w3.org/Consortium/Legal/.
|
113
|
+
-->
|
@@ -0,0 +1,103 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
|
3
|
+
<xs:schema
|
4
|
+
xmlns:xs="http://www.w3.org/2001/XMLSchema"
|
5
|
+
xmlns="http://www.w3.org/1998/Math/MathML"
|
6
|
+
targetNamespace="http://www.w3.org/1998/Math/MathML"
|
7
|
+
elementFormDefault="qualified"
|
8
|
+
>
|
9
|
+
|
10
|
+
<xs:annotation>
|
11
|
+
<xs:documentation>
|
12
|
+
This is an XML Schema module containing some type definitions for MathML.
|
13
|
+
Author: Stéphane Dalmas, INRIA.
|
14
|
+
</xs:documentation>
|
15
|
+
</xs:annotation>
|
16
|
+
|
17
|
+
<!-- Simple sizes -->
|
18
|
+
|
19
|
+
<xs:simpleType name="simple-size">
|
20
|
+
<xs:restriction base="xs:string">
|
21
|
+
<xs:enumeration value="small"/>
|
22
|
+
<xs:enumeration value="normal"/>
|
23
|
+
<xs:enumeration value="big"/>
|
24
|
+
</xs:restriction>
|
25
|
+
</xs:simpleType>
|
26
|
+
|
27
|
+
<!-- Centering values -->
|
28
|
+
|
29
|
+
<xs:simpleType name="centering">
|
30
|
+
<xs:restriction base="xs:string">
|
31
|
+
<xs:enumeration value="left"/>
|
32
|
+
<xs:enumeration value="center"/>
|
33
|
+
<xs:enumeration value="right"/>
|
34
|
+
</xs:restriction>
|
35
|
+
</xs:simpleType>
|
36
|
+
|
37
|
+
<!-- The named spaces -->
|
38
|
+
|
39
|
+
<!-- this is also used in the value of the "width" attribute on the
|
40
|
+
"mpadded" element -->
|
41
|
+
<xs:simpleType name="named-space">
|
42
|
+
<xs:restriction base="xs:string">
|
43
|
+
<xs:enumeration value="veryverythinmathspace"/>
|
44
|
+
<xs:enumeration value="verythinmathspace"/>
|
45
|
+
<xs:enumeration value="thinmathspace"/>
|
46
|
+
<xs:enumeration value="mediummathspace"/>
|
47
|
+
<xs:enumeration value="thickmathspace"/>
|
48
|
+
<xs:enumeration value="verythickmathspace"/>
|
49
|
+
<xs:enumeration value="veryverythickmathspace"/>
|
50
|
+
</xs:restriction>
|
51
|
+
</xs:simpleType>
|
52
|
+
|
53
|
+
<!-- Thickness -->
|
54
|
+
|
55
|
+
<xs:simpleType name="thickness">
|
56
|
+
<xs:restriction base="xs:string">
|
57
|
+
<xs:enumeration value="thin"/>
|
58
|
+
<xs:enumeration value="medium"/>
|
59
|
+
<xs:enumeration value="thick"/>
|
60
|
+
</xs:restriction>
|
61
|
+
</xs:simpleType>
|
62
|
+
|
63
|
+
|
64
|
+
<!-- number with units used to specified lengths -->
|
65
|
+
|
66
|
+
<xs:simpleType name="length-with-unit">
|
67
|
+
<xs:restriction base="xs:string">
|
68
|
+
<xs:pattern
|
69
|
+
value="(-?([0-9]+|[0-9]*\.[0-9]+)*(em|ex|px|in|cm|mm|pt|pc|%))|0"/>
|
70
|
+
</xs:restriction>
|
71
|
+
</xs:simpleType>
|
72
|
+
|
73
|
+
<xs:simpleType name="length-with-optional-unit">
|
74
|
+
<xs:restriction base="xs:string">
|
75
|
+
<xs:pattern
|
76
|
+
value="-?([0-9]+|[0-9]*\.[0-9]+)*(em|ex|px|in|cm|mm|pt|pc|%)?"/>
|
77
|
+
</xs:restriction>
|
78
|
+
</xs:simpleType>
|
79
|
+
|
80
|
+
<!-- This is just "infinity" that can be used as a length -->
|
81
|
+
|
82
|
+
<xs:simpleType name="infinity">
|
83
|
+
<xs:restriction base="xs:string">
|
84
|
+
<xs:enumeration value="infinity"/>
|
85
|
+
</xs:restriction>
|
86
|
+
</xs:simpleType>
|
87
|
+
|
88
|
+
<!-- colors defined as RGB -->
|
89
|
+
|
90
|
+
<xs:simpleType name="RGB-color">
|
91
|
+
<xs:restriction base="xs:string">
|
92
|
+
<xs:pattern value="#(([0-9]|[a-f]){3}|([0-9]|[a-f]){6})"/>
|
93
|
+
</xs:restriction>
|
94
|
+
</xs:simpleType>
|
95
|
+
|
96
|
+
</xs:schema>
|
97
|
+
|
98
|
+
<!--
|
99
|
+
Copyright û 2002 World Wide Web Consortium, (Massachusetts Institute
|
100
|
+
of Technology, Institut National de Recherche en Informatique et en
|
101
|
+
Automatique, Keio University). All Rights Reserved. See
|
102
|
+
http://www.w3.org/Consortium/Legal/.
|
103
|
+
-->
|
@@ -0,0 +1,40 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
|
3
|
+
<xs:schema
|
4
|
+
xmlns:xs="http://www.w3.org/2001/XMLSchema"
|
5
|
+
xmlns="http://www.w3.org/1998/Math/MathML"
|
6
|
+
targetNamespace="http://www.w3.org/1998/Math/MathML"
|
7
|
+
elementFormDefault="qualified"
|
8
|
+
>
|
9
|
+
|
10
|
+
<xs:annotation>
|
11
|
+
<xs:documentation>
|
12
|
+
This is the XML Schema module for the MathML "merror" element.
|
13
|
+
Author: Stéphane Dalmas, INRIA.
|
14
|
+
</xs:documentation>
|
15
|
+
</xs:annotation>
|
16
|
+
|
17
|
+
<xs:attributeGroup name="merror.attlist">
|
18
|
+
<xs:attributeGroup ref="Common.attrib"/>
|
19
|
+
</xs:attributeGroup>
|
20
|
+
|
21
|
+
<xs:group name="merror.content">
|
22
|
+
<xs:sequence>
|
23
|
+
<xs:group ref="Presentation-expr.class"/>
|
24
|
+
</xs:sequence>
|
25
|
+
</xs:group>
|
26
|
+
|
27
|
+
<xs:complexType name="merror.type">
|
28
|
+
<xs:group ref="merror.content" minOccurs="0" maxOccurs="unbounded"/>
|
29
|
+
<xs:attributeGroup ref="merror.attlist"/>
|
30
|
+
</xs:complexType>
|
31
|
+
|
32
|
+
<xs:element name="merror" type="merror.type"/>
|
33
|
+
|
34
|
+
</xs:schema>
|
35
|
+
<!--
|
36
|
+
Copyright û 2002 World Wide Web Consortium, (Massachusetts Institute
|
37
|
+
of Technology, Institut National de Recherche en Informatique et en
|
38
|
+
Automatique, Keio University). All Rights Reserved. See
|
39
|
+
http://www.w3.org/Consortium/Legal/.
|
40
|
+
-->
|
@@ -0,0 +1,195 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
|
3
|
+
<xs:schema
|
4
|
+
xmlns:xs="http://www.w3.org/2001/XMLSchema"
|
5
|
+
xmlns="http://www.w3.org/1998/Math/MathML"
|
6
|
+
targetNamespace="http://www.w3.org/1998/Math/MathML"
|
7
|
+
elementFormDefault="qualified"
|
8
|
+
>
|
9
|
+
<xs:annotation>
|
10
|
+
<xs:documentation>
|
11
|
+
This is the XML schema module for the layout elements of the
|
12
|
+
presentation part of MathML.
|
13
|
+
Author: Stéphane Dalmas, INRIA.
|
14
|
+
</xs:documentation>
|
15
|
+
</xs:annotation>
|
16
|
+
|
17
|
+
<!-- "mrow" -->
|
18
|
+
|
19
|
+
<xs:attributeGroup name="mrow.attlist">
|
20
|
+
<xs:attributeGroup ref="Common.attrib"/>
|
21
|
+
</xs:attributeGroup>
|
22
|
+
|
23
|
+
<xs:complexType name="mrow.type">
|
24
|
+
<xs:group ref="Presentation-expr.class" minOccurs="0" maxOccurs="unbounded"/>
|
25
|
+
<xs:attributeGroup ref="mrow.attlist"/>
|
26
|
+
</xs:complexType>
|
27
|
+
|
28
|
+
<xs:element name="mrow" type="mrow.type"/>
|
29
|
+
|
30
|
+
<!-- "mfrac" -->
|
31
|
+
|
32
|
+
<xs:attributeGroup name="mfrac.attlist">
|
33
|
+
<xs:attribute name="bevelled" type="xs:boolean"/>
|
34
|
+
<xs:attribute name="denomalign" type="centering" default="center"/>
|
35
|
+
<xs:attribute name="numalign" type="centering" default="center"/>
|
36
|
+
<xs:attribute name="linethickness" default="1">
|
37
|
+
<xs:simpleType>
|
38
|
+
<xs:union memberTypes="length-with-optional-unit thickness"/>
|
39
|
+
</xs:simpleType>
|
40
|
+
</xs:attribute>
|
41
|
+
<xs:attributeGroup ref="Common.attrib"/>
|
42
|
+
</xs:attributeGroup>
|
43
|
+
|
44
|
+
<xs:complexType name="mfrac.type">
|
45
|
+
<xs:group ref="Presentation-expr.class" minOccurs="2" maxOccurs="2"/>
|
46
|
+
<xs:attributeGroup ref="mfrac.attlist"/>
|
47
|
+
</xs:complexType>
|
48
|
+
|
49
|
+
<xs:element name="mfrac" type="mfrac.type"/>
|
50
|
+
|
51
|
+
<!-- "msqrt" -->
|
52
|
+
|
53
|
+
<xs:attributeGroup name="msqrt.attlist">
|
54
|
+
<xs:attributeGroup ref="Common.attrib"/>
|
55
|
+
</xs:attributeGroup>
|
56
|
+
|
57
|
+
<!-- "msqrt" has an "inferred mrow" if more than one argument -->
|
58
|
+
<xs:complexType name="msqrt.type">
|
59
|
+
<xs:group ref="Presentation-expr.class" minOccurs="0" maxOccurs="unbounded"/>
|
60
|
+
<xs:attributeGroup ref="msqrt.attlist"/>
|
61
|
+
</xs:complexType>
|
62
|
+
|
63
|
+
<xs:element name="msqrt" type="msqrt.type"/>
|
64
|
+
|
65
|
+
<!-- "mroot" -->
|
66
|
+
|
67
|
+
<xs:attributeGroup name="mroot.attlist">
|
68
|
+
<xs:attributeGroup ref="Common.attrib"/>
|
69
|
+
</xs:attributeGroup>
|
70
|
+
|
71
|
+
<xs:complexType name="mroot.type">
|
72
|
+
<xs:group ref="Presentation-expr.class" minOccurs="2" maxOccurs="2"/>
|
73
|
+
<xs:attributeGroup ref="mroot.attlist"/>
|
74
|
+
</xs:complexType>
|
75
|
+
|
76
|
+
<xs:element name="mroot" type="mroot.type"/>
|
77
|
+
|
78
|
+
<!-- "mpadded" -->
|
79
|
+
|
80
|
+
<xs:simpleType name="mpadded-space">
|
81
|
+
<xs:restriction base="xs:string">
|
82
|
+
<xs:pattern
|
83
|
+
value="(\+|-)?([0-9]+|[0-9]*\.[0-9]+)(((%?) *(width|lspace|height|depth))|(em|ex|px|in|cm|mm|pt|pc))"/>
|
84
|
+
</xs:restriction>
|
85
|
+
</xs:simpleType>
|
86
|
+
|
87
|
+
<xs:simpleType name="mpadded-width-space">
|
88
|
+
<xs:restriction base="xs:string">
|
89
|
+
<!-- MaxF: definition from spec seems wrong, fixing to ([+|-] unsigned-number (%[pseudo-unit]|pseudo-unit|h-unit)) | namedspace | 0 -->
|
90
|
+
<xs:pattern value="((\+|-)?([0-9]+|[0-9]*\.[0-9]+)(((%?) *(width|lspace|height|depth)?)|(width|lspace|height|depth)|(em|ex|px|in|cm|mm|pt|pc)))|((veryverythin|verythin|thin|medium|thick|verythick|veryverythick)mathspace)|0"/>
|
91
|
+
</xs:restriction>
|
92
|
+
</xs:simpleType>
|
93
|
+
|
94
|
+
<xs:attributeGroup name="mpadded.attlist">
|
95
|
+
<xs:attribute name="width" type="mpadded-width-space"/>
|
96
|
+
<!-- should have default=0 below but '0' is not in value space -->
|
97
|
+
<!-- see bug #425 -->
|
98
|
+
<xs:attribute name="lspace" type="mpadded-space"/>
|
99
|
+
<xs:attribute name="height" type="mpadded-space"/>
|
100
|
+
<xs:attribute name="depth" type="mpadded-space"/>
|
101
|
+
<xs:attributeGroup ref="Common.attrib"/>
|
102
|
+
</xs:attributeGroup>
|
103
|
+
|
104
|
+
<xs:complexType name="mpadded.type">
|
105
|
+
<xs:group ref="Presentation-expr.class" minOccurs="0" maxOccurs="unbounded"/>
|
106
|
+
<xs:attributeGroup ref="mpadded.attlist"/>
|
107
|
+
</xs:complexType>
|
108
|
+
|
109
|
+
<xs:element name="mpadded" type="mpadded.type"/>
|
110
|
+
|
111
|
+
<!-- "mphantom" -->
|
112
|
+
|
113
|
+
<xs:attributeGroup name="mphantom.attlist">
|
114
|
+
<xs:attributeGroup ref="Common.attrib"/>
|
115
|
+
</xs:attributeGroup>
|
116
|
+
|
117
|
+
<xs:complexType name="mphantom.type">
|
118
|
+
<xs:group ref="Presentation-expr.class" minOccurs="0" maxOccurs="unbounded"/>
|
119
|
+
<xs:attributeGroup ref="mphantom.attlist"/>
|
120
|
+
</xs:complexType>
|
121
|
+
|
122
|
+
<xs:element name="mphantom" type="mphantom.type"/>
|
123
|
+
|
124
|
+
<!-- "mfenced" -->
|
125
|
+
|
126
|
+
<xs:attributeGroup name="mfenced.attlist">
|
127
|
+
<xs:attribute name="open" type="xs:string" default="("/>
|
128
|
+
<xs:attribute name="close" type="xs:string" default=")"/>
|
129
|
+
<xs:attribute name="separators" type="xs:string" default=","/>
|
130
|
+
<xs:attributeGroup ref="Common.attrib"/>
|
131
|
+
</xs:attributeGroup>
|
132
|
+
|
133
|
+
<xs:complexType name="mfenced.type">
|
134
|
+
<xs:group ref="Presentation-expr.class" minOccurs="0" maxOccurs="unbounded"/>
|
135
|
+
<xs:attributeGroup ref="mfenced.attlist"/>
|
136
|
+
</xs:complexType>
|
137
|
+
|
138
|
+
<xs:element name="mfenced" type="mfenced.type"/>
|
139
|
+
|
140
|
+
<!-- "menclose" -->
|
141
|
+
|
142
|
+
<xs:attributeGroup name="menclose.attlist">
|
143
|
+
<xs:attribute name="notation" default="longdiv">
|
144
|
+
<xs:simpleType>
|
145
|
+
<xs:restriction base="xs:string">
|
146
|
+
<xs:enumeration value="actuarial"/>
|
147
|
+
<xs:enumeration value="longdiv"/>
|
148
|
+
<xs:enumeration value="radical"/>
|
149
|
+
<xs:enumeration value="box"/>
|
150
|
+
<xs:enumeration value="roundedbox"/>
|
151
|
+
<xs:enumeration value="circle"/>
|
152
|
+
<xs:enumeration value="left"/>
|
153
|
+
<xs:enumeration value="right"/>
|
154
|
+
<xs:enumeration value="top"/>
|
155
|
+
<xs:enumeration value="bottom"/>
|
156
|
+
<xs:enumeration value="updiagonalstrike"/>
|
157
|
+
<xs:enumeration value="downdiagonalstrike"/>
|
158
|
+
<xs:enumeration value="verticalstrike"/>
|
159
|
+
<xs:enumeration value="horizontalstrike"/>
|
160
|
+
</xs:restriction>
|
161
|
+
</xs:simpleType>
|
162
|
+
</xs:attribute>
|
163
|
+
<xs:attributeGroup ref="Common.attrib"/>
|
164
|
+
</xs:attributeGroup>
|
165
|
+
|
166
|
+
<xs:complexType name="menclose.type">
|
167
|
+
<xs:group ref="Presentation-expr.class" minOccurs="0" maxOccurs="unbounded"/>
|
168
|
+
<xs:attributeGroup ref="menclose.attlist"/>
|
169
|
+
</xs:complexType>
|
170
|
+
|
171
|
+
<xs:element name="menclose" type="menclose.type"/>
|
172
|
+
|
173
|
+
<!-- And the group of everything -->
|
174
|
+
|
175
|
+
<xs:group name="Presentation-layout.class">
|
176
|
+
<xs:choice>
|
177
|
+
<xs:element ref="mrow"/>
|
178
|
+
<xs:element ref="mfrac"/>
|
179
|
+
<xs:element ref="msqrt"/>
|
180
|
+
<xs:element ref="mroot"/>
|
181
|
+
<xs:element ref="mpadded"/>
|
182
|
+
<xs:element ref="mphantom"/>
|
183
|
+
<xs:element ref="mfenced"/>
|
184
|
+
<xs:element ref="menclose"/>
|
185
|
+
</xs:choice>
|
186
|
+
</xs:group>
|
187
|
+
|
188
|
+
</xs:schema>
|
189
|
+
|
190
|
+
<!--
|
191
|
+
Copyright û 2002 World Wide Web Consortium, (Massachusetts Institute
|
192
|
+
of Technology, Institut National de Recherche en Informatique et en
|
193
|
+
Automatique, Keio University). All Rights Reserved. See
|
194
|
+
http://www.w3.org/Consortium/Legal/.
|
195
|
+
-->
|