1 karl 1.1 // ===================================================================
2 // Title: Interoperability MOF Specification
3 // $State: Preliminary $
4 // $Date: 2004/06/25 16:11:06 $
5 // $Source: /home/dmtf2/dotorg/var/cvs/repositories/dev/Schema/MOF/CIM_Interop.mof,v $
6 // $Revision: 1.10 $
7 // ===================================================================
8 //#pragma inLine ("Includes/copyright.inc")
9 // Copyright 1998-2004 Distributed Management Task Force, Inc. (DMTF).
10 // All rights reserved.
11 // DMTF is a not-for-profit association of industry members dedicated
12 // to promoting enterprise and systems management and interoperability.
13 // DMTF specifications and documents may be reproduced for uses
14 // consistent with this purpose by members and non-members,
15 // provided that correct attribution is given.
16 // As DMTF specifications may be revised from time to time,
17 // the particular version and release date should always be noted.
18 //
19 // Implementation of certain elements of this standard or proposed
20 // standard may be subject to third party patent rights, including
21 // provisional patent rights (herein "patent rights"). DMTF makes
22 karl 1.1 // no representations to users of the standard as to the existence
23 // of such rights, and is not responsible to recognize, disclose, or
24 // identify any or all such third party patent right, owners or
25 // claimants, nor for any incomplete or inaccurate identification or
26 // disclosure of such rights, owners or claimants. DMTF shall have no
27 // liability to any party, in any manner or circumstance, under any
28 // legal theory whatsoever, for failure to recognize, disclose, or
29 // identify any such third party patent rights, or for such party's
30 // reliance on the standard or incorporation thereof in its product,
31 // protocols or testing procedures. DMTF shall have no liability to
32 // any party implementing such standard, whether such implementation
33 // is foreseeable or not, nor to any patent owner or claimant, and shall
34 // have no liability or responsibility for costs or losses incurred if
35 // a standard is withdrawn or modified after publication, and shall be
36 // indemnified and held harmless by any party implementing the
37 // standard from any and all claims of infringement by a patent owner
38 // for such implementations.
39 //
40 // For information about patents held by third-parties which have
41 // notified the DMTF that, in their opinion, such patent may relate to
42 // or impact implementations of DMTF standards, visit
43 karl 1.1 // http://www.dmtf.org/about/policies/disclosures.php.
44 //#pragma inLine
45 // ===================================================================
46 // Description: The object classes below are listed in an order that
47 // avoids forward references. Required objects, defined
48 // by other working groups, are omitted.
49 // ==================================================================
50 // 19 Apr 2004 - Version 2.9 Preliminary
51 // CR1386 - Define Query Capabilities
52 // CR1385 - Fix VALUEMAP for CIMXMLCommMech subclass
53 // CR1372 - Add advertise information to CommMechanism class
54 // CR1340 - Provider Registration Model
55 // CR1308 - Add Status Code and Description to CIM_Error
56 // CR1253 - CIM_Error MessageFormat Changes
57 // CR1252 - CIM_Error Company review feedback changes.
58 // 20 Jan 2004 - Version 2.8 Final
59 // CR1244 - Misc errors in Interop Model
60 // CR1241 - Deprecate CommMechanismForAdapter
61 // CR1224 - Experimental to Final for Interop Model
62 // CR1216 - Fix ClassInfo in CIM_Namespace
63 // CR1215 - Deprecate ProtocolAdapter for ObjectManagerAdapter
64 karl 1.1 // CR1164 - Clarify uniqueness of RegisteredName
65 // 03 Aug 2003 - Version 2.8 Preliminary
66 // CR1143 - add missing support for CIM 2.8 in the Interop28.mof
67 // CR1128 - Introduce HostedDependency into the hierarchy.
68 // CR1070 - Bring forward experimental classes
69 // CR1000 - RegisteredProfile Model
70 // CR0955 - Change property names in ProviderCapabilities
71 // CR0923 - Add ID to Object Manager
72 // CR0909 - Add the definition of CIM_Error class (+ to compile
73 // without a key, Exception AND Indication qualifiers
74 // needed)
75 // ==================================================================
76
77 #pragma Locale ("en_US")
78
79 // ==================================================================
80 // Compile prerequisite: Core and Event MOFs
81 // ==================================================================
82
83
84 // ==================================================================
85 karl 1.1 // WBEMService
86 // ==================================================================
87 [Abstract, Version ( "2.6.0" ), Description (
88 "An abstract class for WBEM services such as the ObjectManager "
89 "(CIM Server), Providers, protocol adapters, or other pluggable "
90 "components. A type of CIM_Service that provides associated "
91 "capabilities and details about the communication capabilities, "
92 "namespaces, etc. for a specific WBEMService.")]
93 class CIM_WBEMService : CIM_Service {
94 };
95
96
97 // ==================================================================
98 // ObjectManager
99 // ==================================================================
100 [Version ( "2.8.0" ), Description (
101 "A type of CIM_Service that defines the capabilities of the CIM "
102 "Server in which this ObjectManager class resides. Details "
103 "related to communicating with the ObjectManager, and the "
104 "Manager's basic capabilities, are stored in instances of the "
105 "associated CommunicationMechanism class available through the "
106 karl 1.1 "CommMechanismForManager association. It is assumed that Basic "
107 "Read operations must be supported by all ObjectManager's in "
108 "order to retrieve any additional detail.")]
109 class CIM_ObjectManager : CIM_WBEMService {
110
111 [Write, Description (
112 "The GatherStatisticalData property is used to control the "
113 "gathering of statistical data made accessible through the "
114 "CIM_CIMOMStatisticalData objects. If set to true, the data "
115 "is gathered and can be accessed. If false, the "
116 "CIM_CIMOMStatisticalData instance MAY exist but MUST show "
117 "zero values for the counter properties.")]
118 boolean GatherStatisticalData = true;
119
120 [Override ( "Name" ), Description (
121 "The Name property is used to uniquely identify a CIM "
122 "Server. The CIM Server MUST ensure that this value is "
123 "globally unique. In order to ensure uniqueness, this value "
124 "SHOULD be constructed in the following manner. <Vendor "
125 "ID>:<Unique ID> \n"
126 "<Vendor ID> MUST include a copyrighted, trademarked or "
127 karl 1.1 "otherwise unique name that is owned by the business entity "
128 "or a registered ID that is assigned to the business entity "
129 "that is defining the Name. (This is similar to the <Schema "
130 "Name>_<Class Name> structure of Schema class names.) The "
131 "purpose of <Vendor ID> is to ensure that <ID> is truly "
132 "unique across multiple vendor implementations. If such a "
133 "name is not used, the defining entity MUST assure that the "
134 "<ID> portion of the Instance ID is unique when compared "
135 "with other instance providers. For DMTF defined instances, "
136 "the <Vendor ID> is 'CIM'. \n"
137 "<Unique ID> MUST include a vendor specified unique "
138 "identifier. \n"
139 "Note: Name is semantically the same as InstanceID. In the "
140 "next major version of the CIM Schema, Name will be renamed "
141 "to InstanceID and become the only key of this class.")]
142 string Name;
143
144 [Override ( "ElementName" ), Description (
145 "The ElmentName property is used as a name of the CIM Server "
146 "for human interfaces. For example, \"ACME CIM Server\"). "
147 "This property is required to support the SLP discovery "
148 karl 1.1 "mechanism. In the next major release this property MAY "
149 "include the required qualifier.")]
150 string ElementName;
151
152 [Override ( "Description" ), Description (
153 "The description property is used as a description of the "
154 "CIM Server for human interfaces. For example, \" ACME CIM "
155 "Server version 2.2\"). This property is required to support "
156 "the SLP discovery mechanism. In the next major release this "
157 "property MAY include the required qualifier.")]
158 string Description;
159 };
160
161
162 // ==================================================================
163 // ObjectManagerCommunicationMechanism
164 // ==================================================================
165 [Version ( "2.7.0" ), Description (
166 "The class, ObjectManagerCommunicationMechanism, describes "
167 "access to an ObjectManager. It describes a protocol and data "
168 "encoding that can be used for communication. When all "
169 karl 1.1 "instances of this class are enumerated for an ObjectManager "
170 "(using the CommMechanismForManager association), all possible "
171 "protocol and encoding schemes will be known. Also, specific "
172 "capabilities (for example, basic read or query) that are "
173 "supported in the protocol/encoding are described - using the "
174 "ProfilesSupported property.")]
175 class CIM_ObjectManagerCommunicationMechanism : CIM_ServiceAccessPoint {
176
177 [Required, Description (
178 "CommunicationMechanism describes an encoding and protocol "
179 "which can be used to communicate with the ObjectManager. At "
180 "this time, only one encoding and protocol are standardized "
181 "by the DMTF - \"CIM-XML\". If this is supported by an "
182 "ObjectManager, the specified string should be indicated. "
183 "Other 'standard' strings may be defined. In addition, a "
184 "vendor specific encoding/protocol string may be used."),
185 ValueMap { "0", "1", "2" },
186 Values { "Unknown", "Other", "CIM-XML" },
187 ModelCorrespondence { "CIM_ObjectManagerCommunicationMechanism."
188 "OtherCommunicationMechanismDescription" }]
189 uint16 CommunicationMechanism;
190 karl 1.1
191 [Description (
192 "A free-form string providing a description of the supported "
193 "protocols when 1, \"Other\", is specified in the "
194 "CommunicationMechanism."),
195 ModelCorrespondence {
196 "CIM_ObjectManagerCommunicationMechanism.CommunicationMechanism"
197 }]
198 string OtherCommunicationMechanismDescription;
199
200 [Required, Description (
201 "Enumerated array describing the types of operations "
202 "supported by the ObjectManager, using this "
203 "encoding/protocol. The enumeration is based on the "
204 "Functional Profiles defined for conformance in the DMTF "
205 "document, Specification for CIM Operations over HTTP."),
206 ValueMap { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9" },
207 Values { "Unknown", "Other", "Basic Read", "Basic Write",
208 "Schema Manipulation", "Instance Manipulation",
209 "Association Traversal", "Query Execution",
210 "Qualifier Declaration", "Indications" },
211 karl 1.1 ArrayType ( "Indexed" ),
212 ModelCorrespondence { "CIM_ObjectManagerCommunicationMechanism."
213 "FunctionalProfileDescriptions" }]
214 uint16 FunctionalProfilesSupported[];
215
216 [Description (
217 "Free-form strings providing descriptions of the supported "
218 "operations of the object manager. Entries in the array are "
219 "correlated with those in the ProfilesSupported array. An "
220 "entry in this Descriptions array MUST be provided when 1, "
221 "\"Other\", is specified in the FunctionalProfilesSupported "
222 "array."),
223 ArrayType ( "Indexed" ),
224 ModelCorrespondence { "CIM_ObjectManagerCommunicationMechanism."
225 "FunctionalProfilesSupported" }]
226 string FunctionalProfileDescriptions[];
227
228 [Required, Description (
229 "Boolean indicating whether the ObjectManager supports "
230 "multiple operation requests (TRUE) or only simple requests "
231 "(FALSE).")]
232 karl 1.1 boolean MultipleOperationsSupported;
233
234 [Required, Description (
235 "Enumerated array describing the types of authentication "
236 "supported by the ObjectManager, using the "
237 "encoding/protocol. specified in the property, "
238 "CommunicationMechanism. The defined values represent the "
239 "authentication defined in the DMTF document, Specification "
240 "for CIM Operations over HTTP."),
241 ValueMap { "0", "1", "2", "3", "4" },
242 Values { "Unknown", "Other", "None", "Basic", "Digest" },
243 ArrayType ( "Indexed" ),
244 ModelCorrespondence { "CIM_ObjectManagerCommunicationMechanism."
245 "AuthenticationMechanismDescriptions" }]
246 uint16 AuthenticationMechanismsSupported[];
247
248 [Description (
249 "Free-form strings providing descriptions of the supported "
250 "mechanisms. Entries in this array are correlated with those "
251 "in the AuthenticationMechanismsSupported array. An entry in "
252 "this Descriptions array MUST be provided when 1, \"Other\", "
253 karl 1.1 "is specified in AuthenticationMechanismsSupported."),
254 ArrayType ( "Indexed" ),
255 ModelCorrespondence { "CIM_ObjectManagerCommunicationMechanism."
256 "AuthenticationMechanismsSupported" }]
257 string AuthenticationMechanismDescriptions[];
258
259 [Required, Description (
260 "Provides the protocol version for this service access "
261 "point. Version information MUST be in the form of M.N, "
262 "where M is a numeric that describes the Major version and N "
263 "is a numeric that describes the minor version.")]
264 string Version;
265 [Required, Description (
266 "This property signifies the advertisement for this access "
267 "point. . It is used by the advertising services of the WBEM "
268 "infrastructure to determine what should be advertised, via "
269 "what mechanisms. The property is an array so that the "
270 "communicationMechansim MAY be advertised using several "
271 "mechanisms. Note: If this property is null/uninitialized, "
272 "this is equivalent to specifying the value 2, \"Not "
273 "Advertised\"."),
274 karl 1.1 ValueMap { "1", "2", "3" },
275 Values { "Other", "Not Advertised", "SLP" },
276 ArrayType ( "Indexed" ),
277 ModelCorrespondence { "CIM_ObjectManagerCommunicationMechanism."
278 "AdvertiseTypeDescriptions" }]
279 uint16 AdvertiseTypes[];
280
281 [Description (
282 "A free-form string providing additional information related "
283 "to the AdvertiseType. A description MUST be provided when "
284 "the AdvertiseType is 1, \"Other\". An entry in this array "
285 "corresponds to the entry in the AdvertiseTypes array at the "
286 "same index. It is not expected that additional descriptions "
287 "are needed if the Type is set to \"Not Advertised\" or "
288 "\"SLP\". However, as the SLP template expands, or as other "
289 "advertisement mechanisms are defined, support for "
290 "additional descriptions may be needed. This array is "
291 "defined to support this."),
292 ArrayType ( "Indexed" ),
293 ModelCorrespondence { "CIM_ObjectManagerCommunicationMechanism."
294 "AdvertiseTypes" }]
295 karl 1.1 string AdvertiseTypeDescriptions[];
296 };
297
298
299 // ==================================================================
300 // CIMXMLCommunicationMechanism
301 // ==================================================================
302 [Version ( "2.8.1000" ), Description (
303 "This class specializes ObjectManagerCommunicationMechanism, "
304 "adding properties specific to the CIM-XML protocol (XML "
305 "encoding and CIM Operations).")]
306 class CIM_CIMXMLCommunicationMechanism : CIM_ObjectManagerCommunicationMechanism {
307
308 [Required, Override ( "CommunicationMechanism" ), Description(
309 "The only valid CommunicationMechanism for this subclass is CIM-XML."),
310 ValueMap {"2"}, Values {"CIM-XML"}]
311 uint16 CommunicationMechanism = 2;
312
313 [Required, Override ( "Version" ), Description (
314 "Enumeration describing the CIM-XML protocol version "
315 "supported by the ObjectManager."),
316 karl 1.1 ValueMap { "1.0", "1.1", "1.2" }]
317 string Version;
318
319 [Deprecated { "CIM_CIMXMLCommunicationMechanism.Version" },
320 Required, Description (
321 "Enumeration describing the CIM-XML protocol version "
322 "supported by the ObjectManager. It is deprecated in lieu of "
323 "a more general, inherited property (Version)."),
324 ValueMap { "0", "1" },
325 Values { "Unknown", "1.0" }]
326 uint16 CIMXMLProtocolVersion;
327
328 [Required, Description (
329 "Describes whether the CIM Server is strictly validating "
330 "(validates the XML document against the DTD) or not "
331 "(loosely validating).")]
332 boolean CIMValidated;
333 };
334
335
336 // ==================================================================
337 karl 1.1 // CommMechanismForManager
338 // ==================================================================
339 [Association, Version ( "2.6.0" ), Description (
340 "CommMechanismForManager is an association between an "
341 "ObjectManager and an ObjectManagerCommunicationMechanism "
342 "class. The latter describes a possible encoding/protocol/ set "
343 "of operations for accessing the referenced ObjectManager.")]
344 class CIM_CommMechanismForManager : CIM_ServiceAccessBySAP {
345
346 [Override ( "Antecedent" ), Min ( 1 ), Max ( 1 ), Description (
347 "The specific ObjectManager whose communication mechanism is "
348 "described.")]
349 CIM_ObjectManager REF Antecedent;
350
351 [Override ( "Dependent" ), Min ( 1 ), Description (
352 "The encoding/protocol/set of operations that may be used to "
353 "communicate with the referenced ObjectManager.")]
354 CIM_ObjectManagerCommunicationMechanism REF Dependent;
355 };
356
357
358 karl 1.1 // ==================================================================
359 // ProtocolAdapter
360 // ==================================================================
361 [Deprecated { "CIM_ObjectManagerAdapter" }, Version ( "2.8.0" ),
362 Description (
363 "CIM_ProtocolAdapter is deprecated in lieu of "
364 "CIM_ObjectManagerAdapter. Since the CIM_ProtocolAdapter class "
365 "does not have to support the protocols and can be any type of "
366 "adapter, it was decided to change the name to "
367 "ObjectManagerAdapter to better reflect the true meaning of the "
368 "class. A ProtocolAdapter is a Service of the CIM Object "
369 "Manager. It is responsible for accepting incoming requests on "
370 "a particular protocol, and translating and forwarding the "
371 "request to the CIM Object Manager. It is also responsible for "
372 "translating and sending the response from the CIM Object "
373 "Manager.")]
374 class CIM_ProtocolAdapter : CIM_WBEMService {
375
376 [Deprecated { "CIM_ObjectManagerAdapter.Name" },
377 Override ( "Name" ), Description (
378 "A human-readable name that uniquely identifies the Protocol "
379 karl 1.1 "Adapter within a system.")]
380 string Name;
381
382 [Deprecated { "CIM_ObjectManagerAdapter.Handle" }, Required,
383 Description (
384 "An implementation specific string that identifies the "
385 "handle to the ProtocolAdapter.")]
386 string Handle;
387
388 [Deprecated { "CIM_ObjectManagerAdapter.AdapterType" }, Required,
389 Description (
390 "ProtocolAdapterType enumerates the kind of Protocol "
391 "Adapter."),
392 ValueMap { "1", "2", "3" },
393 Values { "Other", "Client", "Provider" },
394 ModelCorrespondence {
395 "CIM_ProtocolAdapter.OtherProtocolAdapterType" }]
396 uint16 ProtocolAdapterType;
397
398 [Deprecated {
399 "CIM_ObjectManagerAdapter.OtherAdapterTypeDescription" },
400 karl 1.1 Description (
401 "The type(s) of ProtocolAdapter when \"Other\" is included "
402 "in ProtocolAdapterType property."),
403 ModelCorrespondence { "CIM_ProtocolAdapter.ProtocolAdapterType"
404 }]
405 string OtherProtocolAdapterType;
406 };
407
408 // ==================================================================
409 // ObjectManagerAdapter
410 // ==================================================================
411 [Version ( "2.8.0" ), Description (
412 "A ObjectManagerAdapter is a Service of the CIM Object Manager. "
413 "An adapter can be any service of the Object Manager that needs "
414 "to be managed (e.g. started, stopped, monitored, ...). There "
415 "MUST be an instance for each Adapter type.")]
416 class CIM_ObjectManagerAdapter : CIM_WBEMService {
417
418 [Override ( "Name" ), Description (
419 "A human-readable name that uniquely identifies the "
420 "ObjectManager within a system.")]
421 karl 1.1 string Name;
422
423 [Override ( "ElementName" ), Description (
424 "The ElmentName property is used as a name of the Object "
425 "Manager Adapter for human interfaces. For example, \"ACME "
426 "ObjectManager Adapter\".")]
427 string ElementName;
428
429 [Required, Description (
430 "An implementation specific string that identifies the "
431 "handle to the Object Manager Adapter.")]
432 string Handle;
433
434 [Required, Description (
435 "AdapterType enumerates the kind of Object Manager Adapter. "
436 "If 'Other' is specified, the OtherAdapterTypeDescription "
437 "property MUST be populated. \n"
438 "Other - If the adapter does not fit into one of the other "
439 "catagories in the list. If specified, the "
440 "OtherAdapterTypeDescription property MUST be populated. \n"
441 "Client - A client side adapter that responds to client "
442 karl 1.1 "operation requests, such as CIM-XML or CIM-SOAP. \n"
443 "Provider - A provider adapter, such as DMI, SNMP, JSR48 or "
444 "CMPI. \n"
445 "Indication Handler - An Indication Handler is a service "
446 "that delivers indications to a subscriber. Examples of "
447 "possible Indication Handlers are CIM-XML, CIM-SOAP, SMPT "
448 "(e-mail) or any other delivery mechanism. \n"
449 "Repository - A repository is an adapter that can "
450 "store/retrieve persistent data, such as CIM Qualifier "
451 "Types, CIM Classes and CIM Instances. An Object Manager "
452 "could use multiple repositiories at one time, for example "
453 "one could be used for CIM Schema information only, while "
454 "another is used for instance information. Repositories MAY "
455 "be remote or local to the CIM Object Manager. Examples of "
456 "repository implementations could be databases, LDAP or "
457 "files."),
458 ValueMap { "1", "2", "3", "4", "5" },
459 Values { "Other", "Client", "Provider", "Indication Handler",
460 "Repository" },
461 ModelCorrespondence {
462 "CIM_ObjectManagerAdapter.OtherAdapterTypeDescription" }]
463 karl 1.1 uint16 AdapterType;
464
465 [Description (
466 "The type(s) of ObjectManagerAdapter when \"Other\" is "
467 "included in ObjectManagerAdapterType property."),
468 ModelCorrespondence { "CIM_ObjectManagerAdapter.AdapterType" }]
469 string OtherAdapterTypeDescription;
470 };
471
472 // ==================================================================
473 // CommMechanismForAdapter
474 // ==================================================================
475 [Association,
476 Deprecated { "CIM_CommMechanismForObjectManagerAdapter" },
477 Version ( "2.8.0" ), Description (
478 "CommMechanismForAdapter is an association between an "
479 "ObjectManager's communication mechanism and a ProtocolAdapter "
480 "that supports that mechanism to translate requests and "
481 "responses for the Object Manager.")]
482 class CIM_CommMechanismForAdapter : CIM_Dependency {
483
484 karl 1.1 [Deprecated { "CIM_CommMechanismForObjectManagerAdapter."
485 "Antecedent" }, Override ( "Antecedent" ), Description (
486 "The specific ProtocolAdapter whose communication mechanism "
487 "with the CIM Object Manager is described.")]
488 CIM_ProtocolAdapter REF Antecedent;
489
490 [Deprecated { "CIM_CommMechanismForObjectManagerAdapter."
491 "Dependent" }, Override ( "Dependent" ), Min ( 1 ),
492 Description (
493 "The encoding/protocol/set of operations that may be used to "
494 "communicate between the Object Manager and the referenced "
495 "ProtocolAdapter.")]
496 CIM_ObjectManagerCommunicationMechanism REF Dependent;
497 };
498
499 // ==================================================================
500 // CommMechanismForObjectManagerAdapter
501 // ==================================================================
502 [Association, Version ( "2.8.0" ), Description (
503 "CommMechanismForObjectManagerAdapter is an association between "
504 "an ObjectManager's communication mechanism and a "
505 karl 1.1 "ObjectManagerAdapter that supports that mechanism to translate "
506 "requests and responses for the Object Manager.")]
507 class CIM_CommMechanismForObjectManagerAdapter : CIM_Dependency {
508
509 [Override ( "Antecedent" ), Description (
510 "The specific ObjectManagerAdapter whose communication "
511 "mechanism with the CIM Object Manager is described.")]
512 CIM_ObjectManagerAdapter REF Antecedent;
513
514 [Override ( "Dependent" ), Min ( 1 ), Description (
515 "The encoding/protocol/set of operations that may be used to "
516 "communicate between the Object Manager and the referenced "
517 "ProtocolAdapter.")]
518 CIM_ObjectManagerCommunicationMechanism REF Dependent;
519 };
520
521
522 // ==================================================================
523 // Namespace
524 // ==================================================================
525 [Version ( "2.8.0" ), Description (
526 karl 1.1 "Namespace provides a domain (in other words, a container), in "
527 "which the instances [of a class] are guaranteed to be unique "
528 "per the KEY qualifier definitions. It is named relative to the "
529 "CIM_ObjectManager implementation that provides such a domain.")]
530 class CIM_Namespace : CIM_ManagedElement {
531
532 [Key, Propagated ( "CIM_ObjectManager.SystemCreationClassName" ),
533 Description (
534 "The scoping System's CreationClassName."),
535 MaxLen ( 256 )]
536 string SystemCreationClassName;
537
538 [Key, Propagated ( "CIM_ObjectManager.SystemName" ),
539 Description (
540 "The scoping System's Name."),
541 MaxLen ( 256 )]
542 string SystemName;
543
544 [Key, Propagated ( "CIM_ObjectManager.CreationClassName" ),
545 Description (
546 "The scoping ObjectManager's CreationClassName."),
547 karl 1.1 MaxLen ( 256 )]
548 string ObjectManagerCreationClassName;
549
550 [Key, Propagated ( "CIM_ObjectManager.Name" ), Description (
551 "The scoping ObjectManager's Name."),
552 MaxLen ( 256 )]
553 string ObjectManagerName;
554
555 [Key, Description (
556 "CreationClassName indicates the name of the class or the "
557 "subclass used in the creation of an instance. When used "
558 "with the other key properties of this class, this property "
559 "allows all instances of this class and its subclasses to be "
560 "uniquely identified."),
561 MaxLen ( 256 )]
562 string CreationClassName;
563
564 [Key, Description (
565 "A string to uniquely identify the Namespace within the "
566 "ObjectManager."),
567 MaxLen ( 256 )]
568 karl 1.1 string Name;
569
570 [Deprecated { "CIM_Namespace.ClassType" }, Required, Write,
571 Description (
572 "Enumeration indicating the organization/schema of the "
573 "Namespace's objects. For example, they may be instances of "
574 "classes of a specific CIM version."),
575 ValueMap { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
576 "10", "11", "200", "201", "202" },
577 Values { "Unknown", "Other", "CIM 1.0", "CIM 2.0", "CIM 2.1",
578 "CIM 2.2", "CIM 2.3", "CIM 2.4", "CIM 2.5", "CIM 2.6",
579 "CIM 2.7", "CIM 2.8", "DMI Recast", "SNMP Recast",
580 "CMIP Recast" },
581 ModelCorrespondence { "CIM_Namespace.DescriptionOfClassInfo" }]
582 uint16 ClassInfo;
583
584 [Deprecated { "CIM_Namespace.DescriptionOfClassType" }, Write,
585 Description (
586 "A string providing more detail (beyond the general "
587 "classification in ClassInfo) for the object hierarchy of "
588 "the Namespace."),
589 karl 1.1 ModelCorrespondence { "CIM_Namespace.ClassInfo" }]
590 string DescriptionOfClassInfo;
591
592
593 [Write, Description (
594 "Enumeration indicating the schema of the Namespace's "
595 "objects. For example, they may be instances of classes of a "
596 "specific CIM version or a mapping from another standard, "
597 "such as SNMP. If 'Other' is selected, the "
598 "DescriptionOfClassType property MUST be populated."),
599 ValueMap { "0", "1", "2", "200", "201", "202" },
600 Values { "Unknown", "Other", "CIM", "DMI Recast", "SNMP Recast",
601 "CMIP Recast" },
602 ModelCorrespondence { "CIM_Namespace.DescriptionOfClassType",
603 "CIM_Namespace.ClassTypeVersion" }]
604 uint16 ClassType;
605
606 [Write, Description (
607 "The version of the objects in this namespace. The string "
608 "representing the version MUST be in the form: \n"
609 "M + \".\" + N + \".\" + U \n"
610 karl 1.1 "Where: \n"
611 "M - The major version (in numeric form) \n"
612 "N - The minor version (in numeric form) \n"
613 "U - The update (e.g. errata, patch, ..., in numeric form)"),
614 ModelCorrespondence { "CIM_Namespace.DescriptionOfClassType",
615 "CIM_Namespace.ClassType" }]
616 string ClassTypeVersion;
617
618 [Write, Description (
619 "A string providing more detail (beyond the general "
620 "classification in ClassInfo) for the object hierarchy of "
621 "the Namespace."),
622 ModelCorrespondence { "CIM_Namespace.ClassType",
623 "CIM_Namespace.ClassTypeVersion" }]
624 string DescriptionOfClassType;
625 };
626
627
628 // ==================================================================
629 // SystemIdentification
630 // ==================================================================
631 karl 1.1 [Version ( "2.7.0" ), Description (
632 "A Namespace may represent data for one or many systems, that "
633 "are local, remote (different than the system on which the "
634 "ObjectManager is running) or aggregated. The System "
635 "Identification class provides enough data to identify the "
636 "system(s) represented in the Namespace. It is weak to the "
637 "Namespace.")]
638 class CIM_SystemIdentification : CIM_ManagedElement {
639
640 [Key, Propagated ( "CIM_Namespace.SystemCreationClassName" ),
641 Description (
642 "The scoping System's CreationClassName."),
643 MaxLen ( 256 )]
644 string SystemCreationClassName;
645
646 [Key, Propagated ( "CIM_Namespace.SystemName" ), Description (
647 "The scoping System's Name."),
648 MaxLen ( 256 )]
649 string SystemName;
650
651 [Key,
652 karl 1.1 Propagated ( "CIM_Namespace.ObjectManagerCreationClassName" ),
653 Description (
654 "The scoping ObjectManager's CreationClassName."),
655 MaxLen ( 256 )]
656 string ObjectManagerCreationClassName;
657
658 [Key, Propagated ( "CIM_Namespace.ObjectManagerName" ),
659 Description (
660 "The scoping ObjectManager's Name."),
661 MaxLen ( 256 )]
662 string ObjectManagerName;
663
664 [Key, Propagated ( "CIM_Namespace.CreationClassName" ),
665 Description (
666 "The scoping Namespace's CreationClassName."),
667 MaxLen ( 256 )]
668 string NamespaceCreationClassName;
669
670 [Key, Propagated ( "CIM_Namespace.Name" ), Description (
671 "The scoping Namespace's Name."),
672 MaxLen ( 256 )]
673 karl 1.1 string NamespaceName;
674
675 [Key, Description (
676 "CreationClassName indicates the name of the class or the "
677 "subclass used in the creation of an instance. When used "
678 "with the other key properties of this class, this property "
679 "allows all instances of this class and its subclasses to be "
680 "uniquely identified."),
681 MaxLen ( 256 )]
682 string CreationClassName;
683
684 [Key, Description (
685 "A string uniquely identifying the name of the system "
686 "represented in the Namespace."),
687 MaxLen ( 256 )]
688 string Name;
689
690 [Required, Write, Description (
691 "Enumeration indicating the format of the system "
692 "identification and/or addressing information."),
693 ValueMap { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
694 karl 1.1 "10", "11" },
695 Values { "Unknown", "Other", "Short DNS Name",
696 "Fully qualified DNS Name", "Windows Domain Name",
697 "NetWare Server Name", "Unix Hostname",
698 "Globally Unique System Identifier", "IP Address",
699 "Modem Dialup String", "MAC Address", "IPMI Address" },
700 ArrayType ( "Indexed" ),
701 ModelCorrespondence {
702 "CIM_SystemIdentification.IdentificationData",
703 "CIM_SystemIdentification.FormatDescriptions" }]
704 uint16 IdentificationFormats[];
705
706 [Write, Description (
707 "Strings further describing the format of the system "
708 "identification information."),
709 ArrayType ( "Indexed" ),
710 ModelCorrespondence {
711 "CIM_SystemIdentification.IdentificationFormats",
712 "CIM_SystemIdentification.IdentificationData" }]
713 string FormatDescriptions[];
714
715 karl 1.1 [Write, Description (
716 "Strings containing the system identification information. "
717 "The format is described by the corresponding array item in "
718 "IdentificationFormats."),
719 ArrayType ( "Indexed" ),
720 ModelCorrespondence {
721 "CIM_SystemIdentification.IdentificationFormats",
722 "CIM_SystemIdentification.FormatDescriptions" }]
723 string IdentificationData[];
724 };
725
726
727 // ==================================================================
728 // NamespaceInManager
729 // ==================================================================
730 [Association, Version ( "2.7.0" ), Description (
731 "NamespaceInManager is an association describing the Namespaces "
732 "hosted by a CIM ObjectManager.")]
733 class CIM_NamespaceInManager : CIM_HostedDependency {
734
735 [Override ( "Antecedent" ), Min ( 1 ), Max ( 1 ), Description (
736 karl 1.1 "The ObjectManager containing a Namespace.")]
737 CIM_ObjectManager REF Antecedent;
738
739 [Override ( "Dependent" ), Weak, Description (
740 "The Namespace in an ObjectManager.")]
741 CIM_Namespace REF Dependent;
742 };
743
744
745 // ==================================================================
746 // SystemInNamespace
747 // ==================================================================
748 [Association, Version ( "2.6.0" ), Description (
749 "SystemInNamespace is an association that allows enumeration of "
750 "the system(s) represented in a Namespace.")]
751 class CIM_SystemInNamespace {
752
753 [Key, Min ( 1 ), Max ( 1 ), Description (
754 "The Namespace containing management objects from one or "
755 "more systems.")]
756 CIM_Namespace REF ManagedNamespace;
757 karl 1.1
758 [Key, Weak, Description (
759 "Identification information for systems in the Namespace.")]
760 CIM_SystemIdentification REF Identification;
761
762 [Required, Write, Description (
763 "A list of enumerated values providing a high level "
764 "description of the data contained and allowed in the "
765 "Namespace. Additional clarification is provided in the "
766 "DescriptionOfContainedData array."),
767 ValueMap { "0", "1", "2", "3", "4" },
768 Values { "Unknown", "Other", "Local System Data",
769 "Data Aggregated from Multiple Systems", "Proxied Data" },
770 ArrayType ( "Indexed" ),
771 ModelCorrespondence {
772 "CIM_SystemInNamespace.DescriptionOfContainedData" }]
773 uint16 ScopeOfContainedData[];
774
775 [Write, Description (
776 "An array of free-form strings providing more detailed "
777 "explanations for the data/objects contained in the "
778 karl 1.1 "Namespace, as described by the ContainedData array. Note, "
779 "each entry of this array is related to the entry in the "
780 "ContainedData array that is located at the same index."),
781 ArrayType ( "Indexed" ),
782 ModelCorrespondence {
783 "CIM_SystemInNamespace.ScopeOfContainedData" }]
784 string DescriptionOfContainedData[];
785 };
786
787
788 // ==================================================================
789 // IdentificationOfManagedSystem
790 // ==================================================================
791 [Association, Version ( "2.6.0" ), Description (
792 "IdentificationOfManagedSystem is an association that links the "
793 "SystemIdentification object to the CIM_System(s) that are "
794 "being identified and represented in the Namespace.")]
795 class CIM_IdentificationOfManagedSystem : CIM_Dependency {
796
797 [Override ( "Antecedent" ), Max ( 1 ), Description (
798 "The System which is identified.")]
799 karl 1.1 CIM_System REF Antecedent;
800
801 [Override ( "Dependent" ), Max ( 1 ), Description (
802 "The SystemIdentification information.")]
803 CIM_SystemIdentification REF Dependent;
804 };
805
806
807 // ==================================================================
808 // CIMOMStatisticalData
809 // ==================================================================
810 [Version ( "2.7.0" ), Description (
811 "CIM_CIMOMStatisticalData provides statistical data about the "
812 "performance of the CIM Object Manager. Each object of this "
813 "class provides elapsed time and size data for a particular "
814 "type of CIM operation. All operations of that type, regardless "
815 "of the CIM operations protocol being used, are accumulated in "
816 "one object and covers the CIM operations issued by all clients "
817 "of the Object Manager scoping the instance. Batched CIM "
818 "operations are accumulated into a separate operation type for "
819 "\"Batched\". The counters in this class SHOULD be implemented "
820 karl 1.1 "such that they always increment and naturally wrap around when "
821 "their numerical limit is exceeded. A client that calculates "
822 "the difference of two snapshots of a counter at the beginning "
823 "and end of a measurement interval should get the correct "
824 "result, even if there was a wrap-around in between obtaining "
825 "the two snapshots. (Two or more wrap arounds will result in "
826 "wrong data being calculated.) The gathering of the data can be "
827 "controlled through the property, "
828 "CIM_ObjectManager.GatherStatisticalData. The time interval to "
829 "which the statistical data applies, ends at the current time "
830 "and therefore includes the most current CIM operations. The "
831 "interval starts when the statistical data gathering was last "
832 "turned on for the Object Manager.")]
833 class CIM_CIMOMStatisticalData : CIM_StatisticalData {
834
835 [Override ( "InstanceID" ), Description (
836 "The InstanceID property opaquely identifies a unique "
837 "instance of CIMOMStatisticalData and MUST be unique within "
838 "a namespace. In order to ensure uniqueness, the value of "
839 "InstanceID MUST be constructed in the following manner: \n"
840 "CIM<ID> \n"
841 karl 1.1 "The <ID> MUST include a CIM Object Manager specified unique "
842 "identifier.")]
843 string InstanceID;
844
845 [Required, Description (
846 "The OperationType property identifies the type of CIM "
847 "operation for which data is reported in this instance. "
848 "Batched CIM operations (consisting of multiple simple CIM "
849 "operations) are reported against the \"Batched\" type only."),
850 ValueMap { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
851 "10", "11", "12", "13", "14", "15", "16", "17", "18", "19",
852 "20", "21", "22", "23", "24", "25", "26" },
853 Values { "Unknown", "Other", "Batched", "GetClass",
854 "GetInstance", "DeleteClass", "DeleteInstance",
855 "CreateClass", "CreateInstance", "ModifyClass",
856 // 10
857 "ModifyInstance", "EnumerateClasses", "EnumerateClassNames",
858 "EnumerateInstances", "EnumerateInstanceNames", "ExecQuery",
859 "Associators", "AssociatorNames", "References",
860 "ReferenceNames",
861 // 20
862 karl 1.1 "GetProperty", "SetProperty", "GetQualifier", "SetQualifier",
863 "DeleteQualifier", "EnumerateQualifiers",
864 "IndicationDelivery" },
865 ModelCorrespondence {
866 "CIM_CIMOMStatisticalData.OtherOperationType" }]
867 uint16 OperationType;
868
869 [Description (
870 "The OtherOperationType property identifies the operation if "
871 "the OperationType property has a value of 1 (\"Other\"). "
872 "For all other values of OperationType, the property is "
873 "NULL."),
874 MaxLen ( 64 ),
875 ModelCorrespondence { "CIM_CIMOMStatisticalData.OperationType" }]
876 string OtherOperationType;
877
878 [Required, Description (
879 "The NumberOfOperations property contains the number of CIM "
880 "operations of the specified type. This property can be used "
881 "to calculate average values per CIM operation."),
882 Counter]
883 karl 1.1 uint64 NumberOfOperations;
884
885 [Required, Description (
886 "The CimomElapsedTime property contains the elapsed time "
887 "spent in the CIM Object Manager for this operation type, "
888 "not counting the elapsed time spent in providers and the "
889 "underlying instrumentation. The measurement points for this "
890 "property SHOULD be at the transport layer interface on the "
891 "network side, and at the provider interface on the "
892 "instrumentation side of the CIM Object Manager.")]
893 datetime CimomElapsedTime;
894
895 [Required, Description (
896 "The ProviderElapsedTime property contains the elapsed time "
897 "spent in all providers involved with this operation type, "
898 "including the underlying instrumentation. The measurement "
899 "point for this property SHOULD be from the provider "
900 "interface of the CIM Object Manager.")]
901 datetime ProviderElapsedTime;
902
903 [Description (
904 karl 1.1 "The RequestSize property contains the size of the operation "
905 "requests sent to the CIM Object Manager. Any overhead of "
906 "protocols above the transport protocol SHOULD be included "
907 "in the count. For example, for the HTTP protocol, the size "
908 "would include the size of the HTTP payload and the size of "
909 "the HTTP headers."),
910 Units ( "Bytes" ), Counter]
911 uint64 RequestSize;
912
913 [Description (
914 "The ResponseSize property contains the size of the "
915 "operation responses sent back from the CIM Object Manager. "
916 "Any overhead of protocols above the transport protocol "
917 "SHOULD be included in the count. For example, for the HTTP "
918 "protocol, the size would include the size of the HTTP "
919 "payload and the size of the HTTP headers."),
920 Units ( "Bytes" ), Counter]
921 uint64 ResponseSize;
922 };
923
924 // ==================================================================
925 karl 1.1 // RegisteredProfile
926 // ==================================================================
927 [Version ( "2.8.0" ), Description (
928 "A RegisteredProfile describes a set of CIM Schema classes with "
929 "required properties and/or methods, necessary to manage a "
930 "real-world entity or to support a usage scenario, in an "
931 "interoperable fashion. RegisteredProfiles can be defined by "
932 "the DMTF or other standards organizations. Note that this "
933 "class should not be confused with CIM_Profile, which collects "
934 "SettingData instances, to be applied as a 'configuration "
935 "profile' for an element. \n"
936 "A RegisteredProfile is a named 'standard' for CIM-based "
937 "management of a particular System, subsystem, Service or other "
938 "entity, for a specified set of uses. It is a complete, "
939 "standalone definition, as opposed to the subclass "
940 "RegisteredSubProfile, which requires a scoping profile for "
941 "context. \n"
942 "The uses for a RegisteredProfile or SubProfile MUST be "
943 "specified in the document that defines the profile. Examples "
944 "of Profiles are to manage various aspects of an Operating "
945 "System, Storage Array, or Database. The name of the profile is "
946 karl 1.1 "defined and scoped by its authoring organization.")]
947 class CIM_RegisteredProfile : CIM_ManagedElement {
948
949 [Key, Description (
950 "Within the scope of the instantiating Namespace, InstanceID "
951 "opaquely and uniquely identifies an instance of this class. "
952 "In order to ensure uniqueness within the NameSpace, the "
953 "value of InstanceID SHOULD be constructed using the "
954 "following 'preferred' algorithm: \n"
955 "<OrgID>:<LocalID> \n"
956 "Where <OrgID> and <LocalID> are separated by a colon ':', "
957 "and where <OrgID> MUST include a copyrighted, trademarked "
958 "or otherwise unique name that is owned by the business "
959 "entity creating/defining the InstanceID, or is a registered "
960 "ID that is assigned to the business entity by a recognized "
961 "global authority. (This is similar to the <Schema "
962 "Name>_<Class Name> structure of Schema class names.) In "
963 "addition, to ensure uniqueness, <OrgID> MUST NOT contain a "
964 "colon (':'). When using this algorithm, the first colon to "
965 "appear in InstanceID MUST appear between <OrgID> and "
966 "<LocalID>. \n"
967 karl 1.1 "<LocalID> is chosen by the organizational entity and SHOULD "
968 "not be re-used to identify different underlying "
969 "(real-world) elements. If the above 'preferred' algorithm "
970 "is not used, the defining entity MUST assure that the "
971 "resultant InstanceID is not re-used across any InstanceIDs "
972 "produced by this or other providers for this instance's "
973 "NameSpace. \n"
974 "For DMTF defined instances, the 'preferred' algorithm MUST "
975 "be used with the <OrgID> set to 'CIM'.")]
976 string InstanceID;
977
978 [Required, Description (
979 "The organization that defines this profile."),
980 ValueMap { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10",
981 "11", "12", "13", "14", "15", "16", "17", "18", "19" },
982 Values { "Other", "DMTF", "CompTIA",
983 "Consortium for Service Innovation", "FAST", "GGF", "INTAP",
984 "itSMF", "NAC",
985 //10
986 "Northwest Energy Efficiency Alliance", "SNIA", "TM Forum",
987 "The Open Group", "ANSI", "IEEE", "IETF", "INCITS", "ISO",
988 karl 1.1 "W3C" },
989 ModelCorrespondence {
990 "CIM_RegisteredProfile.OtherRegisteredOrganization" }]
991 uint16 RegisteredOrganization;
992
993 [Description (
994 "A free-form string providing a description of the "
995 "organization when 1, \"Other\", is specified for the "
996 "RegisteredOrganization."),
997 MaxLen ( 256 ),
998 ModelCorrespondence {
999 "CIM_RegisteredProfile.RegisteredOrganization" }]
1000 string OtherRegisteredOrganization;
1001
1002 [Required, Description (
1003 "The name of this registered profile. Since multiple "
1004 "versions can exist for the same RegisteredName, the "
1005 "combination of RegisteredName, RegisteredOrganization, and "
1006 "RegisteredVersion MUST uniquely identify the registered "
1007 "profile within the scope of the organization."),
1008 MaxLen ( 256 )]
1009 karl 1.1 string RegisteredName;
1010
1011 [Required, Description (
1012 "The version of this profile. The string representing the "
1013 "version MUST be in the form: \n"
1014 "M + \".\" + N + \".\" + U \n"
1015 "Where: \n"
1016 "M - The major version (in numeric form) describing the "
1017 "profile's creation or last modification. \n"
1018 "N - The minor version (in numeric form) describing the "
1019 "profile's creation or last modification. \n"
1020 "U - The update (e.g. errata, patch, ..., in numeric form) "
1021 "describing the profile's creation or last modification.")]
1022 string RegisteredVersion;
1023
1024 [Required, Description (
1025 "This property signifies the advertisement for the profile "
1026 "information. It is used by the advertising services of the "
1027 "WBEM infrastructure to determine what should be advertised, "
1028 "via what mechanisms. The property is an array so that the "
1029 "profile MAY be advertised using several mechanisms. Note: "
1030 karl 1.1 "If this property is null/uninitialized, this is equivalent "
1031 "to specifying the value 2, \"Not Advertised\"."),
1032 ValueMap { "1", "2", "3" },
1033 Values { "Other", "Not Advertised", "SLP" },
1034 ArrayType ( "Indexed" ),
1035 ModelCorrespondence {
1036 "CIM_RegisteredProfile.AdvertiseTypeDescriptions" }]
1037 uint16 AdvertiseTypes[];
1038
1039 [Description (
1040 "A free-form string providing additional information related "
1041 "to the AdvertiseType. A description MUST be provided when "
1042 "the AdvertiseType is 1, \"Other\". An entry in this array "
1043 "corresponds to the entry in the AdvertiseTypes array at the "
1044 "same index. It is not expected that additional descriptions "
1045 "are needed if the Type is set to \"Not Advertised\" or "
1046 "\"SLP\". However, as the SLP template expands, or as other "
1047 "advertisement mechanisms are defined, support for "
1048 "additional descriptions may be needed. This array is "
1049 "defined to support this."),
1050 ArrayType ( "Indexed" ),
1051 karl 1.1 ModelCorrespondence { "CIM_RegisteredProfile.AdvertiseTypes" }]
1052 string AdvertiseTypeDescriptions[];
1053 };
1054
1055
1056 // ==================================================================
1057 // RegisteredSubProfile
1058 // ==================================================================
1059 [Version ( "2.8.0" ), Description (
1060 "A RegisteredSubProfile subclasses RegisteredProfile to "
1061 "indicate that a scoping profile is required to provide "
1062 "context. The latter is specified by the mandatory association, "
1063 "SubProfileRequiresProfile.")]
1064 class CIM_RegisteredSubProfile : CIM_RegisteredProfile {
1065 };
1066
1067
1068 // ==================================================================
1069 // ReferencedProfile
1070 // ==================================================================
1071 [Association, Version ( "2.8.0" ), Description (
1072 karl 1.1 "A profile that is referenced by another RegisteredProfile.")]
1073 class CIM_ReferencedProfile : CIM_Dependency {
1074
1075 [Override ( "Antecedent" ), Description (
1076 "The RegisteredProfile that is referenced by the Dependent "
1077 "Profile.")]
1078 CIM_RegisteredProfile REF Antecedent;
1079
1080 [Override ( "Dependent" ), Description (
1081 "A RegisteredProfile that references other profiles.")]
1082 CIM_RegisteredProfile REF Dependent;
1083 };
1084
1085
1086 // ==================================================================
1087 // SubProfileRequiresProfile
1088 // ==================================================================
1089 [Association, Version ( "2.8.0" ), Description (
1090 "A subprofile requires another RegisteredProfile for context. "
1091 "This association mandates the scoping relationship between a "
1092 "subprofile and its scoping profile.")]
1093 karl 1.1 class CIM_SubProfileRequiresProfile : CIM_ReferencedProfile {
1094
1095 [Override ( "Antecedent" ), Min ( 1 ), Description (
1096 "The RegisteredProfile that is referenced/required by the "
1097 "subprofile.")]
1098 CIM_RegisteredProfile REF Antecedent;
1099
1100 [Override ( "Dependent" ), Description (
1101 "A RegisteredSubProfile that requires a scoping profile, for "
1102 "context.")]
1103 CIM_RegisteredSubProfile REF Dependent;
1104 };
1105
1106
1107 // ==================================================================
1108 // ElementConformsToProfile
1109 // ==================================================================
1110 [Association, Version ( "2.8.0" ), Description (
1111 "The CIM_ElementConformsToProfile association defines the "
1112 "RegisteredProfiles to which the referenced ManagedElement is "
1113 "conformant. Note: This association may apply to any Managed "
1114 karl 1.1 "Element. Typical usage will apply it to a higher level "
1115 "instance, such as a System, NameSpace, or Service. When "
1116 "applied to a higher level instance, all constituent parts MUST "
1117 "behave appropriately in support of the ManagedElement's "
1118 "conformance to the named RegisteredProfile.")]
1119 class CIM_ElementConformsToProfile {
1120
1121 [Key, Description (
1122 "The RegisteredProfile to which the ManagedElement conforms.")]
1123 CIM_RegisteredProfile REF ConformantStandard;
1124
1125 [Key, Description (
1126 "The ManagedElement that conforms to the RegisteredProfile.")]
1127 CIM_ManagedElement REF ManagedElement;
1128 };
1129
1130 // ====================================================================
1131 // CIM_Error
1132 // ====================================================================
1133 [Indication, Experimental, Exception, Version ( "2.8.1000" ),
1134 Description (
1135 karl 1.1 "CIM_Error is a specialized class that contains information "
1136 "about the severity, cause, recommended actions and other data "
1137 "related to the failure of a CIM Operation. Instances of this "
1138 "type MAY be included as part of the response to a CIM "
1139 "Operation. \n"
1140 "\n"
1141 "CIM_Errors like CIM_Indications do not persist, and therefore "
1142 "do not have keys. Currently, this is only allowed by defining "
1143 "a concrete class with the Indication qualifier. Until the CIM "
1144 "Specification is modified to allow other concrete classes "
1145 "without keys, the CIM_Error class MUST be qualified by both "
1146 "Indication and Exception. After this, the Indication qualifier "
1147 "can be removed.")]
1148 class CIM_Error {
1149
1150 [Description (
1151 "Primary classification of the error. The following values "
1152 "are defined: \n"
1153 "2 - Communications Error. Errors of this type are "
1154 "principally associated with the procedures and/or processes "
1155 "required to convey information from one point to another. \n"
1156 karl 1.1 "3 - Quality of Service Error. Errors of this type are "
1157 "principally associated with failures that result in reduced "
1158 "functionality or performance. \n"
1159 "4 - Software Error. Error of this type are principally "
1160 "associated with a software or processing fault. \n"
1161 "5 - Hardware Error. Errors of this type are principally "
1162 "associated with an equipment or hardware failure. \n"
1163 "6 - Environmental Error. Errors of this type are "
1164 "principally associated with a failure condition relating "
1165 "the to facility, or other environmental considerations. \n"
1166 "7 - Security Error. Errors of this type are associated with "
1167 "security violations, detection of viruses, and similar "
1168 "issues. \n"
1169 "8 - Oversubscription Error. Errors of this type are "
1170 "principally associated with the failure to allocate "
1171 "sufficient resources to complete the operation. \n"
1172 "9 - Unavailable Resource Error. Errors of this type are "
1173 "principally associated with the failure to access a "
1174 "required resource. \n"
1175 "10 -Unsupported Operation Error. Errors of this type are "
1176 "principally associated with requests that are not "
1177 karl 1.1 "supported."),
1178 ValueMap { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
1179 "10" },
1180 Values { "Unknown", "Other", "Communications Error",
1181 "Quality of Service Error", "Software Error",
1182 "Hardware Error", "Environmental Error", "Security Error",
1183 "Oversubscription Error", "Unavailable Resource Error",
1184 "Unsupported Operation Error" }]
1185 uint16 ErrorType;
1186
1187 [Description (
1188 "A free-form string describing the ErrorType when 1, "
1189 "\"Other\", is specified as the ErrorType."),
1190 ModelCorrespondence { "CIM_Error.ErrorType" }]
1191 string OtherErrorType;
1192
1193 [Required, Description (
1194 "A string that uniquely identifies the entity that owns the "
1195 "definition of the format of the Message described in this "
1196 "instance. OwningEntity MUST include a copyrighted, "
1197 "trademarked or otherwise unique name that is owned by the "
1198 karl 1.1 "business entity or standards body defining the format.")]
1199 string OwningEntity;
1200
1201 [Required, Description (
1202 "An opaque string that uniquely identifies, within the scope "
1203 "of the OwningEntity, the format of the Message.")]
1204 string MessageID;
1205
1206
1207 [Required, Description (
1208 "The formatted message. This message is constructed by "
1209 "applying the dynamic content of the message, described in "
1210 "MessageArguments, to the format string uniquely identified, "
1211 "within the scope of the OwningEntity, by MessageID.")]
1212 string Message;
1213
1214 [Description (
1215 "An array containing the dynamic content of the message.")]
1216 string MessageArguments [];
1217
1218 [Required, Description (
1219 karl 1.1 "An enumerated value that describes the severity of the "
1220 "error from the notifier's point of view: \n"
1221 "2 - Low should be used for noncritical issues such as "
1222 "invalid parameters, incorrect usage, unsupported "
1223 "functionality. \n"
1224 "3 - Medium should be used to indicate action is needed, but "
1225 "the situation is not serious at this time. \n"
1226 "4 - High should be used to indicate action is needed NOW. \n"
1227 "5 - Fatal should be used to indicate a loss of data or "
1228 "unrecoverable system or service failure."),
1229 ValueMap { "0", "2", "3", "4", "5" },
1230 Values { "Unknown", "Low", "Medium", "High", "Fatal" }]
1231 uint16 PerceivedSeverity;
1232
1233 [Required, Description (
1234 "An enumerated value that describes the probable cause of "
1235 "the error."),
1236 ValueMap { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
1237 "10", "11", "12", "13", "14", "15", "16", "17", "18", "19",
1238 "20", "21", "22", "23", "24", "25", "26", "27", "28", "29",
1239 "30", "31", "32", "33", "34", "35", "36", "37", "38", "39",
1240 karl 1.1 "40", "41", "42", "43", "44", "45", "46", "47", "48", "49",
1241 "50", "51", "52", "53", "54", "55", "56", "57", "58", "59",
1242 "60", "61", "62", "63", "64", "65", "66", "67", "68", "69",
1243 "70", "71", "72", "73", "74", "75", "76", "77", "78", "79",
1244 "80", "81", "82", "83", "84", "85", "86", "87", "88", "89",
1245 "90", "91", "92", "93", "94", "95", "96", "97", "98", "99",
1246 "100", "101", "102", "103", "104", "105", "106", "107",
1247 "108", "109", "110", "111", "112", "113", "114", "115",
1248 "116", "117", "118", "119", "120", "121", "122", "123",
1249 "124", "125", "126", "127", "128", "129", "130" },
1250 Values { "Unknown", "Other", "Adapter/Card Error",
1251 "Application Subsystem Failure", "Bandwidth Reduced",
1252 "Connection Establishment Error",
1253 "Communications Protocol Error",
1254 "Communications Subsystem Failure",
1255 "Configuration/Customization Error", "Congestion",
1256 "Corrupt Data", "CPU Cycles Limit Exceeded",
1257 "Dataset/Modem Error", "Degraded Signal",
1258 "DTE-DCE Interface Error", "Enclosure Door Open",
1259 "Equipment Malfunction", "Excessive Vibration",
1260 "File Format Error", "Fire Detected", "Flood Detected",
1261 karl 1.1 "Framing Error", "HVAC Problem", "Humidity Unacceptable",
1262 "I/O Device Error", "Input Device Error", "LAN Error",
1263 "Non-Toxic Leak Detected", "Local Node Transmission Error",
1264 "Loss of Frame", "Loss of Signal",
1265 //31
1266 "Material Supply Exhausted", "Multiplexer Problem",
1267 "Out of Memory", "Output Device Error",
1268 "Performance Degraded", "Power Problem",
1269 "Pressure Unacceptable",
1270 "Processor Problem (Internal Machine Error)", "Pump Failure",
1271 "Queue Size Exceeded", "Receive Failure", "Receiver Failure",
1272 "Remote Node Transmission Error",
1273 "Resource at or Nearing Capacity", "Response Time Excessive",
1274 "Retransmission Rate Excessive", "Software Error",
1275 "Software Program Abnormally Terminated",
1276 "Software Program Error (Incorrect Results)",
1277 "Storage Capacity Problem", "Temperature Unacceptable",
1278 "Threshold Crossed", "Timing Problem", "Toxic Leak Detected",
1279 "Transmit Failure", "Transmitter Failure",
1280 "Underlying Resource Unavailable", "Version Mismatch",
1281 "Previous Alert Cleared",
1282 karl 1.1 //60
1283 "Login Attempts Failed", "Software Virus Detected",
1284 "Hardware Security Breached", "Denial of Service Detected",
1285 "Security Credential Mismatch", "Unauthorized Access",
1286 "Alarm Received", "Loss of Pointer", "Payload Mismatch",
1287 "Transmission Error", "Excessive Error Rate",
1288 "Trace Problem", "Element Unavailable", "Element Missing",
1289 "Loss of Multi Frame", "Broadcast Channel Failure",
1290 "Invalid Message Received", "Routing Failure",
1291 "Backplane Failure", "Identifier Duplication",
1292 "Protection Path Failure", "Sync Loss or Mismatch",
1293 "Terminal Problem", "Real Time Clock Failure",
1294 "Antenna Failure", "Battery Charging Failure",
1295 "Disk Failure", "Frequency Hopping Failure",
1296 "Loss of Redundancy", "Power Supply Failure",
1297 "Signal Quality Problem",
1298 //91
1299 "Battery Discharging", "Battery Failure",
1300 "Commercial Power Problem", "Fan Failure", "Engine Failure",
1301 "Sensor Failure", "Fuse Failure", "Generator Failure",
1302 "Low Battery", "Low Fuel", "Low Water", "Explosive Gas",
1303 karl 1.1 "High Winds", "Ice Buildup", "Smoke", "Memory Mismatch",
1304 "Out of CPU Cycles", "Software Environment Problem",
1305 "Software Download Failure", "Element Reinitialized",
1306 "Timeout", "Logging Problems", "Leak Detected",
1307 "Protection Mechanism Failure",
1308 //115
1309 "Protecting Resource Failure", "Database Inconsistency",
1310 "Authentication Failure", "Breach of Confidentiality",
1311 "Cable Tamper", "Delayed Information",
1312 "Duplicate Information", "Information Missing",
1313 "Information Modification", "Information Out of Sequence",
1314 "Key Expired", "Non-Repudiation Failure",
1315 "Out of Hours Activity", "Out of Service",
1316 "Procedural Error", "Unexpected Information" },
1317 MappingStrings { "Recommendation.ITU|X733.Probable cause",
1318 "Recommendation.ITU|M3100.probableCause",
1319 "ITU-IANA-ALARM-TC" },
1320 ModelCorrespondence { "CIM_Error.ProbableCauseDescription" }]
1321 uint16 ProbableCause;
1322
1323 [Description (
1324 karl 1.1 "A free-form string describing the probable cause of the "
1325 "error."),
1326 ModelCorrespondence { "CIM_Error.ProbableCause" }]
1327 string ProbableCauseDescription;
1328
1329 [Description (
1330 "A free-form string describing recommended actions to take "
1331 "to resolve the error.")]
1332 string RecommendedActions[];
1333
1334 [Description (
1335 "The identifying information of the entity (i.e., the "
1336 "instance) generating the error. If this entity is "
1337 "modeled in the CIM Schema, this property contains "
1338 "the path of the instance encoded as a string "
1339 "parameter. If not modeled, the property contains "
1340 "some identifying string that names the entity that "
1341 "generated the error. The path or identifying string is "
1342 "formatted per the ErrorSourceFormat property."),
1343 ModelCorrespondence {
1344 "CIM_Error.ErrorSourceFormat"} ]
1345 karl 1.1 string ErrorSource;
1346
1347 [Description (
1348 "The format of the ErrorSource property is interpretable "
1349 "based on the value of this property. Values are defined as: "
1350 "\n0 - Unknown. The format is unknown or not meaningfully "
1351 "interpretable by a CIM client application. \n"
1352 "1 - Other. The format is defined by the value of the "
1353 "OtherErrorSourceFormat property. \n"
1354 "2 - CIMObjectHandle. A CIM Object Handle, encoded using the "
1355 "MOF syntax defined for the objectHandle non-terminal, is "
1356 "used to identify the entity."),
1357 ValueMap { "0", "1", "2" },
1358 Values { "Unknown", "Other", "CIMObjectHandle" },
1359 ModelCorrespondence { "CIM_Error.ErrorSource",
1360 "CIM_Error.OtherErrorSourceFormat" }]
1361 uint16 ErrorSourceFormat = 0;
1362
1363 [Description (
1364 "A string defining \"Other\" values for ErrorSourceFormat. "
1365 "This value MUST be set to a non NULL value when "
1366 karl 1.1 "ErrorSourceFormat is set to a value of 1 (\"Other\"). For "
1367 "all other values of ErrorSourceFormat, the value of this "
1368 "string must be set to NULL."),
1369 ModelCorrespondence { "CIM_Error.ErrorSourceFormat" }]
1370 string OtherErrorSourceFormat;
1371
1372 [Required, Description (
1373 "The CIM status code that characterizes this instance. \n"
1374 "This property defines the status codes that MAY be return "
1375 "by a conforming CIM Server or Listener. Note that not all "
1376 "status codes are valid for each operation. The "
1377 "specification for each operation SHOULD define the status "
1378 "codes that may be returned by that operation. \n"
1379 "The following values for CIM status code are defined: \n"
1380 "1 - CIM_ERR_FAILED. A general error occurred that is not "
1381 "covered by a more specific error code. \n"
1382 "2 - CIM_ERR_ACCESS_DENIED. Access to a CIM resource was not "
1383 "available to the client. \n"
1384 "3 - CIM_ERR_INVALID_NAMESPACE. The target namespace does "
1385 "not exist. \n"
1386 "4 - CIM_ERR_INVALID_PARAMETER. One or more parameter values "
1387 karl 1.1 "passed to the method were invalid. \n"
1388 "5 - CIM_ERR_INVALID_CLASS. The specified Class does not "
1389 "exist. \n"
1390 "6 - CIM_ERR_NOT_FOUND. The requested object could not be "
1391 "found. \n"
1392 "7 - CIM_ERR_NOT_SUPPORTED. The requested operation is not "
1393 "supported. \n"
1394 "8 - CIM_ERR_CLASS_HAS_CHILDREN. Operation cannot be carried "
1395 "out on this class since it has instances. \n"
1396 "9 - CIM_ERR_CLASS_HAS_INSTANCES. Operation cannot be "
1397 "carried out on this class since it has instances. \n"
1398 "10 - CIM_ERR_INVALID_SUPERCLASS. Operation cannot be "
1399 "carried out since the specified superclass does not exist. "
1400 "\n11 - CIM_ERR_ALREADY_EXISTS. Operation cannot be carried "
1401 "out because an object already exists. \n"
1402 "12 - CIM_ERR_NO_SUCH_PROPERTY. The specified Property does "
1403 "not exist. \n"
1404 "13 - CIM_ERR_TYPE_MISMATCH. The value supplied is "
1405 "incompatible with the type. \n"
1406 "14 - CIM_ERR_QUERY_LANGUAGE_NOT_SUPPORTED. The query "
1407 "language is not recognized or supported. \n"
1408 karl 1.1 "15 - CIM_ERR_INVALID_QUERY. The query is not valid for the "
1409 "specified query language. \n"
1410 "16 - CIM_ERR_METHOD_NOT_AVAILABLE. The extrinsic Method "
1411 "could not be executed. \n"
1412 "17 - CIM_ERR_METHOD_NOT_FOUND. The specified extrinsic "
1413 "Method does not exist. \n"
1414 "18 - CIM_ERR_UNEXPECTED_RESPONSE. The returned response to "
1415 "the asynchronous operation was not expected. \n"
1416 "19 - CIM_ERR_INVALID_RESPONSE_DESTINATION. The specified "
1417 "destination for the asynchronous response is not valid. \n"
1418 "20 - CIM_ERR_NAMESPACE_NOT_EMPTY. The specified Namespace "
1419 "is not empty."),
1420 ValueMap { "1", "2", "3", "4", "5", "6", "7", "8", "9",
1421 "10","11","12","13","14","15","16","17","18","19","20",
1422 "21.." },
1423 Values { "CIM_ERR_FAILED", "CIM_ERR_ACCESS_DENIED",
1424 "CIM_ERR_INVALID_NAMESPACE", "CIM_ERR_INVALID_PARAMETER",
1425 "CIM_ERR_INVALID_CLASS", "CIM_ERR_NOT_FOUND",
1426 "CIM_ERR_NOT_SUPPORTED", "CIM_ERR_CLASS_HAS_CHILDREN",
1427 "CIM_ERR_CLASS_HAS_INSTANCES", "CIM_ERR_INVALID_SUPERCLASS",
1428 "CIM_ERR_ALREADY_EXISTS", "CIM_ERR_NO_SUCH_PROPERTY",
1429 karl 1.1 "CIM_ERR_TYPE_MISMATCH",
1430 "CIM_ERR_QUERY_LANGUAGE_NOT_SUPPORTED",
1431 "CIM_ERR_INVALID_QUERY", "CIM_ERR_METHOD_NOT_AVAILABLE",
1432 "CIM_ERR_METHOD_NOT_FOUND", "CIM_ERR_UNEXPECTED_RESPONSE",
1433 "CIM_ERR_INVALID_RESPONSE_DESTINATION",
1434 "CIM_ERR_NAMESPACE_NOT_EMPTY", "DMTF Reserved" },
1435 MappingStrings { "DSP0201.DMTF|ERROR.CODE|2.2" },
1436 ModelCorrespondence { "CIM_Error.CIMStatusCodeDescription" }]
1437 uint32 CIMStatusCode;
1438
1439 [Description (
1440 "A free-form string containing a human-readable description "
1441 "of CIMStatusCode. This description MAY extend, but MUST be "
1442 "consistent with, the definition of CIMStatusCode."),
1443 MappingStrings { "DSP0201.DMTF|ERROR.DESCRIPTION|2.2" },
1444 ModelCorrespondence { "CIM_Error.CIMStatusCode" }]
1445 string CIMStatusCodeDescription;
1446 };
1447
1448 // ==================================================================
1449 // QueryCapabilities
1450 karl 1.1 // ==================================================================
1451 [Experimental, Version ("2.8.1000"), Description (
1452 "This class defines the capabilities of a CIM_ObjectManager "
1453 "and/or CIM_Provider as associated via ElementCapabilities.") ]
1454 class CIM_QueryCapabilities : CIM_Capabilities {
1455
1456 [Description (
1457 "Enumeration of CQL features supported by an Object "
1458 "Manager or Provider associated via ElementCapabilities. "),
1459 ValueMap {"2", "3", "4", "5", "6", "7", "8", "9", "10", "11",
1460 "12", "13", "14", "15", "16", "..", "0x8000.."},
1461 Values {"Basic Query", "Simple Join", "Complex Join",
1462 "Time", "Basic Like", "Full Like", "Array Elements",
1463 "Embedded Objects", "Order By", "Aggregations",
1464 "Subquery", "Satisfies Array", "Distinct", "First",
1465 "Path Functions", "DMTF Reserved", "Vendor Reserved"}
1466 ]
1467 uint16 CQLFeatures[];
1468 };
1469
1470 // ==================================================================
1471 karl 1.1 // Provider
1472 // ==================================================================
1473 [Version ("2.8.1000"), Experimental, Description (
1474 "A CIM Provider is a type of WBEMService that "
1475 "instruments one or more aspects of the CIM Schema. A "
1476 "CIM_Provider operates at the request of the "
1477 "CIM_ObjectManager to perform operations on CIM objects. "
1478 "The properties CreationClassName, SystemCreationClassName and "
1479 "SystemName can be set to empty strings for a createInstance operation."
1480 "In this case, the CIM Object Manager must interpret the properties "
1481 "with the local system information.") ]
1482 class CIM_Provider : CIM_WBEMService {
1483
1484 [Override ("Name"), Description (
1485 "A human-readable name that uniquely "
1486 "identifies the provider within a system.") ]
1487 string Name;
1488
1489 [Required, Description (
1490 "An implementation specific string that identifies the "
1491 "handle to the provider.") ]
1492 karl 1.1 string Handle;
1493 };
1494
1495 // ==================================================================
1496 // ProviderCapabilities
1497 // ==================================================================
1498 [Version ("2.8.1000"), Experimental, Description (
1499 "This class defines the capabilities of the associated "
1500 "provider.") ]
1501 class CIM_ProviderCapabilities : CIM_Capabilities {
1502
1503 [Required, Description (
1504 "The ClassName lists the class for which the associated "
1505 "Provider supplies instances, associations or indications "
1506 "information. The ClassInNamespace association provides "
1507 "namespace information for the listed class name.")]
1508 string ClassName;
1509
1510 [Description (
1511 "ProviderType enumerates the kind of provider "
1512 "capabilities defined for the associated Provider."),
1513 karl 1.1 ValueMap {"1", "2", "3", "4", "5"},
1514 Values {"Other", "Instance", "Association", "Indication",
1515 "Method"},
1516 ArrayType ("Indexed"),
1517 ModelCorrespondence {
1518 "CIM_ProviderCapabilities.OtherProviderTypes"} ]
1519 uint16 ProviderTypes[];
1520
1521 [Description (
1522 "Type(s) of provider capabilities when \"Other\" is included "
1523 "in ProviderType property array."),
1524 ArrayType ("Indexed"),
1525 ModelCorrespondence {"CIM_ProviderCapabilities.ProviderTypes"} ]
1526 string OtherProviderTypes[];
1527
1528 [Description (
1529 "SupportedProperties lists the properties supported "
1530 "by this provider. If this array is NULL, the provider "
1531 "MUST support all of the properties defined in the class. "
1532 "If the provider does not support all of the properties, "
1533 "the properties supported MUST be included in the array. "
1534 karl 1.1 "The array entry format is \"PropertyName\".") ]
1535 string SupportedProperties[];
1536
1537 [Description (
1538 "SupportedMethods lists the methods supported by this "
1539 "provider. If this array is NULL, the provider MUST "
1540 "support all the methods defined in the class. "
1541 "If the provider does not support all the methods, "
1542 "the methods supported MUST be included in the array."
1543 "The array entry format is \"MethodName\".") ]
1544 string SupportedMethods[];
1545 };
1546
1547
1548 // ==================================================================
1549 // ProviderLibrary
1550 // ==================================================================
1551 [Version ("2.8.1000"), Experimental, Description (
1552 "A ProviderLibrary consists of one or more Providers. "
1553 "It can be enabled/disabled - which affects the component "
1554 "Services.") ]
1555 karl 1.1 class CIM_ProviderLibrary : CIM_EnabledLogicalElement {
1556
1557 [Key, Override ("Name"), Description (
1558 "A human-readable name that uniquely identifies the "
1559 "Provider Library. Name is chosen as one of the keys "
1560 "for correspondence with the keys/identity of the "
1561 "component Provider Services.") ]
1562 string Name;
1563
1564 [Required, Description (
1565 "An implementation specific string that "
1566 "identifies the handle of the provider.") ]
1567 string Handle;
1568 };
1569
1570 // ==================================================================
1571 // ProviderInLibrary
1572 // ==================================================================
1573 [Association, Aggregation, Composition, Version ("2.8.1000"),
1574 Experimental, Description (
1575 "An association describing the Providers that are "
1576 karl 1.1 "contained in a ProviderLibrary.") ]
1577 class CIM_ProviderInProviderLibrary : CIM_Component {
1578
1579 [Max (1), Aggregate, Override ("GroupComponent"),
1580 Description ("The CIM ProviderLibrary.") ]
1581 CIM_ProviderLibrary REF GroupComponent;
1582
1583 [Override ("PartComponent"), Description ("The CIM Provider.") ]
1584 CIM_Provider REF PartComponent;
1585 };
1586
1587 // ==================================================================
1588 // ProviderElementCapabilities
1589 // ==================================================================
1590 [Association, Version ("2.8.1000"), Experimental, Description (
1591 "ProviderElementCapabilities is an association describing "
1592 "the Capabilities that are supported by a Provider.") ]
1593 class CIM_ProviderElementCapabilities : CIM_ElementCapabilities {
1594
1595 [Min (1), Max (1), Override ("ManagedElement"),
1596 Description ("The CIM Provider.") ]
1597 karl 1.1 CIM_Provider REF ManagedElement;
1598
1599 [Override ("Capabilities"), Description (
1600 "The CIM Provider's Capabilities.") ]
1601 CIM_ProviderCapabilities REF Capabilities;
1602 };
1603
1604 // ==================================================================
1605 // end of file
1606 // ==================================================================
|