// =================================================================== // Title: Core Settings // $State: dead $ // $Date: 2005/02/24 20:47:32 $ // $Source: /cvs/MSB/pegasus/Schemas/CIMPrelim29/Attic/Core_Settings.mof,v $ // $Revision: 1.2 $ // =================================================================== //#pragma inLine ("Includes/copyright.inc") // Copyright 1998-2004 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 date should always be noted. // // Implementation of certain elements of this standard or proposed // standard may be subject to third party patent rights, including // provisional patent rights (herein "patent rights"). DMTF makes // no representations to users of the standard as to the existence // of such rights, and is not responsible to recognize, disclose, or // identify any or all such third party patent right, owners or // claimants, nor for any incomplete or inaccurate identification or // disclosure of such rights, owners or claimants. DMTF shall have no // liability to any party, in any manner or circumstance, under any // legal theory whatsoever, for failure to recognize, disclose, or // identify any such third party patent rights, or for such party's // reliance on the standard or incorporation thereof in its product, // protocols or testing procedures. DMTF shall have no liability to // any party implementing such standard, whether such implementation // is foreseeable or not, nor to any patent owner or claimant, and shall // have no liability or responsibility for costs or losses incurred if // a standard is withdrawn or modified after publication, and shall be // indemnified and held harmless by any party implementing the // standard from any and all claims of infringement by a patent owner // for such implementations. // // For information about patents held by third-parties which have // notified the DMTF that, in their opinion, such patent may relate to // or impact implementations of DMTF standards, visit // http://www.dmtf.org/about/policies/disclosures.php. //#pragma inLine // =================================================================== // Description: The Core Model defines basic management concepts. // This file defines Settings/SettingData and their // groupings, Profiles and Configurations. // // The object classes below are listed in an order that // avoids forward references. Required objects, defined // by other working groups, are omitted. // ================================================================== // Change Log for v2.9 Preliminary // CR1333 - Add support for configuration "blobs" as a subclass of // SettingData.Also deprecate Save and Restore properties in // LogicalDevice // CR1336 - Add TimeService and related classes. Deprecate CIM_TimeZone // CR1378 - Deprecate CIM_Profile, CIM_Configuration // // Change Log for v2.8 Final // CR1128 - Addition of HostedDependency // CR1223 - SysDev Omnibus CR - Minor MOF corrections. // // Change Log for v2.7 Final // CR927 - Relax cardinality for the ManagedElement side of // ElementProfile // - Update the description of Profile to reflect this change. // CR968 - Remove the Experimental qualifier // CR994 - Update description of InstanceID // // Change Log for v2.7 // CR723 - Introduce SettingData, ScopedSetttingData, ScopedSetting, // and ElementSettingData. // - Clarify the description of Setting to reconcile with // SettingData. // CR642 - Add Profile and ElementProfile // ================================================================== #pragma locale ("en_US") // =================================================================== // SettingData // =================================================================== [Abstract, Version ( "2.8.1000" ), Description ( "The SettingData class represents configuration-related and " "operational parameters for one or more ManagedElement(s). A " "ManagedElement may have multiple SettingData objects " "associated with it. The current operational values for an " "Element's parameters are reflected by properties in the " "Element itself or by properties in its associations. These " "properties do not have to be the same values present in the " "SettingData object. For example, a modem may have a " "SettingData baud rate of 56Kb/sec but be operating at " "19.2Kb/sec. \n" "Note that the CIM_SettingData class is very similar to " "CIM_Setting, yet both classes are present in the model. This " "is because many implementations have successfully used " "CIM_Setting. However, issues have arisen that could not be " "resolved without defining a new class. Therefore, until a new " "major release occurs, both classes will exist in the model. " "Refer to the Core White Paper for additional information. " "SettingData instances may be aggregated together into higher " "level SettingData objects using ConcreteComponent " "associations.")] class CIM_SettingData : CIM_ManagedElement { [Key, Description ( "Within the scope of the instantiating Namespace, InstanceID " "opaquely and uniquely identifies an instance of this class. " "In order to ensure uniqueness within the NameSpace, the " "value of InstanceID SHOULD be constructed using the " "following 'preferred' algorithm: \n" ": \n" "Where and are separated by a colon ':', " "and where MUST include a copyrighted, trademarked " "or otherwise unique name that is owned by the business " "entity creating/defining the InstanceID, or is a registered " "ID that is assigned to the business entity by a recognized " "global authority (This is similar to the _ structure of Schema class names.) In " "addition, to ensure uniqueness MUST NOT contain a " "colon (':'). When using this algorithm, the first colon to " "appear in InstanceID MUST appear between and " ". \n" " is chosen by the business entity and SHOULD not " "be re-used to identify different underlying (real-world) " "elements. If the above 'preferred' algorithm is not used, " "the defining entity MUST assure that the resultant " "InstanceID is not re-used across any InstanceIDs produced " "by this or other providers for this instance's NameSpace. \n" "For DMTF defined instances, the 'preferred' algorithm MUST " "be used with the set to 'CIM'.")] string InstanceID; [Required, Override ( "ElementName" ), Description ( "The user friendly name for this instance of SettingData. In " "addition, the user friendly name can be used as a index " "property for a search of query. (Note: Name does not have " "to be unique within a namespace.)")] string ElementName; }; // =================================================================== // ScopedSettingData // =================================================================== [Abstract, Version ( "2.7.0" ), Description ( "The ScopedSettingData class represents the general concept of " "SettingData which is scoped/contained by a ManagedElement " "(i.e. settings that are specifically defined for a system, " "device, etc). ScopedSettingData is tied to a ManagedElement " "using the ScopedSetting association. Note that the cardinality " "of the ManagedElement reference is Min(1), Max(1). This " "cardinality mandates the instantiation of the ScopedSetting " "association for the referenced instance of ScopedSettingData. " "ScopedSetting describes the existence requirements and context " "for the referenced instance of ManagedElement. Specifically, " "the ManagedElement MUST exist and provides the context for the " "ScopedSettingData.")] class CIM_ScopedSettingData : CIM_SettingData { }; // =================================================================== // ScopedSetting // =================================================================== [Association, Version ( "2.8.0" ), Description ( "ScopedSetting defines a setting in the context of the Managed " "Element which it resides.")] class CIM_ScopedSetting : CIM_HostedDependency { [Override ( "Antecedent" ), Min ( 1 ), Max ( 1 ), Description ( "The scoping ManagedElement.")] CIM_ManagedElement REF Antecedent; [Override ( "Dependent" ), Description ( "The setting defined for the ManagedElement.")] CIM_ScopedSettingData REF Dependent; }; // =================================================================== // ElementSettingData // =================================================================== [Association, Version ( "2.8.1000" ), Description ( "ElementSettingData represents the association between " "ManagedElements and applicable setting data. This association " "also describes whether this is a default or current setting.")] class CIM_ElementSettingData { [Key, Description ( "The managed element.")] CIM_ManagedElement REF ManagedElement; [Key, Description ( "The SettingData object associated with the element.")] CIM_SettingData REF SettingData; [Description ( "An enumerated integer indicating that the referenced " "setting is a default setting for the element, or that this " "information is unknown."), ValueMap { "0", "1", "2" }, Values { "Unknown", "Is Default", "Is Not Default" }] uint16 IsDefault; [Description ( "An enumerated integer indicating that the referenced " "setting is currently being used in the operation of the " "element, or that this information is unknown."), ValueMap { "0", "1", "2" }, Values { "Unknown", "Is Current", "Is Not Current" }] uint16 IsCurrent; }; // ================================================================== // Profile // ================================================================== [Deprecated { "CIM_SettingData", "CIM_Setting", "CIM_ConcreteComponent" }, Version ( "2.8.1000" ), Description ( "The use of CIM_Profile is deprecated in favor of aggregating " "instances of Setting or SettingData into 'higher' level " "Settings/SettingData objects, using the ConcreteComponent " "association. This simplifies the use of Settings/SettingData. " "With Profiles subclassing from Collection, separate " "associations were needed from an element to either its " "Profiles or Settings/ SettingData. This introduced unnecessary " "complexity and redundancy into the model. \n" "\n" "Profile specifies a general collection of Settings/SettingData " "that are logically grouped together. Note that the CIM_Profile " "class uses simplified naming/identity and collection " "algorithms, as compared to CIM_Configuration. The settings are " "'collected' into the Profile using the MemberOfCollection " "association. Note that a Profile obtains its setting data and " "other necessary information from collected Setting/SettingData " "instances, and by the definition of additional properties in " "subclasses. One example of a Profile is to define the " "collection of settings for a particular person. Another is to " "define the collection of settings appropriate when " "initializing a system. \n" "\n" "Profile is tied to a ManagedElement using the ElementProfile " "association. The ManagedElement provides context for the " "Profile, and the settings collected by Profile SHOULD be " "settings of the associated ManagedElement. Note that a " "ManagedElement MAY NOT exist when the Profile is instantiated. " "This is true when the Profile is used in the creation of the " "real world entity represented by (and then instantiated in) " "the ManagedElement.")] class CIM_Profile : CIM_Collection { [Deprecated { "CIM_SettingData.InstanceID", "CIM_Setting.SettingID" }, Key, Description ( "Within the scope of the instantiating Namespace, InstanceID " "opaquely and uniquely identifies an instance of this class. " "In order to ensure uniqueness within the NameSpace, the " "value of InstanceID SHOULD be constructed using the " "following 'preferred' algorithm: \n" ": \n" "Where and are separated by a colon ':', " "and where MUST include a copyrighted, trademarked " "or otherwise unique name that is owned by the business " "entity creating/defining the InstanceID, or is a registered " "ID that is assigned to the business entity by a recognized " "global authority (This is similar to the _ structure of Schema class names.) In " "addition, to ensure uniqueness MUST NOT contain a " "colon (':'). When using this algorithm, the first colon to " "appear in InstanceID MUST appear between and " ". \n" " is chosen by the business entity and SHOULD not " "be re-used to identify different underlying (real-world) " "elements. If the above 'preferred' algorithm is not used, " "the defining entity MUST assure that the resultant " "InstanceID is not re-used across any InstanceIDs produced " "by this or other providers for this instance's NameSpace. \n" "For DMTF defined instances, the 'preferred' algorithm MUST " "be used with the set to 'CIM'.")] string InstanceID; }; // =================================================================== // ElementProfile // =================================================================== [Association, Deprecated { "CIM_ElementSettingData", "CIM_ElementSetting" }, Version ( "2.8.1000" ), Description ( "ElementProfile represents the association between " "ManagedElements and the Profiles (collection of settings) " "defined for them. This association describes that the settings " "collected by the Profile apply to the associated " "ManagedElement. \n" "\n" "The Profile class is being deprecated in lieu of using a " "ConcreteComponent relationship to indicate a hierarchy of " "Setting/SettingData instances. This allows the re-use of the " "element to Setting/SettingData associations, instead of " "defining a peer association specifically for Profiles.")] class CIM_ElementProfile { [Deprecated { "CIM_ElementSettingData.ManagedElement", "CIM_ElementSetting.Element" }, Key, Description ( "The managed element.")] CIM_ManagedElement REF ManagedElement; [Deprecated { "CIM_ElementSettingData.SettingData", "CIM_ElementSetting.Setting" }, Key, Description ( "The Profile object associated with the element.")] CIM_Profile REF Profile; }; // =================================================================== // Setting // =================================================================== [Abstract, Version ( "2.8.1000" ), Description ( "The Setting class represents configuration-related and " "operational parameters for one or more " "ManagedSystemElement(s). An Element may have multiple Setting " "objects associated with it. The current operational values for " "an Element's parameters are reflected by properties in the " "Element itself or by properties in its associations. These " "properties do not have to be the same values present in the " "Setting object. For example, a modem may have a Setting baud " "rate of 56Kb/sec but be operating at 19.2Kb/sec. \n" "Note that the CIM_SettingData class is very similar to " "CIM_Setting, yet both classes are present in the model. This " "is because many implementations have successfully used " "CIM_Setting. However, issues have arisen that could not be " "resolved without defining a new class. Therefore, until a new " "major release occurs, both classes will exist in the model. " "Refer to the Core White Paper for additional information. " "Setting instances may be aggregated together into higher level " "Setting objects using ConcreteComponent associations.")] class CIM_Setting : CIM_ManagedElement { [Description ( "The identifier by which the Setting object is known."), MaxLen ( 256 )] string SettingID; [Description ( "The VerifyOKToApplyToMSE method is used to verify that this " "Setting can be 'applied' to the referenced Managed " "SystemElement, at the given time or time interval. This " "method takes three input parameters: MSE (the Managed " "SystemElement that is being verified), TimeToApply (which, " "being a datetime, can be either a specific time or a time " "interval), and MustBeCompletedBy (which indicates the " "required completion time for the method). The return value " "should be 0 if it is OK to apply the Setting, 1 if the " "method is not supported, 2 if the Setting cannot be applied " "within the specified times, and any other number if an " "error occurred. In a subclass, the set of possible return " "codes could be specified, using a ValueMap qualifier on the " "method. The strings to which the ValueMap contents are " "'translated' may also be specified in the subclass as a " "Values array qualifier.")] uint32 VerifyOKToApplyToMSE( [IN, Description ( "The Managed SystemElement that is being verified.")] CIM_ManagedSystemElement REF MSE, [IN, Description ( "TimeToApply can be either a specific time or a time " "interval.")] datetime TimeToApply, [IN, Description ( "The required completion time for the method.")] datetime MustBeCompletedBy); [Description ( "The ApplyToMSE method performs the actual application of " "the Setting to the referenced ManagedSystemElement. It " "takes three input parameters: MSE (the ManagedSystem " "Element to which the Setting is being applied), TimeToApply " "(which, being a datetime, can be either a specific time or " "a time interval), and MustBeCompletedBy (which indicates " "the required completion time for the method). Note that the " "semantics of this method are that individual Settings are " "either wholly applied or not applied at all to their target " "ManagedSystemElement. The return value should be 0 if the " "Setting is successfully applied to the referenced " "ManagedSystemElement, 1 if the method is not supported, 2 " "if the Setting was not applied within the specified times, " "and any other number if an error occurred. In a subclass, " "the set of possible return codes could be specified, using " "a ValueMap qualifier on the method. The strings to which " "the ValueMap contents are 'translated' may also be " "specified in the subclass as a Values array qualifier. \n" "Note: If an error occurs in applying the Setting to a " "ManagedSystemElement, the Element must be configured as " "when the 'Apply' attempt began. That is, the Element should " "NOT be left in an indeterminate state.")] uint32 ApplyToMSE( [IN, Description ( "The ManagedSystem Element to which the Setting is being " "applied.")] CIM_ManagedSystemElement REF MSE, [IN, Description ( "TimeToApply can be either a specific time or a time " "interval.")] datetime TimeToApply, [IN, Description ( "The required completion time for the method.")] datetime MustBeCompletedBy); [Description ( "The VerifyOKToApplyToCollection method is used to verify " "that this Setting can be 'applied' to the referenced " "Collection of ManagedSystemElements, at the given time or " "time interval, without causing adverse effects to either " "the Collection itself or its surrounding environment. The " "net effect is to execute the VerifyOKToApply method against " "each of the Elements aggregated by the Collection. This " "method takes three input parameters: Collection (the " "Collection of Managed SystemElements that is being " "verified), TimeToApply (which, being a datetime, can be " "either a specific time or a time interval), and " "MustBeCompletedBy (which indicates the required completion " "time for the method). The return value should be 0 if it is " "OK to apply the Setting, 1 if the method is not supported, " "2 if the Setting cannot be applied within the specified " "times, and any other number if an error occurred. One " "output parameter is defined - CanNotApply - which is a " "string array that lists the keys of the " "ManagedSystemElements to which the Setting can NOT be " "applied. This enables those Elements to be revisited and " "either fixed, or other corrective action taken. \n" "In a subclass, the set of possible return codes could be " "specified, using a ValueMap qualifier on the method. The " "strings to which the ValueMap contents are 'translated' may " "also be specified in the subclass as a Values array " "qualifier.")] uint32 VerifyOKToApplyToCollection ( [IN, Description ( "The Collection of Managed SystemElements that is being " "verified.")] CIM_CollectionOfMSEs REF Collection, [IN, Description ( "TimeToApply can be either a specific time or a time " "interval.")] datetime TimeToApply, [IN, Description ( "The required completion time for the method.")] datetime MustBeCompletedBy, [IN ( false ), OUT, Description ( "A string array that lists the keys of the " "ManagedSystemElements to which the Setting can NOT be " "applied.")] string CanNotApply[]); [Description ( "The ApplyToCollection method performs the application of " "the Setting to the referenced Collection of ManagedSystem " "Elements. The net effect is to execute the ApplyToMSE " "method against each of the Elements aggregated by the " "Collection. If the input value ContinueOnError is FALSE, " "this method applies the Setting to all Elements in the " "Collection until it encounters an error, in which case it " "stops execution, logs the key of the Element that caused " "the error in the CanNotApply array, and issues a return " "code of 2. If the input value ContinueOnError is TRUE, then " "this method applies the Setting to all the " "ManagedSystemElements in the Collection, and reports the " "failed Elements in the array, CanNotApply. For the latter, " "processing will continue until the method is applied to all " "Elements in the Collection, regardless of any errors " "encountered. The key of each ManagedSystemElement to which " "the Setting could not be applied is logged into the " "CanNotApply array. This method takes four input parameters: " "Collection (the Collection of Elements to which the Setting " "is being applied), TimeToApply (which, being a datetime, " "can be either a specific time or a time interval), " "ContinueOnError (TRUE means to continue processing on " "encountering an error), and MustBeCompletedBy (which " "indicates the required completion time for the method). The " "return value should be 0 if the Setting is successfully " "applied to the referenced Collection, 1 if the method is " "not supported, 2 if the Setting was not applied within the " "specified times, 3 if the Setting cannot be applied using " "the input value for ContinueOnError, and any other number " "if an error occurred. One output parameter is defined, " "CanNotApplystring, which is an array that lists the keys of " "the ManagedSystemElements to which the Setting was NOT able " "to be applied. This output parameter has meaning only when " "the ContinueOnError parameter is TRUE. \n" "In a subclass, the set of possible return codes could be " "specified, using a ValueMap qualifier on the method. The " "strings to which the ValueMap contents are 'translated' may " "also be specified in the subclass as a Values array " "qualifier. \n" "Note: if an error occurs in applying the Setting to a " "ManagedSystemElement in the Collection, the Element must be " "configured as when the 'Apply' attempt began. That is, the " "Element should NOT be left in an indeterminate state.")] uint32 ApplyToCollection( [IN, Description ( "The Collection of Managed SystemElements to be applied.")] CIM_CollectionOfMSEs REF Collection, [IN, Description ( "TimeToApply can be either a specific time or a time " "interval.")] datetime TimeToApply, [IN, Description ( "TRUE means to continue processing on encountering an " "error.")] boolean ContinueOnError, [IN, Description ( "The required completion time for the method.")] datetime MustBeCompletedBy, [IN ( false ), OUT, Description ( "A string array that lists the keys of the " "ManagedSystemElements to which the Setting was NOT be " "applied.")] string CanNotApply[]); [Description ( "The VerifyOKToApplyIncrementalChangeToMSE method is used to " "verify that a subset of the properties in this Setting can " "be 'applied' to the referenced Managed SystemElement, at " "the given time or time interval. This method takes four " "input parameters: MSE (the Managed SystemElement that is " "being verified), TimeToApply (which, being a datetime, can " "be either a specific time or a time interval), " "MustBeCompletedBy (which indicates the required completion " "time for the method), and a PropertiesToApply array (which " "contains a list of the property names whose values will be " "verified.) If the array is null, empty or contains the " "string \"ALL\" as a property name, then all Settings " "properties shall be verified. If it is set to \"NONE\", " "then no Settings properties will be verified. The return " "value should be 0 if it is OK to apply the Setting, 1 if " "the method is not supported, 2 if the Setting cannot be " "applied within the specified times, and any other number if " "an error occurred. In a subclass, the set of possible " "return codes could be specified, using a ValueMap qualifier " "on the method. The strings to which the ValueMap contents " "are 'translated' may also be specified in the subclass as a " "Values array qualifier.")] uint32 VerifyOKToApplyIncrementalChangeToMSE( [IN, Description ( "The ManagedSystem Element for which the Setting is being " "verified.")] CIM_ManagedSystemElement REF MSE, [IN, Description ( "TimeToApply can be either a specific time or a time " "interval.")] datetime TimeToApply, [IN, Description ( "The required completion time for the method.")] datetime MustBeCompletedBy, [IN, Description ( "A list of the property names whose values will be " "verified.")] string PropertiesToApply[]); [Description ( "The ApplyIncrementalChangeToMSE method performs the actual " "application of a subset of the properties in the Setting to " "the referenced ManagedSystemElement. It takes four input " "parameters: MSE (the ManagedSystem Element to which the " "Setting is being applied), TimeToApply (which, being a " "datetime, can be either a specific time or a time " "interval), MustBeCompletedBy (which indicates the required " "completion time for the method), and a PropertiesToApply " "array (which contains a list of the property names whose " "values will be applied.) If a property is not in this list, " "it will be ignored by the Apply. If the array is null, " "empty or contains the string \"ALL\" as a property name, " "then all Settings properties shall be applied. If it is set " "to \"NONE\", then no Settings properties will be applied. \n" "Note that the semantics of this method are that individual " "Settings are either wholly applied or not applied at all to " "their target ManagedSystemElement. The return value should " "be 0 if the Setting is successfully applied to the " "referenced ManagedSystemElement, 1 if the method is not " "supported, 2 if the Setting was not applied within the " "specified times, and any other number if an error occurred. " "In a subclass, the set of possible return codes could be " "specified, using a ValueMap qualifier on the method. The " "strings to which the ValueMap contents are 'translated' may " "also be specified in the subclass as a Values array " "qualifier. \n" "Note: If an error occurs in applying the Setting to a " "ManagedSystemElement, the Element must be configured as " "when the 'Apply' attempt began. That is, the Element should " "NOT be left in an indeterminate state.")] uint32 ApplyIncrementalChangeToMSE( [IN, Description ( "The ManagedSystem Element to which the Setting is being " "applied.")] CIM_ManagedSystemElement REF MSE, [IN, Description ( "TimeToApply can be either a specific time or a time " "interval.")] datetime TimeToApply, [IN, Description ( "The required completion time for the method.")] datetime MustBeCompletedBy, [IN, Description ( "A list of the property names whose values will be " "applied.")] string PropertiesToApply[]); [Description ( "The VerifyOKToApplyIncrementalChangeToCollection method is " "used to verify that a subset of the properties in this " "Setting can be 'applied' to the referenced Collection of " "ManagedSystemElements, at the given time or time interval, " "without causing adverse effects to either the Collection " "itself or its surrounding environment. The net effect is to " "execute the VerifyOKToApplyIncrementalChangeToMSE method " "against each of the Elements aggregated by the Collection. " "This method takes three input parameters: Collection (the " "Collection of Managed SystemElements that is being " "verified), TimeToApply (which, being a datetime, can be " "either a specific time or a time interval), " "MustBeCompletedBy (which indicates the required completion " "time for the method), and a PropertiesToApply array (which " "contains a list of the property names whose values will be " "verified. If they array is null or empty or constains the " "string \"all\" as a property name then all Settings " "properties shall be verified. If it is set to \"none\" then " "no Settings properties will be verified). The return value " "should be 0 if it is OK to apply the Setting, 1 if the " "method is not supported, 2 if the Setting cannot be applied " "within the specified times, and any other number if an " "error occurred. One output parameter is defined - " "CanNotApply - which is a string array that lists the keys " "of the ManagedSystemElements to which the Setting can NOT " "be applied. This enables those Elements to be revisited and " "either fixed, or other corrective action taken. \n" "In a subclass, the set of possible return codes could be " "specified, using a ValueMap qualifier on the method. The " "strings to which the ValueMap contents are 'translated' may " "also be specified in the subclass as a Values array " "qualifier.")] uint32 VerifyOKToApplyIncrementalChangeToCollection ( [IN, Description ( "The Collection of Managed SystemElements for which the " "setting is being verified.")] CIM_CollectionOfMSEs REF Collection, [IN, Description ( "TimeToApply can be either a specific time or a time " "interval.")] datetime TimeToApply, [IN, Description ( "The required completion time for the method.")] datetime MustBeCompletedBy, [IN, Description ( "A list of the property names whose values will be " "verified.")] string PropertiesToApply[], [IN ( false ), OUT, Description ( "A string array that lists the keys of the " "ManagedSystemElements to which the Setting can NOT be " "applied.")] string CanNotApply[]); [Description ( "The ApplyIncrementalChangeToCollection method performs the " "application of a subset of the properties in this Setting " "to the referenced Collection of ManagedSystem Elements. The " "net effect is to execute the ApplyIncrementalChangeToMSE " "method against each of the Elements aggregated by the " "Collection. If the input value ContinueOnError is FALSE, " "this method applies the Setting to all Elements in the " "Collection until it encounters an error, in which case it " "stops execution, logs the key of the Element that caused " "the error in the CanNotApply array, and issues a return " "code of 2. If the input value ContinueOnError is TRUE, then " "this method applies the Setting to all the " "ManagedSystemElements in the Collection, and reports the " "failed Elements in the array, CanNotApply. For the latter, " "processing will continue until the method is applied to all " "Elements in the Collection, regardless of any errors " "encountered. The key of each ManagedSystemElement to which " "the Setting could not be applied is logged into the " "CanNotApply array. This method takes four input parameters: " "Collection (the Collection of Elements to which the Setting " "is being applied), TimeToApply (which, being a datetime, " "can be either a specific time or a time interval), " "ContinueOnError (TRUE means to continue processing on " "encountering an error), and MustBeCompletedBy (which " "indicates the required completion time for the method), and " "a PropertiesToApply array (which contains a list of the " "property names whose values will be applied.) If a property " "is not in this list, it will be ignored by the Apply. If " "the array is null or empty or contains the string \"ALL\" " "as a property name, then all Settings properties shall be " "applied. If it is set to \"NONE\", then no Settings " "properties will be applied. \n" "The return value should be 0 if the Setting is successfully " "applied to the referenced Collection, 1 if the method is " "not supported, 2 if the Setting was not applied within the " "specified time, 3 if the Setting cannot be applied using " "the input value for ContinueOnError, and any other number " "if an error occurred. One output parameter is defined, " "CanNotApplystring, which is an array that lists the keys of " "the ManagedSystemElements to which the Setting was NOT able " "to be applied. This output parameter has meaning only when " "the ContinueOnError parameter is TRUE. \n" "In a subclass, the set of possible return codes could be " "specified, using a ValueMap qualifier on the method. The " "strings to which the ValueMap contents are 'translated' may " "also be specified in the subclass as a Values array " "qualifier. \n" "Note: if an error occurs in applying the Setting to a " "ManagedSystemElement in the Collection, the Element must be " "configured as when the 'Apply' attempt began. That is, the " "Element should NOT be left in an indeterminate state.")] uint32 ApplyIncrementalChangeToCollection( [IN, Description ( "The Collection of Elements to which the Setting is being " "applied.")] CIM_CollectionOfMSEs REF Collection, [IN, Description ( "A specific time or a time interval.")] datetime TimeToApply, [IN, Description ( "TRUE means to continue processing on encountering an " "error.")] boolean ContinueOnError, [IN, Description ( "This parameter indicates the required completion time " "for the method.")] datetime MustBeCompletedBy, [IN, Description ( "A list of the property names whose values will be " "verified.")] string PropertiesToApply[], [IN ( false ), OUT, Description ( "A string array that lists the keys of the " "ManagedSystemElements to which the Setting can NOT be " "applied.")] string CanNotApply[]); }; // =================================================================== // ElementSetting // =================================================================== [Association, Version ( "2.6.0" ), Description ( "ElementSetting represents the association between Managed " "SystemElements and the Setting class(es) defined for them.")] class CIM_ElementSetting { [Key, Description ( "The ManagedSystemElement.")] CIM_ManagedSystemElement REF Element; [Key, Description ( "The Setting object associated with the ManagedSystem " "Element.")] CIM_Setting REF Setting; }; // =================================================================== // DefaultSetting // =================================================================== [Association, Version ( "2.6.0" ), Description ( "DefaultSetting represents the association between a Managed " "SystemElement and the single Setting class that is defined to " "be the default setting for this Element.")] class CIM_DefaultSetting : CIM_ElementSetting { [Override ( "Setting" ), Max ( 1 ), Description ( "The Setting object which is the default.")] CIM_Setting REF Setting; }; // ================================================================== // CIM_SystemSetting // ================================================================== [Abstract, Version ( "2.6.0" ), Description ( "CIM_SystemSetting represents the general concept of a " "CIM_Setting which is scoped by/weak to a System.")] class CIM_SystemSetting : CIM_Setting { [Key, Propagated ( "CIM_System.CreationClassName" ), Description ( "The scoping System's CreationClassName."), MaxLen ( 256 )] string SystemCreationClassName; [Key, Propagated ( "CIM_System.Name" ), Description ( "The scoping System's Name."), MaxLen ( 256 )] string SystemName; [Key, 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."), MaxLen ( 256 )] string CreationClassName; [Key, Override ( "SettingID" ), MaxLen ( 256 )] string SettingID; }; // ================================================================== // SettingForSystem // ================================================================== [Association, Version ( "2.8.0" ), Description ( "CIM_SettingForSystem defines a Setting in the context of the " "System on which it resides.")] class CIM_SettingForSystem : CIM_HostedDependency { [Override ( "Antecedent" ), Min ( 1 ), Max ( 1 ), Description ( "The hosting System.")] CIM_System REF Antecedent; [Override ( "Dependent" ), Weak, Description ( "The Setting defined for the System.")] CIM_SystemSetting REF Dependent; }; // =================================================================== // Configuration // =================================================================== [Deprecated { "CIM_SettingData", "CIM_Setting" }, Version ( "2.8.1000" ), Description ( "The Configuration object allows the grouping of sets of " "parameters (defined in Setting objects) and dependencies for " "one or more ManagedSystemElements. It represents a certain " "behavior, or a desired functional state for the ManagedSystem " "Elements. The use of CIM_Configuration is deprecated in favor " "of aggregating instances of Setting or SettingData into " "'higher' level Settings/SettingData objects, using the " "ConcreteComponent association. This simplifies the use of " "Settings/SettingData. With Configurations serving as " "aggregations of Settings (as defined by the Configuration " "Component relationship), separate associations were needed for " "the aggregation and to tie an element to either its " "Configurations or Settings/SettingData. This introduced " "unnecessary complexity and redundancy into the model. \n" "The desired functional state of the Configuration is typically " "driven by external requirements such as time or location. For " "example, to connect to a Mail System from 'home', a dependency " "on a modem exists, but a dependency on a network adapter " "exists at 'work'. Settings for the pertinent LogicalDevices " "(in this example, POTSModem and NetworkAdapter) can be defined " "and aggregated by the Configuration. Therefore, two 'Connect " "to Mail' Configurations may be defined grouping the relevant " "dependencies and Setting objects.")] class CIM_Configuration : CIM_ManagedElement { [Deprecated { "CIM_SettingData.InstanceID", "CIM_Setting.SettingID" }, Key, Description ( "The label by which the Configuration object is known."), MaxLen ( 256 )] string Name; }; // =================================================================== // ConfigurationComponent // =================================================================== [Association, Deprecated { "CIM_ConcreteComponent" }, Aggregation, Version ( "2.8.1000" ), Description ( "ConfigurationComponent aggregates 'lower-level' Configuration " "objects into a 'high-level' Configuration. This enables the " "assembly of complex Configurations by grouping together " "simpler ones. For example, a logon policy for the United " "States could consist of two Configuration groups, one for the " "east coast and one for the west coast. Each of these could in " "turn consist of multiple Configurations to handle different " "aspects of the logon process. \n" "\n" "The Configuration class is being deprecated in lieu of using a " "ConcreteComponent relationship to indicate a hierarchy of " "instances of Setting/SettingData.")] class CIM_ConfigurationComponent { [Deprecated { "CIM_ConcreteComponent.GroupComponent" }, Key, Aggregate, Description ( "The Configuration that aggregates additional " "Configurations.")] CIM_Configuration REF ConfigGroup; [Deprecated { "CIM_ConcreteComponent.PartComponent" }, Key, Description ( "A Configuration that is part of a 'higher-level' " "Configuration.")] CIM_Configuration REF ConfigComponent; }; // =================================================================== // ElementConfiguration // =================================================================== [Association, Deprecated { "CIM_ElementSettingData", "CIM_ElementSetting" }, Version ( "2.8.1000" ), Description ( "This association relates a Configuration object to one or more " "ManagedSystemElements. The Configuration object represents a " "certain behavior, or a desired functional state for the " "associated ManagedSystemElements. \n" "\n" "The Configuration class is being deprecated in lieu of using a " "ConcreteComponent relationship to indicate a hierarchy of " "Setting/SettingData instances. This allows the re-use of the " "element to Setting/SettingData associations, instead of " "defining a peer association specifically for Configurations.")] class CIM_ElementConfiguration { [Deprecated { "CIM_ElementSettingData.ManagedElement", "CIM_ElementSetting.Element" }, Key, Description ( "The ManagedSystemElement.")] CIM_ManagedSystemElement REF Element; [Deprecated { "CIM_ElementSettingData.SettingData", "CIM_ElementSetting.Setting" }, Key, Description ( "The Configuration object that groups the Settings and " "dependencies associated with the ManagedSystemElement.")] CIM_Configuration REF Configuration; }; // =================================================================== // CollectionConfiguration // =================================================================== [Association, Deprecated { "CIM_ElementSettingData", "CIM_CollectionSetting" }, Version ( "2.8.1000" ), Description ( "This association relates a Configuration object to one or more " "CollectionOfMSEs objects. The Configuration object represents " "a certain behavior, or a desired functional state for the " "associated Collection. \n" "\n" "The Configuration class is being deprecated in lieu of using a " "ConcreteComponent relationship to indicate a hierarchy of " "instances of Setting/SettingData. This allows the re-use of " "the collection to Setting and element to SettingData " "associations, instead of defining peer associations " "specifically for Configurations.")] class CIM_CollectionConfiguration { [Deprecated { "CIM_ElementSettingData.ManagedElement", "CIM_CollectionSetting.Collection" }, Key, Description ( "The CollectionOfMSEs.")] CIM_CollectionOfMSEs REF Collection; [Deprecated { "CIM_ElementSettingData.SettingData", "CIM_CollectionSetting.Setting" }, Key, Description ( "The Configuration object that groups the Settings and " "dependencies associated with the Collection.")] CIM_Configuration REF Configuration; }; // =================================================================== // DependencyContext // =================================================================== [Association, Deprecated { "No value" }, Aggregation, Version ( "2.8.1000" ), Description ( "This relationship associates a Dependency with one or more " "Configuration objects. For example, a ComputerSystem's " "dependencies could change based on the site/network to which " "the System is attached. \n" "\n" "The Configuration class is being deprecated in lieu of using a " "ConcreteComponent relationship to indicate a hierarchy of " "Setting/SettingData instances. Therefore, this association is " "also deprecated - but is deprecated to 'No value' since there " "are no equivalent relationships currently defined for the " "Setting or SettingData classes. This association is an anomaly " "because it defines what cannot be expressed for the components " "of the Configuration. Also, it singles out the Dependency " "association as opposed to allowing any relationships to be " "defined as 'settings'. Its use in the industry is discouraged.")] class CIM_DependencyContext { [Deprecated { "No value" }, Key, Aggregate, Description ( "The Configuration object that aggregates the Dependency.")] CIM_Configuration REF Context; [Deprecated { "No value" }, Key, Description ( "An aggregated Dependency.")] CIM_Dependency REF Dependency; }; // =================================================================== // SettingContext // =================================================================== [Association, Deprecated { "CIM_ConcreteComponent" }, Aggregation, Version ( "2.8.1000" ), Description ( "This relationship associates Configuration objects with " "Setting objects. For example, a NetworkAdapter's Settings " "could change based on the site/network to which its hosting " "ComputerSystem is attached. In this case, the ComputerSystem " "would have two different Configuration objects, corresponding " "to the differences in network configuration for the two " "network segments. Configuration A would aggregate a Setting " "object for the NetworkAdapter when operating on segment " "\"ANet\", whereas Configuration B would aggregate a different " "NetworkAdapter Setting object, specific to segment \"BNet\". " "Note that many Settings of the computer are independent of the " "network Configuration. For example, both Configurations A and " "B would aggregate the same Setting object for the " "ComputerSystem's MonitorResolution. \n" "\n" "The Configuration class is being deprecated in lieu of using a " "ConcreteComponent relationship to indicate a hierarchy of " "instances of Setting/SettingData. Therefore, the aggregation " "of Settings into Configurations is replaced by the Concrete " "Component relationship between instances of Settings and " "SettingData.")] class CIM_SettingContext { [Deprecated { "CIM_ConcreteComponent.GroupComponent" }, Key, Aggregate, Description ( "The Configuration object that aggregates the Setting.")] CIM_Configuration REF Context; [Deprecated { "CIM_ConcreteComponent.PartComponent" }, Key, Description ( "An aggregated Setting.")] CIM_Setting REF Setting; }; // =================================================================== // CollectionSetting // =================================================================== [Association, Version ( "2.6.0" ), Description ( "CollectionSetting represents the association between a " "CollectionOfMSEs class and the Setting class(es) defined for " "them.")] class CIM_CollectionSetting { [Key, Description ( "The CollectionOfMSEs.")] CIM_CollectionOfMSEs REF Collection; [Key, Description ( "The Setting object associated with the Collection.")] CIM_Setting REF Setting; }; // ================================================================== // SystemConfiguration // ================================================================== [Deprecated { "CIM_ScopedSettingData", "CIM_SystemSetting" }, Version ( "2.8.1000" ), Description ( "CIM_SystemConfiguration represents the general concept of a " "CIM_Configuration which is scoped by/weak to a System. This " "class is a peer of CIM_Configuration since the key structure " "of Configuration is currently defined and cannot be modified " "with additional properties. \n" "Similar to the deprecation of CIM_Configuration, this peer " "class is also deprecated in favor of aggregating instances of " "Setting or SettingData into 'higher' level Settings/ " "SettingData objects, using the ConcreteComponent association.")] class CIM_SystemConfiguration : CIM_ManagedElement { [Deprecated { "CIM_SystemSetting.SystemCreationClassName" }, Key, Propagated ( "CIM_System.CreationClassName" ), Description ( "The scoping System's CreationClassName."), MaxLen ( 256 )] string SystemCreationClassName; [Deprecated { "CIM_SystemSetting.SystemName" }, Key, Propagated ( "CIM_System.Name" ), Description ( "The scoping System's Name."), MaxLen ( 256 )] string SystemName; [Deprecated { "CIM_SystemSetting.CreationClassName" }, Key, 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."), MaxLen ( 256 )] string CreationClassName; [Deprecated { "CIM_ScopedSettingData.InstanceID", "CIM_SystemSetting.SettingID" }, Key, Description ( "The label by which the Configuration object is known."), MaxLen ( 256 )] string Name; }; // ================================================================== // ConfigurationForSystem // ================================================================== [Association, Deprecated { "CIM_ScopedSetting", "CIM_SettingForSystem" }, Version ( "2.8.1000" ), Description ( "CIM_ConfigurationForSystem defines a Configuration in the " "context of the System on which it resides. Since the " "Configuration class is deprecated, this association is " "similarly deprecated.")] class CIM_ConfigurationForSystem : CIM_HostedDependency { [Deprecated { "CIM_ScopedSetting.Antecedent", "CIM_SettingForSystem.Antecedent" }, Override ( "Antecedent" ), Min ( 1 ), Max ( 1 ), Description ( "The hosting System.")] CIM_System REF Antecedent; [Deprecated { "CIM_ScopedSetting.Dependent", "CIM_SettingForSystem.Dependent" }, Override ( "Dependent" ), Weak, Description ( "The Configuration defined for the System.")] CIM_SystemConfiguration REF Dependent; }; // ================================================================== // SystemSettingContext // ================================================================== [Association, Deprecated { "CIM_ConcreteComponent" }, Aggregation, Version ( "2.8.1000" ), Description ( "This relationship associates System-specific Configuration " "objects with System-specific Setting objects, similar to the " "SettingContext association. \n" "\n" "The Configuration and SystemConfiguration classes are " "deprecated in lieu of using a ConcreteComponent relationship " "to indicate a hierarchy of Settings/SettingData instances. " "Therefore, the aggregation of SystemSettings into System " "Configurations is replaced by the ConcreteComponent " "relationship between instances of Settings and SettingData.")] class CIM_SystemSettingContext { [Deprecated { "CIM_ConcreteComponent.GroupComponent" }, Key, Aggregate, Description ( "The Configuration object that aggregates the Setting.")] CIM_SystemConfiguration REF Context; [Deprecated { "CIM_ConcreteComponent.PartComponent" }, Key, Description ( "An aggregated Setting.")] CIM_SystemSetting REF Setting; }; // ================================================================== // ConfigurationData // ================================================================== [Experimental, Version ( "2.8.1000" ), Description ( "Captures an element's configuration information as an octet " "string (i.e., a 'blob'). The configuration data is " "element-specific and generalizes (for any element) the " "semantically similar 'Save/RestoreProperties' methods " "currently defined as part of the LogicalDevice class. \n" "\n" "Various types of configurations MAY be instantiated for an " "element - a currently running config, a startup config, and/or " "other 'possible' configurations. The configuration's type is " "specified in the association of the instance to a " "ManagedElement, using the properties of the ElementSettingData " "association: \n" "- When the configuration is currently running, then the " "association's IsCurrent boolean is TRUE. \n" "- When the configuration is the initial/startup config, then " "the association's IsDefault boolean is TRUE. \n" "- If the IsCurrent and IsDefault booleans are FALSE, then the " "configuration is assumed to be a 'possible' config " "(configuration workspace) for the element. \n" "\n" "Note that this class only has an 'apply' method with no " "corresponding 'extract'. This is because an application/client " "can query for and enumerate any existing configurations using " "existing CIM Operations. It is the responsibility of the " "client to reuse/reapply the configurations that are returned " "by such a request - since the configuration data itself is " "opaque and element-specific. \n" "\n" "Note that there exists at most one 'running' configuration, at " "any time. And, this may be the only configuration reported by " "an element. However, elements MAY also have one 'startup' " "configuration and MAY have multiple 'possible'/workspace " "configurations. The configurations MAY be identical. For " "example, if a 'possible' configuration is applied to an " "element (and therefore made the 'running/current' " "configuration), then the two configs would be identical upon a " "subsequent query or enumerate instances request.")] class CIM_ConfigurationData : CIM_SettingData { [Required, Description ( "The configuration information stored as an octet string."), OctetString] uint8 ConfigurationInformation[]; [Required, Description ( "The datetime when the configuration information was " "obtained.")] datetime ConfigurationTimestamp; [Description ( "This method processes the configuration data for an " "element. In this case, the data in the instance's " "ConfigurationInformation property is validated for the " "specified element (if the ValidateOnly parameter is TRUE), " "or actually set as a configuration on the element. If the " "method is successful, then the appropriate " "ElementSettingData associations are created or modified. " "Note that it is not necessary for the element to be " "associated with the ConfigurationData instance at the time " "that this method is called."), ValueMap { "0", "1", "2", "3", "4", "5", "6..15999", "16000", "16001", "16002", "16003", "16004", "16005", "16006..32767", "32768..65535" }, Values { "Success", "Not Supported", "Unknown", "Timeout", "Failed", "Invalid Parameter", "DMTF Reserved", "Validate Only Request Not Supported", "Configuration Data Would Not Validate", "Element Does Not Support Initial/Default Configs", "Element Does Not Support Possible Configs/Config " "Workspaces", "Element Does Not Support Setting of the Running/Current " "Config", "Element Would Not Accept Configuration", "Method Reserved", "Vendor Specific" }] uint32 ApplyConfiguration ( [IN, Description ( "Indicates that the request is to validate the format and " "syntax of the configuration data, but not apply it to " "the referenced ManagedElement.")] boolean ValidateOnly, [IN, Description ( "The type of configuration information, indicating " "whether the ConfigurationInformation property holds an " "initial/default configuration, a running/current " "configuration, or a configuration for a 'temporary'/ " "possible workspace. This information affects the values " "of the IsDefault and IsCurrent properties of the " "association, ElementSettingData."), ValueMap { "2", "3", "4" }, Values { "Running/Current Configuration", "Initial/Default Configuration", "Possible Configuration/Config Workspace" }] uint16 TypeOfConfiguration, [Required, IN, Description ( "A reference to the ManagedElement whose configuration " "data is validated or applied. This reference is " "necessary since a configuration could apply to multiple " "elements simultaneously, but this processing request is " "more restrictive.")] CIM_ManagedElement REF ManagedElement); }; // =================================================================== // CIM_TimeZoneSettingData // =================================================================== [Experimental, Version ( "2.8.1000" ), Description ( "The TimeZone class is a set of properties defining a " "particular time zone. These properties include the concept of " "daylight saving time. \n" "If time zone is implemented, then there MUST be a current " "zone, as indicated using the IsCurrent property of the " "inherited ElementSettingData association. This class allows an " "application/client to pick the time zone that will be used for " "any related ManagedElements. The latter are defined by the " "Element SettingData association, based on the association's " "IsCurrent/ IsDefault properties. There SHOULD be an instance " "of TimeZoneSettingData for each zone supported by an element. " "\n\n" "If this class is implemented, then TimeService MUST also be " "implemented and available for a particular ManagedElement. " "Both together define the date and time. If the " "ElementSettingData instance associating the ManagedElement has " "the IsCurrent property set to TRUE, then the TimeData " "parameter returned by the ManageTime method MUST reflect this " "zone when time data is requested.")] class CIM_TimeZoneSettingData : CIM_SettingData { [Description ( "Full name of the 'standard' time zone (e.g., \"U.S. Eastern " "Standard Time\"), suitable for presentation to the user in " "the default locale.")] string StandardName; [Description ( "Short name of the 'standard' time zone (e.g., \"EST\"), " "suitable for presentation to the user in the default " "locale. Note that a specific StandardCaption property is " "defined, instead of using the inherited Caption. This is " "done to force consistent property naming for the " "StandardXXX and DaylightXXX properties.")] string StandardCaption; [Description ( "The number of minutes by which this 'standard' time differs " "from UTC. For example, U.S. EST differs from UTC by -5.0 " "hours or -300 minutes, whereas Australia Adelaide Standard " "Time differs by 9.5 hours or 570 minutes."), Units ( "Minutes" )] sint32 StandardOffset; [Description ( "The month in which daylight saving time ends (and " "'standard' time begins). Specify 0 for January, 1 for " "February, and so on."), ValueMap { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11" }, Values { "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December" }] uint8 StandardMonth; [Description ( "There are two different interpretations for this property, " "depending on the value of StandardDayOfWeek. In one case, " "StandardDay defines the day-in-month on which daylight " "saving time ends. This interpretation is used when the " "StandardDayOfWeek is 0. A positive or negative integer is " "specified to indicate whether the StandardDay is calculated " "from the beginning or the end of the month. For example, 5 " "indicates the fifth day in the StandardMonth and -1 " "indicates the last day in the StandardMonth. \n" "\n" "When StandardDayOfWeek is not 0, StandardDay is the day- " "in-month on which daylight saving time ends, defined in " "conjunction with StandardDayOfWeek. For example, if " "StandardDay is 15 and StandardDayOfWeek is Saturday, then " "daylight saving time ends on the first Saturday on or after " "the 15th day in the StandardMonth (i.e., the third Saturday " "in the month). If StandardDay is 20 and StandardDayOfWeek " "is -Saturday, then this indicates the first Saturday on or " "before the 20th day in the StandardMonth. If StandardDay is " "-1 and StandardDayOfWeek is -Sunday, then this indicates " "the last Sunday in the StandardMonth."), MinValue ( -31 ), MaxValue ( 31 )] sint8 StandardDay; [Description ( "Positive or negative integer used in conjunction with " "StandardDay to indicate the day of the week on which " "daylight saving time ends (and 'standard' time begins). " "StandardDayOfWeek is set to 0 to indicate an exact day of " "the month, such as March 1. A positive integer " "(representing Sunday, Monday, ..., Saturday) means that the " "day of week is found on or after the specified StandardDay. " "A negative integer (representing -Sunday, -Monday, ..., " "-Saturday) means that the day of week is found on or before " "the StandardDay."), ValueMap { "-7", "-6", "-5", "-4", "-3", "-2", "-1", "0", "1", "2", "3", "4", "5", "6", "7" }, Values { "-Saturday", "-Friday", "-Thursday", "-Wednesday", "-Tuesday", "-Monday", "-Sunday", "ExactDayOfMonth", "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" }] sint8 StandardDayOfWeek; [Description ( "The time interval after midnight when daylight saving time " "ends. For example, \n" "00000000020000.000000:000 \n" "indicates that daylight saving time ends at two o'clock, " "local time (usually, daylight saving time).")] datetime StandardStartInterval; [Description ( "Full name of the 'daylight' time zone (e.g., \"U.S. Eastern " "Daylight Saving Time\"), suitable for presentation to the " "user in the default locale.")] string DaylightName; [Description ( "Short name of the 'daylight' time zone (e.g., \"EDT\"), " "suitable for presentation to the user in the default " "locale. Note that a specific DaylightCaption property is " "defined, instead of using the inherited Caption. This is " "done to force consistent property naming for the " "StandardXXX and DaylightXXX properties.")] string DaylightCaption; [Description ( "The number of minutes by which this daylight saving time " "differs from UTC. For example, U.S. EDT differs from UTC by " "-4.0 hours or -240 minutes, whereas Australia Adelaide " "Daylight Time differs by 10.5 hours or 630 minutes."), Units ( "Minutes" )] sint32 DaylightOffset; [Description ( "The month in which daylight saving time starts. Specify 0 " "for January, 1 for February, and so on."), ValueMap { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11" }, Values { "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December" }] uint8 DaylightMonth; [Description ( "There are two different interpretations for this property, " "depending on the value of DaylightDayOfWeek. In one case, " "DaylightDay defines the day-in-month on which daylight " "saving time starts. This interpretation is used when the " "DaylightDayOfWeek is 0. A positive or negative integer is " "specified to indicate whether the DaylightDay is calculated " "from the beginning or the end of the month. For example, 5 " "indicates the fifth day in the DaylightMonth and -1 " "indicates the last day in the DaylightMonth. \n" "\n" "When DaylightDayOfWeek is not 0, DaylightDay is the day- " "in-month on which daylight saving time starts, defined in " "conjunction with DaylightDayOfWeek. For example, if " "DaylightDay is 15 and DaylightDayOfWeek is Saturday, then " "daylight saving time starts on the first Saturday on or " "after the 15th day in the DaylightMonth (i.e., the third " "Saturday in the month). If DaylightDay is 20 and " "DaylightDayOfWeek is -Saturday, then this indicates the " "first Saturday on or before the 20th day in the " "DaylightMonth. If DaylightDay is -1 and DaylightDayOfWeek " "is -Sunday, then this indicates the last Sunday in the " "month."), MinValue ( -31 ), MaxValue ( 31 )] sint8 DaylightDay; [Description ( "Positive or negative integer used in conjunction with " "DaylightDay to indicate the day of the week on which " "daylight saving time starts. Set DaylightDayOfWeek to 0 to " "indicate an exact day of month, such as March 1. Positive " "integer (Sunday, Monday, ..., Saturday) means that the day " "of week is found on or after DaylightDay. Negative integer " "(-Sunday, -Monday, ..., -Saturday) means that the day of " "week is found on or before DaylightDay."), ValueMap { "-7", "-6", "-5", "-4", "-3", "-2", "-1", "0", "1", "2", "3", "4", "5", "6", "7" }, Values { "-Saturday", "-Friday", "-Thursday", "-Wednesday", "-Tuesday", "-Monday", "-Sunday", "ExactDayOfMonth", "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" }] sint8 DaylightDayOfWeek; [Description ( "The time interval after midnight when daylight saving time " "starts. For example, \n" "00000000020000.000000:000 \n" "indicates that daylight saving time starts at two o'clock, " "local time (usually, standard time).")] datetime DaylightStartInterval; }; // =================================================================== // end of file // ===================================================================