(file) Return to CIM_Interop.mof CVS log (file) (dir) Up to [Pegasus] / pegasus / Schemas / CIMPrelim29

   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           // ==================================================================

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2