<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:cim="http://schemas.dmtf.org/wbem/wscim/1/common" xmlns:class="http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_StoragePoolDiagnosticSettingData" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" elementFormDefault="qualified" targetNamespace="http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_StoragePoolDiagnosticSettingData">
<xs:import namespace="http://schemas.dmtf.org/wbem/wscim/1/common" schemaLocation="http://schemas.dmtf.org/wbem/wscim/1/common.xsd"/>
<xs:element name="Depth" nillable="true" type="cim:cimUnsignedShort">
<xs:annotation>
<xs:appinfo source="http://schemas.dmtf.org/wbem/wscim/1/common">
<cim:Qualifier name="Description" type="cim:cimString">This property is used by a client to identify the depth of search for related components. The depth refers to the levels of indirection to reach a related element. If the test does not support the Depths setting, then this should be NULL. The possible non-values for depth include:
* 0 - only test the pool
* 1 - test one level removed from the pool
* 2 - test two levels removed from the pool
* 65535 - test all levels removed from the pool.</cim:Qualifier>
<cim:Classorigin name="CIM_StoragePoolDiagnosticSettingData"/>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element name="HaltOnError" nillable="true" type="cim:cimBoolean">
<xs:annotation>
<xs:appinfo source="http://schemas.dmtf.org/wbem/wscim/1/common">
<cim:Qualifier name="Description" type="cim:cimString">When this flag is true, the test will halt after finding the first error.</cim:Qualifier>
<cim:Classorigin name="CIM_DiagnosticSettingData"/>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element name="QuickMode" nillable="true" type="cim:cimBoolean">
<xs:annotation>
<xs:appinfo source="http://schemas.dmtf.org/wbem/wscim/1/common">
<cim:Qualifier name="Description" type="cim:cimString">When this flag is true, the test software should attempt to run in an accelerated fashion either by reducing the coverage or number of tests performed.</cim:Qualifier>
<cim:Classorigin name="CIM_DiagnosticSettingData"/>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element name="PercentOfTestCoverage" nillable="true">
<xs:annotation>
<xs:appinfo source="http://schemas.dmtf.org/wbem/wscim/1/common">
<cim:Qualifier name="Description" type="cim:cimString">Requests the diagnostic software to reduce test coverage to the specified percentage. For example, a hard drive scan test could be asked to run at 50%. The most effective way to accomplish this is for the test software to scan every other track, as opposed to only scanning the first half of a drive. It is assumed that the effectiveness of the test is impacted proportional to the percentage of testing requested. Permissible values for this property range from 0 to 100.</cim:Qualifier>
<cim:Qualifier name="Units" type="cim:cimString">Percent</cim:Qualifier>
<cim:Qualifier name="MinValue" type="cim:cimLong">0</cim:Qualifier>
<cim:Qualifier name="MaxValue" type="cim:cimLong">100</cim:Qualifier>
<cim:Qualifier name="ModelCorrespondence" type="cim:cimString">CIM_DiagnosticServiceCapabilities.SupportedServiceModes</cim:Qualifier>
<cim:Qualifier name="PUnit" type="cim:cimString">percent</cim:Qualifier>
<cim:Classorigin name="CIM_DiagnosticSettingData"/>
</xs:appinfo>
</xs:annotation>
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="cim:cimUnsignedByte">
<xs:maxInclusive value="100"/>
<xs:minInclusive value="0"/>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="LoopControlParameter" nillable="true" type="cim:cimString">
<xs:annotation>
<xs:appinfo source="http://schemas.dmtf.org/wbem/wscim/1/common">
<cim:Qualifier name="Description" type="cim:cimString">Array entries contain parameters corresponding to entries in the LoopControl array, limiting the number of times a test should be repeated with a single invocation of a test method by a CIM client.</cim:Qualifier>
<cim:Qualifier name="ArrayType" type="cim:cimString">Indexed</cim:Qualifier>
<cim:Qualifier name="ModelCorrespondence" type="cim:cimString">CIM_DiagnosticSettingData.LoopControl</cim:Qualifier>
<cim:Classorigin name="CIM_DiagnosticSettingData"/>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element name="LoopControl" nillable="true">
<xs:annotation>
<xs:appinfo source="http://schemas.dmtf.org/wbem/wscim/1/common">
<cim:Qualifier name="Description" type="cim:cimString">LoopControl, used in conjunction with LoopControlParameter, sets one or more loop control mechanisms that limits the number of times a test should be repeated with a single invocation of a test method by a CIM client. There is an array-positional correspondence between LoopControl entries &amp; LoopControlParameter entries. The entries in these coupled arrays of loop controls can be used in a logical OR fashion to achieve the desired loop control. For example, if a client wants to loop a test 1000 times, but quit if a timer runs out, it could set both controls into the LoopControl array as two separate entries in each array. The looping test will terminate when the first of the two Ored conditions are met. 
The descriptions for each loop control are given below: 
Unknown (0) 
Other (1) : Additional detail may be found in OtherLoopControlDescriptions. 
Continuous (2) : The corresponding LoopControl Parameter is ignored and the test will execute continuously. Tests that use this control should also support DiscontinueTest. 
Count(3) : The corresponding LoopControlParameter is interpreted as a loop count (uint32), indicating the number of times the test should be repeated with a single invocation of a test method by a CIM client. 
Timer (= 4) : The corresponding LoopControlParameter is interpreted as an initial value (uint32) for a test loop timer, given in seconds. The looping is terminated when this timer has lapsed. 
ErrorCount (= 5) : The corresponding LoopControl Parameter is interpreted as an error count (uint32). The loop will continue until the number of errors that have occurred exceeds the ErrorCount. Note: the ErrorCount only refers to hard test errors; it does not include soft errors or warnings.</cim:Qualifier>
<cim:Qualifier name="ArrayType" type="cim:cimString">Indexed</cim:Qualifier>
<cim:Qualifier name="ModelCorrespondence" type="cim:cimString">CIM_DiagnosticSettingData.LoopControlParameter</cim:Qualifier>
<cim:Qualifier name="ModelCorrespondence" type="cim:cimString">CIM_DiagnosticSettingData.OtherLoopControlDescriptions</cim:Qualifier>
<cim:Qualifier name="ModelCorrespondence" type="cim:cimString">CIM_DiagnosticServiceCapabilities.SupportedLoopControl</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="0">Unknown</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="1">Other</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="2">Continuous</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="3">Count</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="4">Timer</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="5">ErrorCount</cim:Qualifier>
<cim:Classorigin name="CIM_DiagnosticSettingData"/>
</xs:appinfo>
</xs:annotation>
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="cim:cimUnsignedShort">
<xs:enumeration value="0"/>
<xs:enumeration value="1"/>
<xs:enumeration value="2"/>
<xs:enumeration value="3"/>
<xs:enumeration value="4"/>
<xs:enumeration value="5"/>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="OtherLoopControlDescriptions" nillable="true" type="cim:cimString">
<xs:annotation>
<xs:appinfo source="http://schemas.dmtf.org/wbem/wscim/1/common">
<cim:Qualifier name="Description" type="cim:cimString">This property provides additional information for LoopControl when the corresponding value is set to 1 ('Other').</cim:Qualifier>
<cim:Qualifier name="ArrayType" type="cim:cimString">Indexed</cim:Qualifier>
<cim:Qualifier name="ModelCorrespondence" type="cim:cimString">CIM_DiagnosticSettingData.LoopControlParameter</cim:Qualifier>
<cim:Qualifier name="ModelCorrespondence" type="cim:cimString">CIM_DiagnosticSettingData.LoopControl</cim:Qualifier>
<cim:Classorigin name="CIM_DiagnosticSettingData"/>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element name="ResultPersistence" nillable="true" type="cim:cimUnsignedInt">
<xs:annotation>
<xs:appinfo source="http://schemas.dmtf.org/wbem/wscim/1/common">
<cim:Qualifier name="Description" type="cim:cimString">The ResultPersistence property is a directive from a diagnostic client to a diagnostic provider. It allows the client to specify to the diagnostic service provider how long to persist the messages that result from execution of a diagnostic service. This applies to instances of DiagnosticResult as well as the preferred use of DiagnosticServiceRecord. The timeout period starts upon completion of the diagnostic action described by the DiagnosticService. 

Here is a summary of the choices and behaviors for different ResultPersistence values: 
0 = "No Persistence": 
Setting the timer to zero tells the provider not to persist the diagnostic result. The diagnostic information is only available while the diagnostic is executing or at its conclusion. 
Value &gt; 0 and &lt; 0xFFFFFFFF = "Persist With TimeOut": 
Setting the ResultPersistenceOption to a integer will cause the DiagnosticResult to be persisted for that number of seconds. At the end of that time, the DiagnosticResult may be deleted by the diagnostic service provider. 
0xFFFFFFFF = "Persist Forever": 
By setting the timeout value to the very large value, 0xFFFFFFFF, the provider shall persist results forever. In this case, the client MUST bear the responsibility for deleting them.</cim:Qualifier>
<cim:Qualifier name="Units" type="cim:cimString">Seconds</cim:Qualifier>
<cim:Qualifier name="PUnit" type="cim:cimString">second</cim:Qualifier>
<cim:Classorigin name="CIM_DiagnosticSettingData"/>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element name="LogOptions" nillable="true">
<xs:annotation>
<xs:appinfo source="http://schemas.dmtf.org/wbem/wscim/1/common">
<cim:Qualifier name="Description" type="cim:cimString">The LogOptions property is used to specify the types of data that SHOULD be logged by the diagnostic service. Any number of values may be specified in the array. Note that the default behavior is for nothing to be logged. 
The AMOUNT of data to be logged can be controlled for each value selected by specifying a VerbosityLevel value. Verbosity may not apply to all LogOptions values, in which case the default VerbosityLevel of "Standard" SHOULD be used. 
The RecordForLog produced by running a service MUST be tagged with a RecordType that corresponds to one of these log option values. 
Following is a brief description of the available log options: 
* "Other" (value = 1): Details are given in the corresponding OtherLogOptionsDescriptions entry. 
* "Results" (value = 2): Log the results obtained by running the service. This is the most common value for reporting the service results. 
* "Subtests" (value= 3): Log a test summary report upon completion of each subtest and each loop iteration. The summary reports SHOULD state whether the individual subtest or iteration passed or failed and list relevant error codes and respective error counts. 
* "Actions" (value = 4): Log corrective action and instructional messages to guide service personnel; for example, a prioritized list of actions to perform in order to isolate a failure or correct a problem. When ordering steps or prioritizing actions, a number should proceed the text; for example, 1) Do this first, 2) Do this next, etc. 
* "Warnings" (value = 5): Log warning messages; for example, 'device will be taken off line', 'test is long-running' or 'available memory is low'. The VerbosityLevel value specified for the Warnings option is related to the severity of the warnings logged; for instance, one would specify a high level of verbosity to get all warnings logged, regardless of severity, and a low level of verbosity to have only the most severe warnings logged. 
* "Status" (value = 6): Log status messages; for example, state information for the driver, device, or system. 
* "Device Errors" (value = 7): Log errors related to the managed element being serviced. 
* "Service Errors" (value = 8): Log errors related to the service itself rather than the element being serviced, such as 'Resource Allocaton Failure'. 
* "Setting Data" (value=9): Log the property values of the DiagnosticSettingData object used to configure the service. 
*"Statistics" (value = 10): Log statistical messages; for example, packets sent per second. 
* "Hardware Configuration" (value = 11): Log messages that contain information about the hardware configuration as viewed by the service; for example, vendor, version, FRU identification, and location information. The format and contents of this property is element dependent. Examples are: SCSI ID, LPTx, PCI Slot Number, and Dimm#. 
* "Software Configuration" (value = 12): Log messages that contain information about the software environment as viewed by the service; for example, the name and version of all the critical software elements controlling the device under test. Each configuration message SHOULD have the following common format: Element name; element type; manufacturer name; version; for example, 'Miniport driver; SCSI; Intel; Version 1.2'. 
* "Reference" (value = 13): Log the keys of an CIM object of of interest; for example, the element under test, or a data file. 
* "Debug" (value = 14): Log debug messages. These messages are vendor specific.</cim:Qualifier>
<cim:Qualifier name="ArrayType" type="cim:cimString">Indexed</cim:Qualifier>
<cim:Qualifier name="ModelCorrespondence" type="cim:cimString">CIM_DiagnosticSettingData.OtherLogOptionsDescriptions</cim:Qualifier>
<cim:Qualifier name="ModelCorrespondence" type="cim:cimString">CIM_DiagnosticServiceCapabilities.SupportedLogOptions</cim:Qualifier>
<cim:Qualifier name="ModelCorrespondence" type="cim:cimString">CIM_DiagnosticServiceRecord.RecordType</cim:Qualifier>
<cim:Qualifier name="ModelCorrespondence" type="cim:cimString">CIM_DiagnosticSettingData.VerbosityLevel</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="0">Unknown</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="1">Other</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="2">Results</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="3">Subtests</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="4">Actions</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="5">Warnings</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="6">Status</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="7">Device Errors</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="8">Service Errors</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="9">Setting Data</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="10">Statistics</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="11">Hardware Configuration</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="12">Software Configuration</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="13">References</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="14">Debug</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="0x8000">No Log Options</cim:Qualifier>
<cim:Classorigin name="CIM_DiagnosticSettingData"/>
</xs:appinfo>
</xs:annotation>
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="cim:cimUnsignedShort">
<xs:enumeration value="0"/>
<xs:enumeration value="1"/>
<xs:enumeration value="2"/>
<xs:enumeration value="3"/>
<xs:enumeration value="4"/>
<xs:enumeration value="5"/>
<xs:enumeration value="6"/>
<xs:enumeration value="7"/>
<xs:enumeration value="8"/>
<xs:enumeration value="9"/>
<xs:enumeration value="10"/>
<xs:enumeration value="11"/>
<xs:enumeration value="12"/>
<xs:enumeration value="13"/>
<xs:enumeration value="14"/>
<xs:enumeration value="0x8000"/>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="OtherLogOptionsDescriptions" nillable="true" type="cim:cimString">
<xs:annotation>
<xs:appinfo source="http://schemas.dmtf.org/wbem/wscim/1/common">
<cim:Qualifier name="Description" type="cim:cimString">Provides additional information regarding the types of test messages that are logged when the property LogOptions includes the value 1 (Other).</cim:Qualifier>
<cim:Qualifier name="ModelCorrespondence" type="cim:cimString">CIM_DiagnosticSettingData.LogOptions</cim:Qualifier>
<cim:Classorigin name="CIM_DiagnosticSettingData"/>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element name="LogStorage" nillable="true">
<xs:annotation>
<xs:appinfo source="http://schemas.dmtf.org/wbem/wscim/1/common">
<cim:Qualifier name="Description" type="cim:cimString">The LogStorage setting property indicates which types of supported storage should be used by the Diagnostic Service for logging of the data specified in LogOptions. 
The values are: 
"DiagnosticLog" (Value = 2): Use the DiagnosticLog and DiagnosticRecord classes. 
"MessageLog" (Value = 3): Use the MessageLog class and its methods. 
"File" (Value = 4): Write data to a file.</cim:Qualifier>
<cim:Qualifier name="ArrayType" type="cim:cimString">Indexed</cim:Qualifier>
<cim:Qualifier name="ModelCorrespondence" type="cim:cimString">CIM_DiagnosticSettingData.OtherLogStorageDescriptions</cim:Qualifier>
<cim:Qualifier name="ModelCorrespondence" type="cim:cimString">CIM_DiagnosticServiceCapabilities.SupportedLogStorage</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="0">Unknown</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="1">Other</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="2">DiagnosticLog</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="3">MessageLog</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="4">File</cim:Qualifier>
<cim:Classorigin name="CIM_DiagnosticSettingData"/>
</xs:appinfo>
</xs:annotation>
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="cim:cimUnsignedShort">
<xs:enumeration value="0"/>
<xs:enumeration value="1"/>
<xs:enumeration value="2"/>
<xs:enumeration value="3"/>
<xs:enumeration value="4"/>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="OtherLogStorageDescriptions" nillable="true" type="cim:cimString">
<xs:annotation>
<xs:appinfo source="http://schemas.dmtf.org/wbem/wscim/1/common">
<cim:Qualifier name="Description" type="cim:cimString">This property provides additional information for LogStorage when the corresponding value is set to 1 ("Other").</cim:Qualifier>
<cim:Qualifier name="ArrayType" type="cim:cimString">Indexed</cim:Qualifier>
<cim:Qualifier name="ModelCorrespondence" type="cim:cimString">CIM_DiagnosticSettingData.LogStorage</cim:Qualifier>
<cim:Classorigin name="CIM_DiagnosticSettingData"/>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element name="VerbosityLevel" nillable="true">
<xs:annotation>
<xs:appinfo source="http://schemas.dmtf.org/wbem/wscim/1/common">
<cim:Qualifier name="Description" type="cim:cimString">A client may want to specify the desired volume or detail logged by a diagnostic service. This property is applied to a corresponding logging option, acting as a qualifier on its description. Three levels of verbosity are defined as follows: 
* "Minimum" (value=2): Specified if the least amount of information is desired; for example, Pass or Fail. 
* "Standard" (value=3): This is the standard level of messaging provided by the service. It is the form most likely to be used if no verbosity value is specified (default). 
* "Full" (value=4): Specified when all information, regardless of size, is desired. 
Note that VerbosityLevel is a subjective property and relates to the degree of detail, not an absolute metric. A client simply specifies its desired level of detail and the provider publishes its data in accordance with this desired level of detail. 
Verbosity may not apply to all LogOptions values, in which case the default VerbosityLevel of "Standard" SHOULD be used.</cim:Qualifier>
<cim:Qualifier name="ArrayType" type="cim:cimString">Indexed</cim:Qualifier>
<cim:Qualifier name="ModelCorrespondence" type="cim:cimString">CIM_DiagnosticSettingData.LogOptions</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="2">Minimum</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="3">Standard</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="4">Full</cim:Qualifier>
<cim:Classorigin name="CIM_DiagnosticSettingData"/>
</xs:appinfo>
</xs:annotation>
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="cim:cimUnsignedShort">
<xs:enumeration value="2"/>
<xs:enumeration value="3"/>
<xs:enumeration value="4"/>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="QueryTimeout" nillable="true" type="cim:cimUnsignedInt">
<xs:annotation>
<xs:appinfo source="http://schemas.dmtf.org/wbem/wscim/1/common">
<cim:Qualifier name="Description" type="cim:cimString">The time the Job should wait for a query response. before using a default response and continuing execution. A default response could result in a cancellation of the Job. The timeout value starts at the time the Job goes into the QueryPending state. 
0 = "Do not query": 
Setting the timer to zero tells the provider not to query but use the default response. 
Value &gt; 0 and &lt; 0xFFFFFFFF = "Query With TimeOut": 
Setting the QueryTimeout to a integer will cause the Job to wait for that number of seconds. At the end of that time, the Job will use the default response and continue execution. 
0xFFFFFFFF = "Wait Forever": 
By setting the timeout value to the very large value, 0xFFFFFFFF, the job shall wait forever for a response. In this case, the client MUST bear the responsibility for responding to the query.</cim:Qualifier>
<cim:Qualifier name="Units" type="cim:cimString">Seconds</cim:Qualifier>
<cim:Qualifier name="PUnit" type="cim:cimString">second</cim:Qualifier>
<cim:Classorigin name="CIM_DiagnosticSettingData"/>
<cim:Defaultvalue type="cim:cimUnsignedInt">0</cim:Defaultvalue>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element name="NonDestructive" nillable="true" type="cim:cimBoolean">
<xs:annotation>
<xs:appinfo source="http://schemas.dmtf.org/wbem/wscim/1/common">
<cim:Qualifier name="Description" type="cim:cimString">The test should only run non-destructive tests.</cim:Qualifier>
<cim:Classorigin name="CIM_DiagnosticSettingData"/>
<cim:Defaultvalue type="cim:cimBoolean">false</cim:Defaultvalue>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element name="InstanceID" type="cim:cimString">
<xs:annotation>
<xs:appinfo source="http://schemas.dmtf.org/wbem/wscim/1/common">
<cim:Qualifier name="Key" type="cim:cimBoolean">true</cim:Qualifier>
<cim:Qualifier name="Override" type="cim:cimString">InstanceID</cim:Qualifier>
<cim:Qualifier name="Description" type="cim:cimString">Within the scope of the instantiating Namespace, InstanceID opaquely and uniquely identifies an instance of this class. To ensure uniqueness within the NameSpace, the value of InstanceID should be constructed using the following "preferred" algorithm: 
&lt;OrgID&gt;:&lt;LocalID&gt; 
Where &lt;OrgID&gt; and &lt;LocalID&gt; are separated by a colon (:), and where &lt;OrgID&gt; must include a copyrighted, trademarked, or otherwise unique name that is owned by the business entity that is creating or defining the InstanceID or that is a registered ID assigned to the business entity by a recognized global authority. (This requirement is similar to the &lt;Schema Name&gt;_&lt;Class Name&gt; structure of Schema class names.) In addition, to ensure uniqueness, &lt;OrgID&gt; must not contain a colon (:). When using this algorithm, the first colon to appear in InstanceID must appear between &lt;OrgID&gt; and &lt;LocalID&gt;. 
&lt;LocalID&gt; is chosen by the business entity and should not be reused to identify different underlying (real-world) elements. If the above "preferred" algorithm is not used, the defining entity must assure that the resulting InstanceID is not reused across any InstanceIDs produced by this or other providers for the NameSpace of this instance. 
For DMTF-defined instances, the "preferred" algorithm must be used with the &lt;OrgID&gt; set to CIM.</cim:Qualifier>
<cim:Classorigin name="CIM_SettingData"/>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element name="ElementName" type="cim:cimString">
<xs:annotation>
<xs:appinfo source="http://schemas.dmtf.org/wbem/wscim/1/common">
<cim:Qualifier name="Required" type="cim:cimBoolean">true</cim:Qualifier>
<cim:Qualifier name="Override" type="cim:cimString">ElementName</cim:Qualifier>
<cim:Qualifier name="Description" type="cim:cimString">The user-friendly name for this instance of SettingData. In addition, the user-friendly name can be used as an index property for a search or query. (Note: The name does not have to be unique within a namespace.)</cim:Qualifier>
<cim:Classorigin name="CIM_SettingData"/>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element name="ChangeableType" nillable="true">
<xs:annotation>
<xs:appinfo source="http://schemas.dmtf.org/wbem/wscim/1/common">
<cim:Qualifier name="Description" type="cim:cimString">Enumeration indicating the type of setting. 0 "Not Changeable - Persistent" indicates the instance of SettingData represents primordial settings and shall not be modifiable. 1 "Changeable - Transient" indicates the SettingData represents modifiable settings that are not persisted. Establishing persistent settings from transient settings may be supported. 2 "Changeable - Persistent" indicates the SettingData represents a persistent configuration that may be modified. 3 "Not Changeable - Transient" indicates the SettingData represents a snapshot of the settings of the associated ManagedElement and is not persistent.</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="0">Not Changeable - Persistent</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="1">Changeable - Transient</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="2">Changeable - Persistent</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="3">Not Changeable - Transient</cim:Qualifier>
<cim:Classorigin name="CIM_SettingData"/>
</xs:appinfo>
</xs:annotation>
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="cim:cimUnsignedShort">
<xs:enumeration value="0"/>
<xs:enumeration value="1"/>
<xs:enumeration value="2"/>
<xs:enumeration value="3"/>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="ConfigurationName" nillable="true" type="cim:cimString">
<xs:annotation>
<xs:appinfo source="http://schemas.dmtf.org/wbem/wscim/1/common">
<cim:Qualifier name="Description" type="cim:cimString">An instance of CIM_SettingData may correspond to a well-known configuration that exists for an associated CIM_ManagedElement. If the ConfigurationName property is non-NULL, the instance of CIM_SettingData shall correspond to a well-known configuration for a Managed Element, the value of the ConfigurationName property shall be the name of the configuration, and the ChangeableType property shall have the value 0 or 2. A value of NULL for the ConfigurationName property shall mean that the instance of CIM_SettingData does not correspond to a well-known configuration for a Managed Element or that this information is unknown.</cim:Qualifier>
<cim:Classorigin name="CIM_SettingData"/>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element name="ComponentSetting" nillable="true" type="xs:anyType">
<xs:annotation>
<xs:appinfo source="http://schemas.dmtf.org/wbem/wscim/1/common">
<cim:Qualifier name="Description" type="cim:cimString">The value of each CIM_ComponentSetting instance includes a CIM_SettingData instance that specifies further values for this CIM_SettingData instance. The values are interpreted according to the values of the Policy, ValueRole, and ValueRange properties included in each CIM_ComponentSetting instance.

Note: If SoID is not null, then the embedded ComponentSetting elements may be interpreted as ITIL Service Level Targets.
Note: For CIM v3, the type of ComponentSetting will be CIM_ComponentSetting. This is not represented as an EmbeddedInstance in CIM v2 to avoid a circular dependency that CIM v2 compilers cannot handle.</cim:Qualifier>
<cim:Qualifier name="EmbeddedObject" type="cim:cimBoolean">true</cim:Qualifier>
<cim:Classorigin name="CIM_SettingData"/>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element name="SoID" nillable="true" type="cim:cimString">
<xs:annotation>
<xs:appinfo source="http://schemas.dmtf.org/wbem/wscim/1/common">
<cim:Qualifier name="Description" type="cim:cimString">If not Null, the CIM_SettingData instance is being used to represent an ITIL element: either a service option, a service level requirement, or a service level target. The value SoID must be unique in the context of an Organization unique identifier specified in SoOrgID.</cim:Qualifier>
<cim:Qualifier name="ModelCorrespondence" type="cim:cimString">CIM_SettingData.SoOrgID</cim:Qualifier>
<cim:Classorigin name="CIM_SettingData"/>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element name="SoOrgID" nillable="true" type="cim:cimString">
<xs:annotation>
<xs:appinfo source="http://schemas.dmtf.org/wbem/wscim/1/common">
<cim:Qualifier name="Description" type="cim:cimString">If not Null, the CIM_SettingData instance is being used to represent an ITIL element: either a service option, a service level requirement, or a service level target. When not Null, the value of SoOrgID shall be a unique identifier for the organization that specifies the value of SoID.</cim:Qualifier>
<cim:Qualifier name="ModelCorrespondence" type="cim:cimString">CIM_SettingData.SoID</cim:Qualifier>
<cim:Classorigin name="CIM_SettingData"/>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element name="Caption" nillable="true">
<xs:annotation>
<xs:appinfo source="http://schemas.dmtf.org/wbem/wscim/1/common">
<cim:Qualifier name="Description" type="cim:cimString">The Caption property is a short textual description (one- line string) of the object.</cim:Qualifier>
<cim:Qualifier name="MaxLen" type="cim:cimUnsignedInt">64</cim:Qualifier>
<cim:Classorigin name="CIM_ManagedElement"/>
</xs:appinfo>
</xs:annotation>
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="cim:cimString">
<xs:maxLength value="64"/>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="Description" nillable="true" type="cim:cimString">
<xs:annotation>
<xs:appinfo source="http://schemas.dmtf.org/wbem/wscim/1/common">
<cim:Qualifier name="Description" type="cim:cimString">The Description property provides a textual description of the object.</cim:Qualifier>
<cim:Classorigin name="CIM_ManagedElement"/>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element name="Generation" nillable="true" type="cim:cimUnsignedLong">
<xs:annotation>
<xs:appinfo source="http://schemas.dmtf.org/wbem/wscim/1/common">
<cim:Qualifier name="Description" type="cim:cimString">Generation is an optional, monotonically increasing property that may be used to identify a particular generation of the resource represented by this class.
If Generation is supported by the implementation, its value shall not be null. 
Except as otherwise specified, a value (including null) of Generation specified at creation time shall be replaced by null if Generation is not supported by the implementation or shall be a, (possibly different), non-null value if the implementation does support Generation.
After creation and if supported, Generation shall be updated, at least once per access, whenever the represented resource is modified, regardless of the source of the modification.
Note: the Generation value only needs to be updated once between references, even if the resource is updated many times. The key point is to assure that it will be different if there have been updates, not to count each update.
Note: unless otherwise specified, the value of Generation within one instance is not required to be coordinated with the value of Generation in any other instance.
Note:the semantics of the instance, (as defined by its creation class), define the underlying resource. That underlying resource may be a collection or aggregation of resources. And, in that case, the semantics of the instance further define when updates to constituent resources also require updates to the Generation of the collective resource. Default behavior of composite aggregations should be to update the Generation of the composite whenever the Generation of a component is updated.
Subclasses may define additional requirements for updates on some or all of related instances.
For a particular instance, the value of Generation may wrap through zero, but the elapsed time between wraps shall be greater than 10's of years.
This class does not require Generation to be unique across instances of other classes nor across instances of the same class that have different keys. Generation shall be different across power cycles, resets, or reboots if any of those actions results in an update. Generation may be different across power cycles, resets, or reboots if those actions do not result in an update. If the Generation property of an instance is non-null, and if any attempt to update the instance includes the Generation property, then if it doesn't match the current value, the update shall fail.
The usage of this property is intended to be further specified by applicable management profiles. 
Typically, a client will read the value of this property and then supply that value as input to an operation that modifies the instance in some means. This may be via an explicit parameter in an extrinsic method or via an embedded value in an extrinsic method or intrinsic operation.
For example: a profile may require that an intrinsic instance modification supply the Generation property and that it must match for the modification to succeed.</cim:Qualifier>
<cim:Classorigin name="CIM_ManagedElement"/>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element name="CIM_StoragePoolDiagnosticSettingData" type="class:CIM_StoragePoolDiagnosticSettingData_Type">
<xs:annotation>
<xs:appinfo source="http://schemas.dmtf.org/wbem/wscim/1/common">
<cim:Class name="CIM_StoragePoolDiagnosticSettingData" superclass="CIM_DiagnosticSettingData"/>
<cim:Qualifier name="Version" type="cim:cimString">2.45.0</cim:Qualifier>
<cim:Qualifier name="UMLPackagePath" type="cim:cimString">CIM::Device::Storage</cim:Qualifier>
<cim:Qualifier name="Description" type="cim:cimString">This class defines the additional settings to be used for storage pool diagnostic tests.</cim:Qualifier>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:complexType name="CIM_StoragePoolDiagnosticSettingData_Type">
<xs:sequence>
<xs:element minOccurs="0" ref="class:Caption"/>
<xs:element minOccurs="0" ref="class:ChangeableType"/>
<xs:element maxOccurs="unbounded" minOccurs="0" ref="class:ComponentSetting"/>
<xs:element minOccurs="0" ref="class:ConfigurationName"/>
<xs:element minOccurs="0" ref="class:Depth"/>
<xs:element minOccurs="0" ref="class:Description"/>
<xs:element ref="class:ElementName"/>
<xs:element minOccurs="0" ref="class:Generation"/>
<xs:element minOccurs="0" ref="class:HaltOnError"/>
<xs:element ref="class:InstanceID"/>
<xs:element maxOccurs="unbounded" minOccurs="0" ref="class:LogOptions"/>
<xs:element maxOccurs="unbounded" minOccurs="0" ref="class:LogStorage"/>
<xs:element maxOccurs="unbounded" minOccurs="0" ref="class:LoopControl"/>
<xs:element maxOccurs="unbounded" minOccurs="0" ref="class:LoopControlParameter"/>
<xs:element minOccurs="0" ref="class:NonDestructive"/>
<xs:element maxOccurs="unbounded" minOccurs="0" ref="class:OtherLogOptionsDescriptions"/>
<xs:element maxOccurs="unbounded" minOccurs="0" ref="class:OtherLogStorageDescriptions"/>
<xs:element maxOccurs="unbounded" minOccurs="0" ref="class:OtherLoopControlDescriptions"/>
<xs:element minOccurs="0" ref="class:PercentOfTestCoverage"/>
<xs:element minOccurs="0" ref="class:QueryTimeout"/>
<xs:element minOccurs="0" ref="class:QuickMode"/>
<xs:element minOccurs="0" ref="class:ResultPersistence"/>
<xs:element minOccurs="0" ref="class:SoID"/>
<xs:element minOccurs="0" ref="class:SoOrgID"/>
<xs:element maxOccurs="unbounded" minOccurs="0" ref="class:VerbosityLevel"/>
<xs:any maxOccurs="unbounded" minOccurs="0" namespace="##other" processContents="lax"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
</xs:schema>
