asciimath 1.0.9 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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
|
+
-->
|