// =================================================================== // Title: Core Interoperability 2.6 // Filename: CIM_Interop26.mof // Version: 2.6 // Release: 0 // Date: 06/12/2001 // =================================================================== // Copyright "2001" Distributed Management Task Force, Inc. (DMTF). // All rights reserved. // DMTF is a not-for-profit association of industry members dedicated // to promoting enterprise and systems management and interoperability. // DMTF specifications and documents may be reproduced for uses // consistent with this purpose by members and non-members, // provided that correct attribution is given. // As DMTF specifications may be revised from time to time, // the particular version and release cited should always be noted. // =================================================================== // Description: The object classes below are listed in an order that // avoids forward references. Required objects, defined // by other working groups, are omitted. // ================================================================== // Author: DMTF Interoperability Working Group // ================================================================== // ================================================================== // ObjectManager // ================================================================== [Description ( "A type of CIM_Service that defines the capabilities of the " "CIM Server in which this ObjectManager class resides. Details " "related to communicating with the ObjectManager, and the " "Manager's basic capabilities, are stored in instances of the " "associated CommunicationMechanism class available through the " "CommMechanismForManager association. It is assumed that " "Basic Read operations must be supported " "by all ObjectManager's in order to retrieve any additional " "detail.") ] class CIM_ObjectManager : CIM_Service { }; // ================================================================== // ObjectManagerCommunicationMechanism // ================================================================== [Description ( "The class, ObjectManagerCommunicationMechanism, describes " "access to an ObjectManager. It describes a protocol and " "data encoding that can be used for communication. When all " "instances of this class are enumerated for an ObjectManager " "(using the CommMechanismForManager association), all possible " "protocol and encoding schemes will be known. Also, specific " "capabilities (for example, basic read or query) that are " "supported in the protocol/encoding are described - using the " "ProfilesSupported property.") ] class CIM_ObjectManagerCommunicationMechanism : CIM_ServiceAccessPoint { [Description ( "Enumerated array describing an encoding and protocols which can be " "used to communicate with the Object Manager. At this time, " "only one encoding and protocol are standardized by the " "DMTF - \"cim-xml\". If this is supported by an " "Object Manager, the specified string should be indicated. " "Other 'standard' strings may be defined. In addition, vendor " "specific encoding/protocol strings may be used."), Values {"Unknown", "Other", "cim-xml"} ] uint16 CommunicationMechanism[]; [Description ( "A free-form string providing a description of the " "supported protocols when 1, \"Other\", is specified in " "the CommunicationMechanism array."), ModelCorrespondence { "CIM_ObjectManagerCommunicationMechanism.CommunicationMechanism"} ] string OtherCommunicationMechanismDescription; [Description ( "Enumerated array describing the types of operations " "supported by the ObjectManager, using this encoding/protocol. " "The enumeration is based on the Functional Profiles defined " "for conformance in the DMTF document, Specification for CIM " "Operations over HTTP."), Values {"Unknown", "Other", "Basic Read", "Basic Write", "Schema Manipulation", "Instance Manipulation", "Association Traversal", "Query Execution", "Qualifier Declaration", "Indications"} ] uint16 ProfilesSupported[]; [Description ( "A free-form string providing a description of the " "supported operations when 1, \"Other\", is specified in " "the ProfilesSupported array. "), ModelCorrespondence { "CIM_ObjectManagerCommunicationMechanism.ProfilesSupported"} ] string OtherProfileDescription; [Description ( "Boolean indicating whether the Object Manager supports " "multiple operation requests (TRUE) or only simple requests " "(FALSE).") ] boolean MultipleOperationsSupported; [Description ( "Query languages supported by the ObjectManager, using " "this encoding/protocol."), Values{"Unknown", "Other", "None", "WBEMSQL1", "WBEMSQL2"} ] string QueryLanguagesSupported[]; [Description ( "A free-form string providing a description of the " "language when 1, \"Other\", is specified in the " "QueryLanguagesSupported array. "), ModelCorrespondence { "CIM_ObjectManagerCommunicationMechanism.QueryLanguagesSupported"} ] string OtherLanguageDescription; [Description ( "Enumerated array describing the types of authentication " "supported by the ObjectManager, using this encoding/protocol. The " "defined values represent the authentication defined in the " "DMTF document, Specification for CIM Operations over HTTP"), Values {"Unknown", "Other", "None", "Basic", "Digest"} ] uint16 AuthenticationMechanismsSupported[]; [Description ( "A free-form string providing a description of the " "supported mechanism when 1, \"Other\", is specified in " "the AuthenticationMechanismsSupported array. "), ModelCorrespondence { "CIM_ObjectManagerCommunicationMechanism.AuthenticationMechanismsSupported"} ] string OtherAuthenticationDescription; }; // ================================================================== // CIMXMLCommunicationMechanism // ================================================================== [Description ( "This class specializes ObjectManagerCommunicationMechanism, " "adding properties specific to the CIM-XML protocol (XML encoding " "and CIM Operations). ") ] class CIM_CIMXMLCommunicationMechanism : CIM_ObjectManagerCommunicationMechanism { [Override ("CommunicationMechanism") ] uint16 CommunicationMechanism = 2; [Description ( "Enumeration describing the CIM-XML protocol version supported " "by the Object Manager."), Values {"Unknown", "1.0"} ] uint16 CIMXMLProtocolVersion; [Description ( "Describes whether the CIM Server is strictly validating " "(validates the XML document against the DTD) or not " "(loosely validating).") ] boolean CIMValidated; }; // ================================================================== // CommMechanismForManager // ================================================================== [Association, Description ( "CommMechanismForManager is an association between an ObjectManager " "and an ObjectManagerCommunicationMechanism class. The latter " "describes a possible encoding/protocol/set of operations for " "accessing the referenced ObjectManager.") ] class CIM_CommMechanismForManager : CIM_ServiceAccessBySAP { [Override ("Antecedent"), Min(1), Max(1), Description ( "The specific Object Manager whose communication mechanism is " "described.") ] CIM_ObjectManager REF Antecedent; [Override ("Dependent"), Min(1), Description ( "The encoding/protocol/set of operations that may be used " "to communicate with the referenced ObjectManager.") ] CIM_ObjectManagerCommunicationMechanism REF Dependent; }; // ================================================================== // Namespace // ================================================================== [Description ( "Namespaces provide a domain (in other words, a container), " "in which the instances of [a class] are guaranteed to be " "unique per the KEY qualifier definitions. It is named " "relative to the CIM_ObjectManager implementation that " "provides such a domain.") ] class CIM_Namespace : CIM_ManagedElement { [Propagated("CIM_ObjectManager.SystemCreationClassName"), Key, MaxLen (256), Description ("The scoping System's CreationClassName.") ] string SystemCreationClassName; [Propagated("CIM_ObjectManager.SystemName"), Key, MaxLen (256), Description ("The scoping System's Name.") ] string SystemName; [Propagated ("CIM_ObjectManager.CreationClassName"), Key, MaxLen (256), Description ( "The scoping Object Manager's CreationClassName. ") ] string ObjectManagerCreationClassName; [Propagated ("CIM_ObjectManager.Name"), Key, MaxLen (256), Description ( "The scoping Object Manager's Name. ") ] string ObjectManagerName; [Key, MaxLen (256), Description ( "CreationClassName indicates the name of the class or the " "subclass used in the creation of an instance. When used " "with the other key properties of this class, this property " "allows all instances of this class and its subclasses to " "be uniquely identified.") ] string CreationClassName; [Key, MaxLen (256), Description ( "A string to uniquely identify the Namespace within " "the ObjectManager.") ] string Name; [Description ( "Enumeration indicating the organization/schema of the " "Namespace's objects. For example, they may be instances " "of classes of a specific CIM version."), ValueMap {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "200", "201", "202"}, Values {"Unknown", "Other", "CIM 1.0", "CIM 2.0", "CIM 2.1", "CIM 2.2", "CIM 2.3", "CIM 2.4", "CIM 2.5", "CIM 2.6", "DMI Recast", "SNMP Recast", "CMIP Recast"}, ModelCorrespondence {"CIM_Namespace.DescriptionOfClassInfo"} ] uint16 ClassInfo; [Description ( "A string providing more detail (beyond the general " "classification in ClassInfo) for the object hierarchy of " "the Namespace."), ModelCorrespondence {"CIM_Namespace.ClassInfo"} ] string DescriptionOfClassInfo; }; // ================================================================== // SystemIdentification // ================================================================== [Description ( "A Namespace may represent data for one or many systems, " "that are local, remote (different than the system on which " "the object manager is running) or aggregated. The System" "Identification class provides enough data to identify the " "system(s) represented in the Namespace. It is weak to " "the Namespace.") ] class CIM_SystemIdentification : CIM_ManagedElement { [Propagated("CIM_Namespace.SystemCreationClassName"), Key, MaxLen (256), Description ("The scoping System's CreationClassName.") ] string SystemCreationClassName; [Propagated("CIM_Namespace.SystemName"), Key, MaxLen (256), Description ("The scoping System's Name.") ] string SystemName; [Propagated ("CIM_Namespace.ObjectManagerCreationClassName"), Key, MaxLen (256), Description ( "The scoping Object Manager's CreationClassName. ") ] string ObjectManagerCreationClassName; [Propagated ("CIM_Namespace.ObjectManagerName"), Key, MaxLen (256), Description ( "The scoping Object Manager's Name. ") ] string ObjectManagerName; [Propagated ("CIM_Namespace.CreationClassName"), Key, MaxLen (256), Description ( "The scoping Namespace's CreationClassName. ") ] string NamespaceCreationClassName; [Propagated ("CIM_Namespace.Name"), Key, MaxLen (256), Description ( "The scoping Namespace's Name. ") ] string NamespaceName; [Key, MaxLen (256), Description ( "CreationClassName indicates the name of the class or the " "subclass used in the creation of an instance. When used " "with the other key properties of this class, this property " "allows all instances of this class and its subclasses to " "be uniquely identified.") ] string CreationClassName; [Key, MaxLen (256), Description ( "A string uniquely identifying the name of the system " "represented in the Namespace.") ] string Name; [Description ( "Enumeration indicating the format of the system identification " "and/or addressing information."), Values {"Unknown", "Other", "Short DNS Name", "Fully qualified DNS Name", "Windows Domain Name", "NetWare Server Name", "Unix Hostname", "Globally Unique System Identifier", "IP Address", "Modem Dialup String", "MAC Address", "IPMI Address" }, ArrayType ("Indexed"), ModelCorrespondence {"CIM_SystemIdentification.IdentificationData", "CIM_SystemIdentification.FormatDescription"} ] uint16 IdentificationFormats[]; [Description ( "Strings further describing the format of the system " "identification information." ), ArrayType ("Indexed"), ModelCorrespondence {"CIM_SystemIdentification.IdentificationFormat", "CIM_SystemIdentification.IdentificationData"} ] string FormatDescriptions[]; [Description ( "Strings containing the system identification information. The format " "is described by the corresponding array item in " "IdentificationFormats."), ArrayType ("Indexed"), ModelCorrespondence {"CIM_SystemIdentification.IdentificationFormat", "CIM_SystemIdentification.FormatDescription"} ] string IdentificationData[]; }; // ================================================================== // NamespaceInManager // ================================================================== [Association, Description ( "NamespaceInManager is an association describing the " "Namespaces hosted by a CIM ObjectManager.") ] class CIM_NamespaceInManager : CIM_Dependency { [Override ("Antecedent"), Min(1), Max(1), Key, Description ( "The Object Manager containing a Namespace.") ] CIM_ObjectManager REF Antecedent; [Override ("Dependent"), Weak, Description ("The Namespace in an ObjectManager.") ] CIM_Namespace REF Dependent; }; // ================================================================== // SystemInNamespace // ================================================================== [Association, Description ( "SystemInNamespace is an association that allows enumeration " "of the system(s) represented in a Namespace.") ] class CIM_SystemInNamespace { [Key, Min(1), Max(1), Description ( "The Namespace containing management objects from " "one or more systems.") ] CIM_Namespace REF ManagedNamespace; [Key, Weak, Description ( "Identification information for systems in the Namespace.") ] CIM_SystemIdentification REF Identification; [Description ( "A list of enumerated values providing a high level " "description of the data contained and allowed in the " "Namespace. Additional clarification is provided in the " "DescriptionOfContainedData array."), ArrayType ("Indexed"), Values {"Unknown", "Other", "Local System Data", "Data Aggregated from Multiple Systems", "Proxied Data"}, ModelCorrespondence { "CIM_SystemInNamespace.DescriptionOfContainedData "} ] uint16 ScopeOfContainedData[]; [Description ( "An array of free-form strings providing more detailed " "explanations for the data/objects contained in the " "Namespace, as described by the ContainedData array. " "Note, each entry of this array is related to the entry " "in the ContainedData array that is located at the same " "index."), ArrayType ("Indexed"), ModelCorrespondence { "CIM_SystemInNamespace.ScopeOfContainedData "} ] string DescriptionOfContainedData[]; }; // ================================================================== // IdentificationOfManagedSystem // ================================================================== [Association, Description ( "IdentificationOfManagedSystem is an association that " "links the SystemIdentification object to the CIM_System(s) " "that are being identified and represented in the Namespace.") ] class CIM_IdentificationOfManagedSystem : CIM_Dependency { [Override ("Antecedent"), Max(1), Description ( "The System which is identified.") ] CIM_System REF Antecedent; [Override ("Dependent"), Max(1), Description ( "The SystemIdentification information.") ] CIM_SystemIdentification REF Dependent; };