<?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_BasedOnView" 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_BasedOnView">
<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="Key" type="cim:cimBoolean">true</cim:Qualifier>
<cim:Qualifier name="Override" type="cim:cimString">Antecedent</cim:Qualifier>
<cim:Qualifier name="Description" type="cim:cimString">The CIM_DiskDriveView on which a StorageExtent (or StorageVolume or LogicalDisk) is based or the CIM_StorageExtent on which the a CIM_VolumeView is based.</cim:Qualifier>
<cim:Classorigin name="CIM_BasedOnView"/>
</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="Key" type="cim:cimBoolean">true</cim:Qualifier>
<cim:Qualifier name="Override" type="cim:cimString">Dependent</cim:Qualifier>
<cim:Qualifier name="Description" type="cim:cimString">The CIM_StorageExtent instance that is dependent on the CIM_DiskDriveView or the CIM_VolumeView that is dependent on the CIM_StorageExtent.</cim:Qualifier>
<cim:Classorigin name="CIM_BasedOnView"/>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element name="BOEndingAddress" 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">This is derived from the BasedOn.EndingAddress</cim:Qualifier>
<cim:Classorigin name="CIM_BasedOnView"/>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element name="BOOrderIndex" 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">When the association is used in a concatenation composition, indicates the order in which the extents(and thus their block ranges) are concatenated.</cim:Qualifier>
<cim:Classorigin name="CIM_BasedOnView"/>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element name="BOStartingAddress" 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">This is derived from the BasedOn.StartingAddress</cim:Qualifier>
<cim:Classorigin name="CIM_BasedOnView"/>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element name="StartingAddress" 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">StartingAddress indicates where in lower level storage, the higher level Extent begins.</cim:Qualifier>
<cim:Classorigin name="CIM_AbstractBasedOn"/>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element name="EndingAddress" 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">EndingAddress indicates where in lower level storage, the higher level Extent ends. This property is useful when mapping non-contiguous Extents into a higher level grouping.</cim:Qualifier>
<cim:Classorigin name="CIM_AbstractBasedOn"/>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element name="OrderIndex" 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">If there is an order to the BasedOn associations that describe how a higher level StorageExtent is assembled, the OrderIndex property indicates this. When an order exists, the instances of BasedOn with the same Dependent value (i.e., the same higher level Extent) should place unique values in the OrderIndex property. The lowest value implies the first member of the collection of lower level Extents, and increasing values imply successive members of the collection. If there is no ordered relationship, a value of zero should be specified. An example of the use of this property is to define a RAID-0 striped array of 3 disks. The resultant RAID array is a StorageExtent that is dependent on (BasedOn) the StorageExtents that describe each of the 3 disks. The OrderIndex of each BasedOn association from the disk Extents to the RAID array could be specified as 1, 2 and 3 to indicate the order in which the disk Extents are used to access the RAID data.</cim:Qualifier>
<cim:Classorigin name="CIM_AbstractBasedOn"/>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element name="CIM_BasedOnView" type="class:CIM_BasedOnView_Type">
<xs:annotation>
<xs:appinfo source="http://schemas.dmtf.org/wbem/wscim/1/common">
<cim:Class name="CIM_BasedOnView" superclass="CIM_AbstractBasedOn"/>
<cim:Qualifier name="Association" type="cim:cimBoolean">true</cim:Qualifier>
<cim:Qualifier name="Version" type="cim:cimString">2.45.0</cim:Qualifier>
<cim:Qualifier name="UMLPackagePath" type="cim:cimString">CIM::Device::StorageExtent</cim:Qualifier>
<cim:Qualifier name="Description" type="cim:cimString">The CIM_BasedOnView instance is a view that is derived from CIM_BasedOn between the CIM_StorageExtent (or StorageVolume or LogicalDisk) instance and another CIM_StorageExtent where one or both of the references are to a View Class (e.g.,, VolumeView Dependent or DiskDriveView Antecedent).</cim:Qualifier>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:complexType name="CIM_BasedOnView_Type">
<xs:sequence>
<xs:element ref="class:Antecedent"/>
<xs:element minOccurs="0" ref="class:BOEndingAddress"/>
<xs:element minOccurs="0" ref="class:BOOrderIndex"/>
<xs:element minOccurs="0" ref="class:BOStartingAddress"/>
<xs:element ref="class:Dependent"/>
<xs:element minOccurs="0" ref="class:EndingAddress"/>
<xs:element minOccurs="0" ref="class:OrderIndex"/>
<xs:element minOccurs="0" ref="class:StartingAddress"/>
<xs:any maxOccurs="unbounded" minOccurs="0" namespace="##other" processContents="lax"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
</xs:schema>
