<?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_ElementSoftwareIdentity" 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_ElementSoftwareIdentity">
<xs:import namespace="http://schemas.dmtf.org/wbem/wscim/1/common" schemaLocation="http://schemas.dmtf.org/wbem/wscim/1/common.xsd"/>
<xs:element name="Antecedent" type="cim:cimReference">
<xs:annotation>
<xs:appinfo source="http://schemas.dmtf.org/wbem/wscim/1/common">
<cim:Qualifier name="Override" type="cim:cimString">Antecedent</cim:Qualifier>
<cim:Qualifier name="Description" type="cim:cimString">A LogicalElement's Software Asset.</cim:Qualifier>
<cim:Qualifier name="Key" type="cim:cimBoolean">true</cim:Qualifier>
<cim:Classorigin name="CIM_ElementSoftwareIdentity"/>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element name="Dependent" type="cim:cimReference">
<xs:annotation>
<xs:appinfo source="http://schemas.dmtf.org/wbem/wscim/1/common">
<cim:Qualifier name="Override" type="cim:cimString">Dependent</cim:Qualifier>
<cim:Qualifier name="Description" type="cim:cimString">The ManagedElement that requires or uses the software.</cim:Qualifier>
<cim:Qualifier name="Key" type="cim:cimBoolean">true</cim:Qualifier>
<cim:Classorigin name="CIM_ElementSoftwareIdentity"/>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element name="UpgradeCondition" nillable="true">
<xs:annotation>
<xs:appinfo source="http://schemas.dmtf.org/wbem/wscim/1/common">
<cim:Qualifier name="Description" type="cim:cimString">Indicates the element's ability to upgrade this software asset.
'Resides off element'(2), indicates the persistence of the software is outside of the element. Typically for a element this software is part of the OperatingSystem is typically upgradeable.
'Owner Upgradeable' (3), indicates the persistence of the software is on the element and is upgradeable by the owner.
'FactoryUpgradeable' (4),indicates the persistence of the software is on the element and is upgradeable by the manufacturer.
'Not Upgradeable' (5), indicates the presistence of the software is on the element and is not upgradeable. (i.e. burned into a non replaceable ROM chip.</cim:Qualifier>
<cim:Qualifier name="ModelCorrespondence" type="cim:cimString">CIM_ElementSoftwareIdentity.OtherUpgradeCondition</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">Resides off device</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="3">Owner Upgradeable</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="4">Factory Upgradeable</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="5">Not Upgradeable</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="..">DMTF Reserved</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="0x8000..0xFFFF">Vendor Reserved</cim:Qualifier>
<cim:Classorigin name="CIM_ElementSoftwareIdentity"/>
</xs:appinfo>
</xs:annotation>
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="cim:cimAnySimpleType">
<xs:simpleType>
<xs:union>
<xs:simpleType>
<xs:restriction base="xs:unsignedShort">
<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:restriction>
</xs:simpleType>
<xs:simpleType>
<xs:union>
<xs:simpleType>
<xs:restriction base="xs:unsignedShort">
<xs:minInclusive value="6"/>
<xs:maxInclusive value="32767"/>
</xs:restriction>
</xs:simpleType>
</xs:union>
</xs:simpleType>
<xs:simpleType>
<xs:restriction base="xs:unsignedShort">
<xs:minInclusive value="32768"/>
<xs:maxInclusive value="65535"/>
</xs:restriction>
</xs:simpleType>
</xs:union>
</xs:simpleType>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="OtherUpgradeCondition" 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">Describes the upgrade condition, when UpgradeCondition is set to 1 ("Other").</cim:Qualifier>
<cim:Qualifier name="ModelCorrespondence" type="cim:cimString">CIM_ElementSoftwareIdentity.UpgradeCondition</cim:Qualifier>
<cim:Classorigin name="CIM_ElementSoftwareIdentity"/>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element name="ElementSoftwareStatus" nillable="true">
<xs:annotation>
<xs:appinfo source="http://schemas.dmtf.org/wbem/wscim/1/common">
<cim:Qualifier name="Description" type="cim:cimString">A collection of properties describing the status of the software on the managed element. Multiple properties could be set at the same time. For example a ElementSoftwareStatus could have "Installed", "Default", "Current" and "FallBack" set at the same time. 
"Current" indicates that the software is currently running on or for the Managed Element. 
"Next" indicates that the software will run after the next reset or reboot unless superseded by a software with a status of "SingleUse". 
"FallBack" indicates that the software will be run if the software which has a status of "Next" or "SingleUse" fails to run. 
"Default" indicates the default version of the software that was originally shipped by the manufacturer. 
"Installed" indicates that the software is persistently located and is available for use on the Managed Element. 
"SingleUse" indicates that the software will run only after the next reset or reboot but will not run after the subsequent reset or reboot. 
"Available" indicates that the software is available for installation on the Managed Element. 
"Supports"indicates that the software will work with or operate the Managed Element but is or will be installed on a different Managed Element.</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="0">Unknown</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="2">Current</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="3">Next</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="4">FallBack</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="5">Default</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="6">Installed</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="7">Single Use</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="8">Available</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="9">Supports</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="..">DMTF Reserved</cim:Qualifier>
<cim:Qualifier name="Values" type="cim:cimString" valuemap="32768..65535">Vendor Reserved</cim:Qualifier>
<cim:Classorigin name="CIM_ElementSoftwareIdentity"/>
</xs:appinfo>
</xs:annotation>
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="cim:cimAnySimpleType">
<xs:simpleType>
<xs:union>
<xs:simpleType>
<xs:restriction base="xs:unsignedShort">
<xs:enumeration value="0"/>
<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:restriction>
</xs:simpleType>
<xs:simpleType>
<xs:union>
<xs:simpleType>
<xs:restriction base="xs:unsignedShort">
<xs:enumeration value="1"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType>
<xs:restriction base="xs:unsignedShort">
<xs:minInclusive value="10"/>
<xs:maxInclusive value="32767"/>
</xs:restriction>
</xs:simpleType>
</xs:union>
</xs:simpleType>
<xs:simpleType>
<xs:restriction base="xs:unsignedShort">
<xs:minInclusive value="32768"/>
<xs:maxInclusive value="65535"/>
</xs:restriction>
</xs:simpleType>
</xs:union>
</xs:simpleType>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="CIM_ElementSoftwareIdentity" type="class:CIM_ElementSoftwareIdentity_Type">
<xs:annotation>
<xs:appinfo source="http://schemas.dmtf.org/wbem/wscim/1/common">
<cim:Class name="CIM_ElementSoftwareIdentity" superclass="CIM_Dependency"/>
<cim:Qualifier name="Association" type="cim:cimBoolean">true</cim:Qualifier>
<cim:Qualifier name="Version" type="cim:cimString">2.20.0</cim:Qualifier>
<cim:Qualifier name="UMLPackagePath" type="cim:cimString">CIM::Core::Software</cim:Qualifier>
<cim:Qualifier name="Description" type="cim:cimString">ElementSoftwareIdentity allows a Managed Element to report its software related asset information (firmware, drivers, configuration software, and etc.)</cim:Qualifier>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:complexType name="CIM_ElementSoftwareIdentity_Type">
<xs:sequence>
<xs:element ref="class:Antecedent"/>
<xs:element ref="class:Dependent"/>
<xs:element maxOccurs="unbounded" minOccurs="0" ref="class:ElementSoftwareStatus"/>
<xs:element minOccurs="0" ref="class:OtherUpgradeCondition"/>
<xs:element minOccurs="0" ref="class:UpgradeCondition"/>
<xs:any maxOccurs="unbounded" minOccurs="0" namespace="##other" processContents="lax"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
</xs:schema>
