<?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_ProductComponent" 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_ProductComponent">
<xs:import namespace="http://schemas.dmtf.org/wbem/wscim/1/common" schemaLocation="http://schemas.dmtf.org/wbem/wscim/1/common.xsd"/>
<xs:element name="GroupComponent" type="cim:cimReference">
<xs:annotation>
<xs:appinfo source="http://schemas.dmtf.org/wbem/wscim/1/common">
<cim:Qualifier name="Aggregate" type="cim:cimBoolean">true</cim:Qualifier>
<cim:Qualifier name="Override" type="cim:cimString">GroupComponent</cim:Qualifier>
<cim:Qualifier name="Description" type="cim:cimString">The Product which contains another Product as a component. The cardinality of this reference takes the default values (no minimum or maximum) since an instance of Product can describe either a general product type, or a specific item that is acquired. In the case of a specific item, a cardinality of Max(1) is indicated. However, when dealing with the general description/templating of a Product, then it may be a component of several others and a cardinality of Max(1) would be invalid.</cim:Qualifier>
<cim:Qualifier name="ModelCorrespondence" type="cim:cimString">PRS_ProductComponent.Antecedent</cim:Qualifier>
<cim:Qualifier name="Key" type="cim:cimBoolean">true</cim:Qualifier>
<cim:Classorigin name="CIM_ProductComponent"/>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element name="PartComponent" type="cim:cimReference">
<xs:annotation>
<xs:appinfo source="http://schemas.dmtf.org/wbem/wscim/1/common">
<cim:Qualifier name="Override" type="cim:cimString">PartComponent</cim:Qualifier>
<cim:Qualifier name="Description" type="cim:cimString">The contained Product.</cim:Qualifier>
<cim:Qualifier name="ModelCorrespondence" type="cim:cimString">PRS_ProductComponent.Dependent</cim:Qualifier>
<cim:Qualifier name="Key" type="cim:cimBoolean">true</cim:Qualifier>
<cim:Classorigin name="CIM_ProductComponent"/>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element name="CIM_ProductComponent" type="class:CIM_ProductComponent_Type">
<xs:annotation>
<xs:appinfo source="http://schemas.dmtf.org/wbem/wscim/1/common">
<cim:Class name="CIM_ProductComponent" superclass="CIM_Component"/>
<cim:Qualifier name="Association" type="cim:cimBoolean">true</cim:Qualifier>
<cim:Qualifier name="Deprecated" type="cim:cimString">CIM_ConcreteComponent</cim:Qualifier>
<cim:Qualifier name="Aggregation" type="cim:cimBoolean">true</cim:Qualifier>
<cim:Qualifier name="Composition" type="cim:cimBoolean">true</cim:Qualifier>
<cim:Qualifier name="Version" type="cim:cimString">2.15.0</cim:Qualifier>
<cim:Qualifier name="UMLPackagePath" type="cim:cimString">CIM::Core::ProductFRU</cim:Qualifier>
<cim:Qualifier name="Description" type="cim:cimString">The CIM_ProductComponent association defines a containment and component relationship among Products. For example, a Product may come bundled with other Products. 
Note that this association duplicates ProductParentChild. The latter association is maintained for legacy reasons. This association, ProductComponent, is added for ease of query and modeling consistency. Using ProductComponent, an application can query for all Component relationships for a Product, versus querying the various Component relationships AND ProductParentChild.</cim:Qualifier>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:complexType name="CIM_ProductComponent_Type">
<xs:sequence>
<xs:element ref="class:GroupComponent"/>
<xs:element ref="class:PartComponent"/>
<xs:any maxOccurs="unbounded" minOccurs="0" namespace="##other" processContents="lax"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
</xs:schema>
