1 mike 1.2 // ===================================================================
2 // Title: Core Interoperability 2.6
3 // Filename: CIM_Interop26.mof
4 // Version: 2.6
5 // Release: 0
6 // Date: 06/12/2001
7 // ===================================================================
8 // Copyright "2001" Distributed Management Task Force, Inc. (DMTF).
9 // All rights reserved.
10 // DMTF is a not-for-profit association of industry members dedicated
11 // to promoting enterprise and systems management and interoperability.
12 // DMTF specifications and documents may be reproduced for uses
13 // consistent with this purpose by members and non-members,
14 // provided that correct attribution is given.
15 // As DMTF specifications may be revised from time to time,
16 // the particular version and release cited should always be noted.
17 // ===================================================================
18 // Description: The object classes below are listed in an order that
19 // avoids forward references. Required objects, defined
20 // by other working groups, are omitted.
21 // ==================================================================
22 mike 1.2 // Author: DMTF Interoperability Working Group
23 // ==================================================================
24
25 // ==================================================================
26 // ObjectManager
27 // ==================================================================
28 [Description (
29 "A type of CIM_Service that defines the capabilities of the "
30 "CIM Server in which this ObjectManager class resides. Details "
31 "related to communicating with the ObjectManager, and the "
32 "Manager's basic capabilities, are stored in instances of the "
33 "associated CommunicationMechanism class available through the "
34 "CommMechanismForManager association. It is assumed that "
35 "Basic Read operations must be supported "
36 "by all ObjectManager's in order to retrieve any additional "
37 "detail.")
38 ]
39 class CIM_ObjectManager : CIM_Service
40 {
41 };
42
43 mike 1.2 // ==================================================================
44 // ObjectManagerCommunicationMechanism
45 // ==================================================================
46 [Description (
47 "The class, ObjectManagerCommunicationMechanism, describes "
48 "access to an ObjectManager. It describes a protocol and "
49 "data encoding that can be used for communication. When all "
50 "instances of this class are enumerated for an ObjectManager "
51 "(using the CommMechanismForManager association), all possible "
52 "protocol and encoding schemes will be known. Also, specific "
53 "capabilities (for example, basic read or query) that are "
54 "supported in the protocol/encoding are described - using the "
55 "ProfilesSupported property.")
56 ]
57 class CIM_ObjectManagerCommunicationMechanism : CIM_ServiceAccessPoint
58 {
59 [Description (
60 "Enumerated array describing an encoding and protocols which can be "
61 "used to communicate with the Object Manager. At this time, "
62 "only one encoding and protocol are standardized by the "
63 "DMTF - \"cim-xml\". If this is supported by an "
64 mike 1.2 "Object Manager, the specified string should be indicated. "
65 "Other 'standard' strings may be defined. In addition, vendor "
66 "specific encoding/protocol strings may be used."),
67 Values {"Unknown", "Other", "cim-xml"}
68 ]
69 uint16 CommunicationMechanism[];
70
71 [Description (
72 "A free-form string providing a description of the "
73 "supported protocols when 1, \"Other\", is specified in "
74 "the CommunicationMechanism array."),
75 ModelCorrespondence {
76 "CIM_ObjectManagerCommunicationMechanism.CommunicationMechanism"}
77 ]
78 string OtherCommunicationMechanismDescription;
79
80 [Description (
81 "Enumerated array describing the types of operations "
82 "supported by the ObjectManager, using this encoding/protocol. "
83 "The enumeration is based on the Functional Profiles defined "
84 "for conformance in the DMTF document, Specification for CIM "
85 mike 1.2 "Operations over HTTP."),
86 Values {"Unknown", "Other", "Basic Read", "Basic Write",
87 "Schema Manipulation", "Instance Manipulation",
88 "Association Traversal", "Query Execution",
89 "Qualifier Declaration", "Indications"}
90 ]
91 uint16 ProfilesSupported[];
92
93 [Description (
94 "A free-form string providing a description of the "
95 "supported operations when 1, \"Other\", is specified in "
96 "the ProfilesSupported array. "),
97 ModelCorrespondence {
98 "CIM_ObjectManagerCommunicationMechanism.ProfilesSupported"}
99 ]
100 string OtherProfileDescription;
101
102 [Description (
103 "Boolean indicating whether the Object Manager supports "
104 "multiple operation requests (TRUE) or only simple requests "
105 "(FALSE).")
106 mike 1.2 ]
107 boolean MultipleOperationsSupported;
108
109 [Description (
110 "Query languages supported by the ObjectManager, using "
111 "this encoding/protocol."),
112 Values{"Unknown", "Other", "None", "WBEMSQL1", "WBEMSQL2"}
113 ]
114 string QueryLanguagesSupported[];
115
116 [Description (
117 "A free-form string providing a description of the "
118 "language when 1, \"Other\", is specified in the "
119 "QueryLanguagesSupported array. "),
120 ModelCorrespondence {
121 "CIM_ObjectManagerCommunicationMechanism.QueryLanguagesSupported"}
122 ]
123 string OtherLanguageDescription;
124
125 [Description (
126 "Enumerated array describing the types of authentication "
127 mike 1.2 "supported by the ObjectManager, using this encoding/protocol. The "
128 "defined values represent the authentication defined in the "
129 "DMTF document, Specification for CIM Operations over HTTP"),
130 Values {"Unknown", "Other", "None", "Basic", "Digest"}
131 ]
132 uint16 AuthenticationMechanismsSupported[];
133
134 [Description (
135 "A free-form string providing a description of the "
136 "supported mechanism when 1, \"Other\", is specified in "
137 "the AuthenticationMechanismsSupported array. "),
138 ModelCorrespondence {
139 "CIM_ObjectManagerCommunicationMechanism.AuthenticationMechanismsSupported"}
140 ]
141 string OtherAuthenticationDescription;
142 };
143
144 // ==================================================================
145 // CIMXMLCommunicationMechanism
146 // ==================================================================
147 [Description (
148 mike 1.2 "This class specializes ObjectManagerCommunicationMechanism, "
149 "adding properties specific to the CIM-XML protocol (XML encoding "
150 "and CIM Operations). ")
151 ]
152 class CIM_CIMXMLCommunicationMechanism : CIM_ObjectManagerCommunicationMechanism
153 {
154 [Override ("CommunicationMechanism") ]
155 uint16 CommunicationMechanism = 2;
156
157 [Description (
158 "Enumeration describing the CIM-XML protocol version supported "
159 "by the Object Manager."),
160 Values {"Unknown", "1.0"}
161 ]
162 uint16 CIMXMLProtocolVersion;
163
164 [Description (
165 "Describes whether the CIM Server is strictly validating "
166 "(validates the XML document against the DTD) or not "
167 "(loosely validating).")
168 ]
169 mike 1.2 boolean CIMValidated;
170 };
171
172
173 // ==================================================================
174 // CommMechanismForManager
175 // ==================================================================
176 [Association, Description (
177 "CommMechanismForManager is an association between an ObjectManager "
178 "and an ObjectManagerCommunicationMechanism class. The latter "
179 "describes a possible encoding/protocol/set of operations for "
180 "accessing the referenced ObjectManager.")
181 ]
182 class CIM_CommMechanismForManager : CIM_ServiceAccessBySAP
183 {
184 [Override ("Antecedent"), Min(1), Max(1), Description (
185 "The specific Object Manager whose communication mechanism is "
186 "described.")
187 ]
188 CIM_ObjectManager REF Antecedent;
189
190 mike 1.2 [Override ("Dependent"), Min(1), Description (
191 "The encoding/protocol/set of operations that may be used "
192 "to communicate with the referenced ObjectManager.")
193 ]
194 CIM_ObjectManagerCommunicationMechanism REF Dependent;
195 };
196
197 // ==================================================================
198 // Namespace
199 // ==================================================================
200 [Description (
201 "Namespaces provide a domain (in other words, a container), "
202 "in which the instances of [a class] are guaranteed to be "
203 "unique per the KEY qualifier definitions. It is named "
204 "relative to the CIM_ObjectManager implementation that "
205 "provides such a domain.")
206 ]
207 class CIM_Namespace : CIM_ManagedElement
208 {
209 [Propagated("CIM_ObjectManager.SystemCreationClassName"),
210 Key, MaxLen (256),
211 mike 1.2 Description ("The scoping System's CreationClassName.")
212 ]
213 string SystemCreationClassName;
214
215 [Propagated("CIM_ObjectManager.SystemName"),
216 Key, MaxLen (256),
217 Description ("The scoping System's Name.")
218 ]
219 string SystemName;
220
221 [Propagated ("CIM_ObjectManager.CreationClassName"), Key,
222 MaxLen (256), Description (
223 "The scoping Object Manager's CreationClassName. ")
224 ]
225 string ObjectManagerCreationClassName;
226
227 [Propagated ("CIM_ObjectManager.Name"), Key,
228 MaxLen (256), Description (
229 "The scoping Object Manager's Name. ")
230 ]
231 string ObjectManagerName;
232 mike 1.2
233 [Key, MaxLen (256), Description (
234 "CreationClassName indicates the name of the class or the "
235 "subclass used in the creation of an instance. When used "
236 "with the other key properties of this class, this property "
237 "allows all instances of this class and its subclasses to "
238 "be uniquely identified.")
239 ]
240 string CreationClassName;
241
242 [Key, MaxLen (256), Description (
243 "A string to uniquely identify the Namespace within "
244 "the ObjectManager.")
245 ]
246 string Name;
247
248 [Description (
249 "Enumeration indicating the organization/schema of the "
250 "Namespace's objects. For example, they may be instances "
251 "of classes of a specific CIM version."),
252 ValueMap {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
253 mike 1.2 "200", "201", "202"},
254 Values {"Unknown", "Other", "CIM 1.0", "CIM 2.0",
255 "CIM 2.1", "CIM 2.2", "CIM 2.3", "CIM 2.4", "CIM 2.5",
256 "CIM 2.6", "DMI Recast", "SNMP Recast", "CMIP Recast"},
257 ModelCorrespondence {"CIM_Namespace.DescriptionOfClassInfo"}
258 ]
259 uint16 ClassInfo;
260
261 [Description (
262 "A string providing more detail (beyond the general "
263 "classification in ClassInfo) for the object hierarchy of "
264 "the Namespace."),
265 ModelCorrespondence {"CIM_Namespace.ClassInfo"}
266 ]
267 string DescriptionOfClassInfo;
268 };
269
270
271 // ==================================================================
272 // SystemIdentification
273 // ==================================================================
274 mike 1.2
275 [Description (
276 "A Namespace may represent data for one or many systems, "
277 "that are local, remote (different than the system on which "
278 "the object manager is running) or aggregated. The System"
279 "Identification class provides enough data to identify the "
280 "system(s) represented in the Namespace. It is weak to "
281 "the Namespace.")
282 ]
283 class CIM_SystemIdentification : CIM_ManagedElement
284 {
285
286 [Propagated("CIM_Namespace.SystemCreationClassName"),
287 Key, MaxLen (256),
288 Description ("The scoping System's CreationClassName.")
289 ]
290 string SystemCreationClassName;
291
292 [Propagated("CIM_Namespace.SystemName"),
293 Key, MaxLen (256),
294 Description ("The scoping System's Name.")
295 mike 1.2 ]
296 string SystemName;
297
298 [Propagated ("CIM_Namespace.ObjectManagerCreationClassName"),
299 Key, MaxLen (256), Description (
300 "The scoping Object Manager's CreationClassName. ")
301 ]
302 string ObjectManagerCreationClassName;
303
304 [Propagated ("CIM_Namespace.ObjectManagerName"), Key,
305 MaxLen (256), Description (
306 "The scoping Object Manager's Name. ") ]
307 string ObjectManagerName;
308
309 [Propagated ("CIM_Namespace.CreationClassName"),
310 Key, MaxLen (256), Description (
311 "The scoping Namespace's CreationClassName. ")
312 ]
313 string NamespaceCreationClassName;
314
315 [Propagated ("CIM_Namespace.Name"), Key,
316 mike 1.2 MaxLen (256), Description (
317 "The scoping Namespace's Name. ")
318 ]
319 string NamespaceName;
320
321 [Key, MaxLen (256), Description (
322 "CreationClassName indicates the name of the class or the "
323 "subclass used in the creation of an instance. When used "
324 "with the other key properties of this class, this property "
325 "allows all instances of this class and its subclasses to "
326 "be uniquely identified.")
327 ]
328 string CreationClassName;
329
330 [Key, MaxLen (256), Description (
331 "A string uniquely identifying the name of the system "
332 "represented in the Namespace.")
333 ]
334 string Name;
335
336 [Description (
337 mike 1.2 "Enumeration indicating the format of the system identification "
338 "and/or addressing information."),
339 Values {"Unknown", "Other", "Short DNS Name",
340 "Fully qualified DNS Name",
341 "Windows Domain Name", "NetWare Server Name",
342 "Unix Hostname", "Globally Unique System Identifier",
343 "IP Address", "Modem Dialup String", "MAC Address",
344 "IPMI Address" },
345 ArrayType ("Indexed"),
346 ModelCorrespondence {"CIM_SystemIdentification.IdentificationData",
347 "CIM_SystemIdentification.FormatDescription"}
348 ]
349 uint16 IdentificationFormats[];
350
351 [Description (
352 "Strings further describing the format of the system "
353 "identification information." ),
354 ArrayType ("Indexed"),
355 ModelCorrespondence {"CIM_SystemIdentification.IdentificationFormat",
356 "CIM_SystemIdentification.IdentificationData"}
357 ]
358 mike 1.2 string FormatDescriptions[];
359
360 [Description (
361 "Strings containing the system identification information. The format "
362 "is described by the corresponding array item in "
363 "IdentificationFormats."),
364 ArrayType ("Indexed"),
365 ModelCorrespondence {"CIM_SystemIdentification.IdentificationFormat",
366 "CIM_SystemIdentification.FormatDescription"}
367 ]
368 string IdentificationData[];
369
370 };
371
372 // ==================================================================
373 // NamespaceInManager
374 // ==================================================================
375
376 [Association, Description (
377 "NamespaceInManager is an association describing the "
378 "Namespaces hosted by a CIM ObjectManager.")
379 mike 1.2 ]
380 class CIM_NamespaceInManager : CIM_Dependency
381 {
382 [Override ("Antecedent"), Min(1), Max(1), Key, Description (
383 "The Object Manager containing a Namespace.")
384 ]
385 CIM_ObjectManager REF Antecedent;
386
387 [Override ("Dependent"), Weak,
388 Description ("The Namespace in an ObjectManager.")
389 ]
390 CIM_Namespace REF Dependent;
391 };
392
393
394
395 // ==================================================================
396 // SystemInNamespace
397 // ==================================================================
398 [Association, Description (
399 "SystemInNamespace is an association that allows enumeration "
400 mike 1.2 "of the system(s) represented in a Namespace.")
401 ]
402 class CIM_SystemInNamespace
403 {
404 [Key, Min(1), Max(1),
405 Description (
406 "The Namespace containing management objects from "
407 "one or more systems.")
408 ]
409 CIM_Namespace REF ManagedNamespace;
410
411 [Key, Weak, Description (
412 "Identification information for systems in the Namespace.")
413 ]
414 CIM_SystemIdentification REF Identification;
415
416 [Description (
417 "A list of enumerated values providing a high level "
418 "description of the data contained and allowed in the "
419 "Namespace. Additional clarification is provided in the "
420 "DescriptionOfContainedData array."),
421 mike 1.2 ArrayType ("Indexed"),
422 Values {"Unknown", "Other", "Local System Data",
423 "Data Aggregated from Multiple Systems",
424 "Proxied Data"},
425 ModelCorrespondence {
426 "CIM_SystemInNamespace.DescriptionOfContainedData "}
427 ]
428 uint16 ScopeOfContainedData[];
429
430 [Description (
431 "An array of free-form strings providing more detailed "
432 "explanations for the data/objects contained in the "
433 "Namespace, as described by the ContainedData array. "
434 "Note, each entry of this array is related to the entry "
435 "in the ContainedData array that is located at the same "
436 "index."),
437 ArrayType ("Indexed"),
438 ModelCorrespondence {
439 "CIM_SystemInNamespace.ScopeOfContainedData "}
440 ]
441 string DescriptionOfContainedData[];
442 mike 1.2
443 };
444
445
446 // ==================================================================
447 // IdentificationOfManagedSystem
448 // ==================================================================
449
450 [Association,
451 Description (
452 "IdentificationOfManagedSystem is an association that "
453 "links the SystemIdentification object to the CIM_System(s) "
454 "that are being identified and represented in the Namespace.")
455 ]
456 class CIM_IdentificationOfManagedSystem : CIM_Dependency
457 {
458
459 [Override ("Antecedent"), Max(1),
460 Description (
461 "The System which is identified.")
462 ]
463 mike 1.2 CIM_System REF Antecedent;
464
465 [Override ("Dependent"), Max(1),
466 Description (
467 "The SystemIdentification information.")
468 ]
469 CIM_SystemIdentification REF Dependent;
470
471 };
472
|