forked from OpenMath/OMSTD
-
Notifications
You must be signed in to change notification settings - Fork 0
/
omcdgroup2.rng
86 lines (86 loc) · 2.23 KB
/
omcdgroup2.rng
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
<?xml version="1.0" encoding="UTF-8"?>
<!-- Schema for OpenMath CD groups -->
<!-- info on the CD group itself -->
<grammar ns="http://www.openmath.org/OpenMathCDG" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
<define name="CDGroupName">
<element name="CDGroupName">
<data type="NCName"/>
</element>
</define>
<define name="CDGroupVersion">
<element name="CDGroupVersion">
<data type="nonNegativeInteger"/>
</element>
</define>
<define name="CDGroupRevision">
<element name="CDGroupRevision">
<data type="nonNegativeInteger"/>
</element>
</define>
<define name="CDGroupURL">
<element name="CDGroupURL">
<text/>
</element>
</define>
<define name="CDGroupDescription">
<element name="CDGroupDescription">
<text/>
</element>
</define>
<!-- info on the CDs in the group -->
<define name="CDComment">
<element name="CDComment">
<text/>
</element>
</define>
<define name="CDGroupMember">
<element name="CDGroupMember">
<optional>
<ref name="CDComment"/>
</optional>
<ref name="CDName"/>
<optional>
<ref name="CDVersion"/>
</optional>
<optional>
<ref name="CDURL"/>
</optional>
</element>
</define>
<define name="CDName">
<element name="CDName">
<data type="NCName"/>
</element>
</define>
<define name="CDVersion">
<element name="CDVersion">
<data type="nonNegativeInteger"/>
</element>
</define>
<define name="CDURL">
<element name="CDURL">
<text/>
</element>
</define>
<!-- structure of the group -->
<define name="CDGroup">
<element name="CDGroup">
<ref name="CDGroupName"/>
<ref name="CDGroupVersion"/>
<optional>
<ref name="CDGroupRevision"/>
</optional>
<ref name="CDGroupURL"/>
<ref name="CDGroupDescription"/>
<zeroOrMore>
<choice>
<ref name="CDGroupMember"/>
<ref name="CDComment"/>
</choice>
</zeroOrMore>
</element>
</define>
<start>
<ref name="CDGroup"/>
</start>
</grammar>