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
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
|
<?xml version="1.0" encoding="UTF-8"?>
<!ELEMENT AssemblyCulture (#PCDATA)>
<!ELEMENT AssemblyInfo (AssemblyName, ((AssemblyPublicKey, AssemblyVersion) | (AssemblyVersion, AssemblyPublicKey)), AssemblyCulture, Attributes)>
<!ELEMENT AssemblyName (#PCDATA)>
<!ELEMENT AssemblyPublicKey (#PCDATA)>
<!ELEMENT AssemblyVersion (#PCDATA)>
<!ELEMENT Attribute (AttributeName, Excluded?, ExcludedTypeName?, ExcludedLibraryName?)>
<!ELEMENT AttributeName (#PCDATA)>
<!ELEMENT Attributes (Attribute*)>
<!ELEMENT Base (BaseTypeName?, ExcludedBaseTypeName?, ExcludedLibraryName?)>
<!ELEMENT BaseTypeName (#PCDATA)>
<!ELEMENT Constraints (ParameterAttribute+, BaseTypeName?) >
<!ELEMENT Docs ((summary?, altmember?, altcompliant?, typeparam*, param*, returns?, value?, exception*, threadsafe?, remarks?, example?, permission?) | (typeparam*, param*, summary?, altmember?, altcompliant?, returns?, value?, exception*, threadsafe?, remarks?, example?, permission?) | (summary?, altmember?, altcompliant?, typeparam*, param*, returns?, value?, remarks?, threadsafe?, exception*, example?, permission?) | (typeparam*, param*, summary?, altmember?, altcompliant?, returns?, value?, remarks?, threadsafe?, exception*, example?, permission?))>
<!ELEMENT Excluded (#PCDATA)>
<!ELEMENT ExcludedBaseTypeName (#PCDATA)>
<!ELEMENT ExcludedLibrary (#PCDATA)>
<!ELEMENT ExcludedLibraryName (#PCDATA)>
<!ELEMENT ExcludedTypeName (#PCDATA)>
<!ELEMENT Interface (InterfaceName, Excluded?)>
<!ELEMENT InterfaceName (#PCDATA)>
<!ELEMENT Interfaces (Interface*)>
<!ELEMENT Libraries (Types+)>
<!ELEMENT Member (MemberSignature+, MemberType, Attributes?, ReturnValue, TypeParameters?, Parameters, MemberValue?, Docs, Excluded?, ExcludedLibrary*)>
<!ATTLIST Member
MemberName CDATA #REQUIRED
>
<!ELEMENT MemberOfLibrary (#PCDATA)>
<!ELEMENT MemberSignature EMPTY>
<!ATTLIST MemberSignature
Language CDATA #REQUIRED
Value CDATA #REQUIRED
>
<!ELEMENT MemberType (#PCDATA)>
<!ELEMENT MemberValue (#PCDATA)>
<!ELEMENT Members (Member*)>
<!ELEMENT PRE EMPTY>
<!ELEMENT Parameter (Attributes?)>
<!ATTLIST Parameter
Name NMTOKEN #REQUIRED
Type CDATA #REQUIRED
RefType CDATA #IMPLIED
>
<!ELEMENT ParameterAttribute (#PCDATA) >
<!ELEMENT Parameters (Parameter*)>
<!ELEMENT ReturnType (#PCDATA)>
<!ELEMENT ReturnValue (ReturnType?)>
<!ELEMENT SPAN (#PCDATA | para | paramref | SPAN | see | block)*>
<!ELEMENT ThreadingSafetyStatement (#PCDATA)>
<!ELEMENT Type (TypeSignature+, MemberOfLibrary, AssemblyInfo, ThreadingSafetyStatement?, TypeParameters?, ((Docs, Parameters?, ReturnValue?, Base, Interfaces?) | (Base, Interfaces?, Parameters?, ReturnValue?, Docs)) , Attributes?, Members?, TypeExcluded)>
<!ATTLIST Type
Name CDATA #REQUIRED
FullName CDATA #REQUIRED
FullNameSP CDATA #REQUIRED
>
<!ELEMENT TypeExcluded (#PCDATA)>
<!ELEMENT TypeParameter (Constraints*) >
<!ATTLIST TypeParameter
Name CDATA #REQUIRED
>
<!ELEMENT TypeParameters (TypeParameter*)>
<!ELEMENT TypeSignature EMPTY>
<!ATTLIST TypeSignature
Language CDATA #REQUIRED
Value CDATA #REQUIRED
>
<!ELEMENT Types (Type+)>
<!ATTLIST Types
Library NMTOKEN #REQUIRED
>
<!ELEMENT altcompliant EMPTY>
<!ATTLIST altcompliant
cref CDATA #REQUIRED
>
<!ELEMENT altmember EMPTY>
<!ATTLIST altmember
cref CDATA #REQUIRED
>
<!ELEMENT block (#PCDATA | see | para | paramref | list | block | c | subscript | code | sup | pi | plusminus | whitespace)*>
<!ATTLIST block
subset CDATA #REQUIRED
type NMTOKEN #REQUIRED
>
<!ELEMENT c (#PCDATA | para | paramref | code | see)*>
<!ELEMENT code (#PCDATA)>
<!ATTLIST code
lang CDATA #IMPLIED
>
<!ELEMENT codelink EMPTY>
<!ATTLIST codelink
SampleID CDATA #REQUIRED
SnippetID CDATA #REQUIRED
>
<!ELEMENT description (#PCDATA | SPAN | paramref | para | see | c | permille | block | sub | plusminus)*>
<!ELEMENT example (#PCDATA | para | code | c | codelink | list | see)*>
<!ELEMENT exception (#PCDATA | paramref | see | para | SPAN | block)*>
<!ATTLIST exception
cref CDATA #REQUIRED
>
<!ELEMENT geq EMPTY>
<!ELEMENT i (#PCDATA)>
<!ELEMENT infinity EMPTY>
<!ELEMENT item (term, description*)>
<!ELEMENT leq EMPTY>
<!ELEMENT list (listheader?, item*)>
<!ATTLIST list
type NMTOKEN #REQUIRED
>
<!ELEMENT listheader (term, description+)>
<!ELEMENT onequarter EMPTY>
<!ELEMENT para (#PCDATA | see | block | paramref | c | onequarter | superscript | sup | permille | SPAN | list | pi | theta | sub | leq | geq | plusminus | whitespace)*>
<!ELEMENT param (#PCDATA | c | paramref | see | block | para | SPAN | geq | leq | whitespace)*>
<!ATTLIST param
name CDATA #REQUIRED
>
<!ELEMENT paramref EMPTY>
<!ATTLIST paramref
name CDATA #REQUIRED
>
<!ELEMENT permille EMPTY>
<!ELEMENT permission (#PCDATA | see | paramref | para | block)*>
<!ATTLIST permission
cref CDATA #REQUIRED
>
<!ELEMENT pi EMPTY>
<!ELEMENT plusminus EMPTY>
<!ELEMENT pre EMPTY>
<!ELEMENT remarks (#PCDATA | para | block | list | c | paramref | see | pre | SPAN | code | PRE)*>
<!ELEMENT returns (#PCDATA | para | list | paramref | see)*>
<!ELEMENT see EMPTY>
<!ATTLIST see
cref CDATA #IMPLIED
langword CDATA #IMPLIED
qualify CDATA #IMPLIED
>
<!ELEMENT sub (#PCDATA | paramref)*>
<!ELEMENT subscript EMPTY>
<!ATTLIST subscript
term CDATA #REQUIRED
>
<!ELEMENT summary (#PCDATA | para | see | block | list)*>
<!ELEMENT sup (#PCDATA | i | paramref)*>
<!ELEMENT superscript EMPTY>
<!ATTLIST superscript
term CDATA #REQUIRED
>
<!ELEMENT term (#PCDATA | block | see | paramref | para | c | sup | pi | theta | leq | geq | plusminus | whitespace)*>
<!ELEMENT theta EMPTY>
<!ELEMENT threadsafe (para+)>
<!ELEMENT typeparam (#PCDATA | c | paramref | see | block | para | SPAN | geq | leq | whitespace)*>
<!ATTLIST typeparam
name CDATA #REQUIRED
>
<!ELEMENT value (#PCDATA | para | list | see)*>
<!ELEMENT whitespace EMPTY>
|