1 karl 1.1 <!-- ************************************************** -->
2 <!-- -->
3 <!-- This DTD defines the schema for XML 1.0 Documents -->
4 <!-- representing CIM Element Declarations or Messages. -->
5 <!-- -->
6 <!-- DTD Version : 2.0 -->
7 <!-- Date: July 20th 1999 -->
8 <!-- ************************************************** -->
9
10 <!-- ************************************************** -->
11 <!-- Entity Declarations -->
12 <!-- ************************************************** -->
13
14 <!ENTITY % CIMName "NAME CDATA #REQUIRED">
15
16 <!ENTITY % CIMType "TYPE (boolean|string|char16|uint8|sint8|uint16|sint16|uint32|sint32|uint64|sint64|datetime|real32|real64)">
17
18 <!ENTITY % QualifierFlavor "OVERRIDABLE (true|false) 'true'
19 TOSUBCLASS (true|false) 'true'
20 TOINSTANCE (true|false) 'false'
21 TRANSLATABLE (true|false) 'false'">
22 karl 1.1
23 <!ENTITY % ClassOrigin "CLASSORIGIN CDATA #IMPLIED">
24
25 <!ENTITY % Propagated "PROPAGATED (true|false) 'false'">
26
27 <!ENTITY % ArraySize "ARRAYSIZE CDATA #IMPLIED">
28
29 <!ENTITY % SuperClass "SUPERCLASS CDATA #IMPLIED">
30
31 <!ENTITY % ClassName "CLASSNAME CDATA #REQUIRED">
32
33 <!ENTITY % ReferenceClass "REFERENCECLASS CDATA #IMPLIED">
34
35
36 <!-- ************************************************** -->
37 <!-- Root element -->
38 <!-- CIMVERSION must be "2.0" -->
39 <!-- DTDVERSION must be "2.0" -->
40 <!-- ************************************************** -->
41
42 <!ELEMENT CIM (MESSAGE|DECLARATION)>
43 karl 1.1 <!ATTLIST CIM
44 CIMVERSION CDATA #REQUIRED
45 DTDVERSION CDATA #REQUIRED>
46
47
48 <!-- ************************************************** -->
49 <!-- Object declaration elements -->
50 <!-- ************************************************** -->
51
52 <!ELEMENT DECLARATION (DECLGROUP|DECLGROUP.WITHNAME|DECLGROUP.WITHPATH)*>
53
54 <!ELEMENT DECLGROUP ((LOCALNAMESPACEPATH|NAMESPACEPATH)?,QUALIFIER.DECLARATION*,VALUE.OBJECT*)>
55
56 <!ELEMENT DECLGROUP.WITHNAME ((LOCALNAMESPACEPATH|NAMESPACEPATH)?,QUALIFIER.DECLARATION*,VALUE.NAMEDOBJECT*)>
57
58 <!ELEMENT DECLGROUP.WITHPATH (VALUE.OBJECTWITHPATH|VALUE.OBJECTWITHLOCALPATH)*>
59
60 <!ELEMENT QUALIFIER.DECLARATION (SCOPE?,(VALUE|VALUE.ARRAY)?)>
61 <!ATTLIST QUALIFIER.DECLARATION
62 %CIMName;
63 %CIMType; #REQUIRED
64 karl 1.1 ISARRAY (true|false) #IMPLIED
65 %ArraySize;
66 %QualifierFlavor;>
67
68 <!ELEMENT SCOPE EMPTY>
69 <!ATTLIST SCOPE
70 CLASS (true|false) 'false'
71 ASSOCIATION (true|false) 'false'
72 REFERENCE (true|false) 'false'
73 PROPERTY (true|false) 'false'
74 METHOD (true|false) 'false'
75 PARAMETER (true|false) 'false'
76 INDICATION (true|false) 'false'>
77
78
79 <!-- ************************************************** -->
80 <!-- Object Value elements -->
81 <!-- ************************************************** -->
82
83 <!ELEMENT VALUE (#PCDATA)>
84
85 karl 1.1 <!ELEMENT VALUE.ARRAY (VALUE*)>
86
87 <!ELEMENT VALUE.REFERENCE (CLASSPATH|LOCALCLASSPATH|CLASSNAME|
88 INSTANCEPATH|LOCALINSTANCEPATH|INSTANCENAME)>
89
90 <!ELEMENT VALUE.REFARRAY (VALUE.REFERENCE*)>
91
92 <!ELEMENT VALUE.OBJECT (CLASS|INSTANCE)>
93
94 <!ELEMENT VALUE.NAMEDINSTANCE (INSTANCENAME,INSTANCE)>
95
96 <!ELEMENT VALUE.NAMEDOBJECT (CLASS|(INSTANCENAME,INSTANCE))>
97
98 <!ELEMENT VALUE.OBJECTWITHLOCALPATH ((LOCALCLASSPATH,CLASS)|(LOCALINSTANCEPATH,INSTANCE))>
99
100 <!ELEMENT VALUE.OBJECTWITHPATH ((CLASSPATH,CLASS)|(INSTANCEPATH,INSTANCE))>
101
102
103 <!-- ************************************************** -->
104 <!-- Object naming and locating elements -->
105 <!-- ************************************************** -->
106 karl 1.1
107 <!ELEMENT NAMESPACEPATH (HOST,LOCALNAMESPACEPATH)>
108
109 <!ELEMENT LOCALNAMESPACEPATH (NAMESPACE+)>
110
111 <!ELEMENT HOST (#PCDATA)>
112
113 <!ELEMENT NAMESPACE EMPTY>
114 <!ATTLIST NAMESPACE
115 %CIMName;>
116
117 <!ELEMENT CLASSPATH (NAMESPACEPATH,CLASSNAME)>
118
119 <!ELEMENT LOCALCLASSPATH (LOCALNAMESPACEPATH,CLASSNAME)>
120
121 <!ELEMENT CLASSNAME EMPTY>
122 <!ATTLIST CLASSNAME
123 %CIMName;>
124
125 <!ELEMENT INSTANCEPATH (NAMESPACEPATH,INSTANCENAME)>
126
127 karl 1.1 <!ELEMENT LOCALINSTANCEPATH (LOCALNAMESPACEPATH,INSTANCENAME)>
128
129 <!ELEMENT INSTANCENAME (KEYBINDING*|KEYVALUE?|VALUE.REFERENCE?)>
130 <!ATTLIST INSTANCENAME
131 %ClassName;>
132
133 <!ELEMENT OBJECTPATH (INSTANCEPATH|CLASSPATH)>
134
135 <!ELEMENT KEYBINDING (KEYVALUE|VALUE.REFERENCE)>
136 <!ATTLIST KEYBINDING
137 %CIMName;>
138
139 <!ELEMENT KEYVALUE (#PCDATA)>
140 <!ATTLIST KEYVALUE
141 VALUETYPE (string|boolean|numeric) 'string'>
142
143 <!-- ************************************************** -->
144 <!-- Object definition elements -->
145 <!-- ************************************************** -->
146
147 <!ELEMENT CLASS (QUALIFIER*,(PROPERTY|PROPERTY.ARRAY|PROPERTY.REFERENCE)*,METHOD*)>
148 karl 1.1 <!ATTLIST CLASS
149 %CIMName;
150 %SuperClass;>
151
152 <!ELEMENT INSTANCE (QUALIFIER*,(PROPERTY|PROPERTY.ARRAY|PROPERTY.REFERENCE)*) >
153 <!ATTLIST INSTANCE
154 %ClassName;>
155
156 <!ELEMENT QUALIFIER (VALUE|VALUE.ARRAY)>
157 <!ATTLIST QUALIFIER
158 %CIMName;
159 %CIMType; #REQUIRED
160 %Propagated;
161 %QualifierFlavor;>
162
163 <!ELEMENT PROPERTY (QUALIFIER*,VALUE?)>
164 <!ATTLIST PROPERTY
165 %CIMName;
166 %ClassOrigin;
167 %Propagated;
168 %CIMType; #REQUIRED>
169 karl 1.1
170 <!ELEMENT PROPERTY.ARRAY (QUALIFIER*,VALUE.ARRAY?)>
171 <!ATTLIST PROPERTY.ARRAY
172 %CIMName;
173 %CIMType; #REQUIRED
174 %ArraySize;
175 %ClassOrigin;
176 %Propagated;>
177
178 <!ELEMENT PROPERTY.REFERENCE (QUALIFIER*,(VALUE.REFERENCE)?)>
179 <!ATTLIST PROPERTY.REFERENCE
180 %CIMName;
181 %ReferenceClass;
182 %ClassOrigin;
183 %Propagated;>
184
185 <!ELEMENT METHOD (QUALIFIER*,(PARAMETER|PARAMETER.REFERENCE|PARAMETER.ARRAY|PARAMETER.REFARRAY)*)>
186 <!ATTLIST METHOD
187 %CIMName;
188 %CIMType; #IMPLIED
189 %ClassOrigin;
190 karl 1.1 %Propagated;>
191
192 <!ELEMENT PARAMETER (QUALIFIER*)>
193 <!ATTLIST PARAMETER
194 %CIMName;
195 %CIMType; #REQUIRED>
196
197 <!ELEMENT PARAMETER.REFERENCE (QUALIFIER*)>
198 <!ATTLIST PARAMETER.REFERENCE
199 %CIMName;
200 %ReferenceClass;>
201
202 <!ELEMENT PARAMETER.ARRAY (QUALIFIER*)>
203 <!ATTLIST PARAMETER.ARRAY
204 %CIMName;
205 %CIMType; #REQUIRED
206 %ArraySize;>
207
208 <!ELEMENT PARAMETER.REFARRAY (QUALIFIER*)>
209 <!ATTLIST PARAMETER.REFARRAY
210 %CIMName;
211 karl 1.1 %ReferenceClass;
212 %ArraySize;>
213
214
215 <!-- ************************************************** -->
216 <!-- Message elements -->
217 <!-- ************************************************** -->
218
219 <!ELEMENT MESSAGE (SIMPLEREQ|MULTIREQ|SIMPLERSP|MULTIRSP)>
220 <!ATTLIST MESSAGE
221 ID CDATA #REQUIRED
222 PROTOCOLVERSION CDATA #REQUIRED>
223
224 <!ELEMENT MULTIREQ (SIMPLEREQ,SIMPLEREQ+)>
225
226 <!ELEMENT SIMPLEREQ (IMETHODCALL|METHODCALL)>
227
228 <!ELEMENT IMETHODCALL (LOCALNAMESPACEPATH,IPARAMVALUE*)>
229 <!ATTLIST IMETHODCALL
230 %CIMName;>
231
232 karl 1.1 <!ELEMENT METHODCALL ((LOCALINSTANCEPATH|LOCALCLASSPATH),PARAMVALUE*)>
233 <!ATTLIST METHODCALL
234 %CIMName;>
235
236 <!ELEMENT PARAMVALUE (VALUE|VALUE.REFERENCE|VALUE.ARRAY|VALUE.REFARRAY)?>
237 <!ATTLIST PARAMVALUE
238 %CIMName;>
239
240 <!ELEMENT IPARAMVALUE (VALUE|VALUE.ARRAY|VALUE.REFERENCE
241 |INSTANCENAME|CLASSNAME|QUALIFIER.DECLARATION
242 |CLASS|INSTANCE|VALUE.NAMEDINSTANCE)?>
243 <!ATTLIST IPARAMVALUE
244 %CIMName;>
245
246 <!ELEMENT MULTIRSP (SIMPLERSP,SIMPLERSP+)>
247
248 <!ELEMENT SIMPLERSP (METHODRESPONSE|IMETHODRESPONSE)>
249
250 <!ELEMENT METHODRESPONSE (ERROR|(RETURNVALUE?,PARAMVALUE*))>
251 <!ATTLIST METHODRESPONSE
252 %CIMName;>
253 karl 1.1
254 <!ELEMENT IMETHODRESPONSE (ERROR|IRETURNVALUE?)>
255 <!ATTLIST IMETHODRESPONSE
256 %CIMName;>
257
258 <!ELEMENT ERROR EMPTY>
259 <!ATTLIST ERROR
260 CODE CDATA #REQUIRED
261 DESCRIPTION CDATA #IMPLIED>
262
263 <!ELEMENT RETURNVALUE (VALUE|VALUE.ARRAY|VALUE.REFERENCE|VALUE.REFARRAY)>
264
265 <!ELEMENT IRETURNVALUE (CLASSNAME*|INSTANCENAME*|VALUE*|VALUE.OBJECTWITHPATH* |VALUE.OBJECTWITHLOCALPATH*|VALUE.OBJECT*|OBJECTPATH*
266 |QUALIFIER.DECLARATION*|VALUE.ARRAY?|VALUE.REFERENCE?
267 |CLASS*|INSTANCE*|VALUE.NAMEDINSTANCE*)>
268
269
270
|