<?xml version="1.0" encoding="UTF-8"?>
<!-- IBM_PROLOG_BEGIN_TAG                                                   -->
<!-- This is an automatically generated prolog.                             -->
<!--                                                                        -->
<!-- bos720 src/bos/usr/bin/vmstat/vmstat_schema.xsd 1.1                    -->
<!--                                                                        -->
<!-- Licensed Materials - Property of IBM                                   -->
<!--                                                                        -->
<!-- COPYRIGHT International Business Machines Corp. 2010,2011              -->
<!-- All Rights Reserved                                                    -->
<!--                                                                        -->
<!-- US Government Users Restricted Rights - Use, duplication or            -->
<!-- disclosure restricted by GSA ADP Schedule Contract with IBM Corp.      -->
<!--                                                                        -->
<!-- IBM_PROLOG_END_TAG                                                     -->
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
	<!-- There are 2 different parts in this Schema. The first one is common to all IBM XML tools, the second is vmstat specific -->
	<!-- ########################################################################### -->
	<!-- High level description							 -->
	<!-- ########################################################################### -->
	<xsd:element name="PerformanceMeasurement">
		<xsd:complexType>
			<xsd:sequence>
				<!-- This tag is consumed by the VPA tool. This is a common part to all IBM XML tools. -->
				<xsd:element name="ProcessingHeader" type="ProcessingHeaderType" minOccurs="0" maxOccurs="1"/>
				<!-- This tag is consumed by the VPA tool. This is a common part to all IBM XML tools. -->
				<xsd:element name="ChassisDescription" type="ChassisDescriptionType" minOccurs="0" maxOccurs="1"/>
				<!-- This tag is consumed by the VPA tool. This is a common part to all IBM XML tools. -->
				<xsd:element name="NodeDescription" type="NodeDescriptionType" minOccurs="0" maxOccurs="unbounded"/>
				<!-- This tag contains common and VMSTAT tags -->
				<xsd:element name="CollectionDataSet" type="CollectionDataType" minOccurs="0" maxOccurs="unbounded"/>
			</xsd:sequence>
		</xsd:complexType>
	</xsd:element>
	<!-- ########################################################################### 	-->
	<!-- Details level description 								-->
	<!-- ########################################################################### 	-->
	<xsd:element name="ProcessingHeader" type="ProcessingHeaderType"/>
	<!-- Optional.  If missing, process as <Command>New</Command>  -->
	<xsd:element name="ChassisDescription" type="ChassisDescriptionType">
		<!-- Required -->
	</xsd:element>
	<xsd:element name="NodeDescription" type="NodeDescriptionType">
		<!-- Required -->
	</xsd:element>
	<xsd:element name="CollectionDataSet" type="CollectionDataType">
		<!-- Required -->
	</xsd:element>
	<!-- Notes which can be added in some tags to add information depending on the platform -->
	<xsd:complexType name="TaggedNotesType">
		<xsd:sequence>
			<xsd:element name="NoteTag" minOccurs="0" maxOccurs="unbounded" type="NodeTagType"/>
		</xsd:sequence>
	</xsd:complexType>
	<!-- Give details about the machine chassis. Not all fields are filled by VMSTAT -->
	<!-- VMSTAT does not fill all the tags -->
	<xsd:complexType name="ChassisDescriptionType">
		<xsd:sequence>
			<xsd:element name="TotalNodes" type="xsd:string" minOccurs="1" maxOccurs="1"/>
			<!-- Required -->
			<xsd:element name="NodeTopology" minOccurs="0" maxOccurs="1">
				<!-- Optional, if <TotalNodes> is "1" -->
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="NodeLink" type="xsd:string"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="ChassisGroups" minOccurs="0" maxOccurs="1">
				<!-- Optional, if <TotalNodes> is "1" -->
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="Chassis">
							<xsd:complexType>
								<xsd:sequence>
									<xsd:element name="Description" type="xsd:string" minOccurs="0" maxOccurs="1">
										<!-- Optional -->
									</xsd:element>
									<xsd:element name="NodeList" type="xsd:string" minOccurs="1" maxOccurs="1">
										<!-- Required -->
									</xsd:element>
								</xsd:sequence>
								<xsd:attribute name="ChassisId" type="xsd:string"/>
							</xsd:complexType>
						</xsd:element>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<!-- This complex element gives details about each Node of the Chassis. This is also a common part to all IBM XML based tools. -->
	<!-- VMSTAT does not fill all the tags -->
	<xsd:complexType name="NodeDescriptionType">
		<xsd:sequence minOccurs="0" maxOccurs="unbounded">
			<xsd:element name="HardwareDescription" minOccurs="0" maxOccurs="1">
				<!-- Required -->
				<xsd:complexType>
					<xsd:sequence minOccurs="0" maxOccurs="unbounded">
						<!-- 
	This area needs work.  
	If "SystemType" and "SystemModel" are set properly, "LabSystemName" and "LabCpuName" are not needed.
	However, early on only "LabSystemName" and "LabCpuName" are available.
-->
						<xsd:element name="LabSystemName" type="xsd:string" minOccurs="0" maxOccurs="1"/>
						<xsd:element name="LabCpuName" type="xsd:string" minOccurs="0" maxOccurs="1"/>
						<xsd:element name="CpuClockMhz" type="xsd:double" minOccurs="0" maxOccurs="1"/>
						<xsd:element name="SystemMemory" type="xsd:long" minOccurs="0" maxOccurs="1"/>
						<!-- Optional -->
						<xsd:element name="AvailableProcessorIds" type="xsd:string" minOccurs="0" maxOccurs="1">
							<!-- Optional if "SystemType" and "SystemModel" are set properly and there are no disabled processors.  -->
						</xsd:element>
						<xsd:element name="TaggedNotes" minOccurs="0" maxOccurs="1">
							<!-- Optional, see comment above. -->
							<xsd:complexType>
								<xsd:sequence>
									<xsd:element name="NoteTag" type="NodeTagType" minOccurs="0" maxOccurs="unbounded"/>
								</xsd:sequence>
							</xsd:complexType>
						</xsd:element>
					</xsd:sequence>
					<xsd:attribute name="HardwareClass" type="xsd:string"/>
				</xsd:complexType>
			</xsd:element>
			<!-- Firmware information are put here when available -->
			<!-- VMSTAT does not fill all the tags -->
			<xsd:element name="FirmwareDescription" minOccurs="0" maxOccurs="1">
				<!-- Required -->
				<xsd:complexType>
					<xsd:sequence minOccurs="0" maxOccurs="unbounded">
						<xsd:element name="FspName" type="xsd:string" minOccurs="0" maxOccurs="1"/>
						<!-- Required -->
						<xsd:element name="FspVersion" type="xsd:string" minOccurs="0" maxOccurs="1"/>
						<!-- Required -->
						<xsd:element name="PhypVersion" type="xsd:string" minOccurs="0" maxOccurs="1"/>
						<!-- Required -->
						<xsd:element name="PfwVersion" type="xsd:string" minOccurs="0" maxOccurs="1"/>
						<!-- Required -->
						<xsd:element name="PhypBuildDirectory" type="xsd:string" minOccurs="0" maxOccurs="1"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<!-- Logical Partition information are put here when available -->
			<!-- VMSTAT does not fill all the tags -->
			<xsd:element name="LogicalPartitionDescription" minOccurs="0" maxOccurs="1">
				<!-- Required -->
				<xsd:complexType>
					<xsd:sequence minOccurs="0" maxOccurs="unbounded">
						<xsd:element name="HardwareDescription" minOccurs="0" maxOccurs="1">
							<!-- Required -->
							<xsd:complexType>
								<xsd:sequence minOccurs="0" maxOccurs="unbounded">
									<xsd:element name="NumberConfiguredProcessors" type="xsd:integer" minOccurs="0" maxOccurs="1">
										<!-- Required -->
									</xsd:element>
									<xsd:element name="PartitionProcessorMap" type="xsd:string" minOccurs="0" maxOccurs="1">
										<!-- Optional if "SystemType" and "SystemModel" are set properly and all processors are used.  -->
									</xsd:element>
									<xsd:element name="TaggedNotes" type="TaggedNotesType" minOccurs="0" maxOccurs="1"/>
								</xsd:sequence>
							</xsd:complexType>
						</xsd:element>
						<xsd:element name="LogicalPartitionConfiguration" minOccurs="0" maxOccurs="1">
							<!-- Optional, only if there is a single dedicated partition on the system. -->
							<xsd:complexType>
								<xsd:sequence minOccurs="0" maxOccurs="unbounded">
									<xsd:element name="LogicalPartitionType" type="xsd:string" minOccurs="0" maxOccurs="1">
										<!-- Required if "LogicalPartitionConfiguration" -->
									</xsd:element>
									<xsd:element name="CappedAttribute" type="xsd:string" minOccurs="0" maxOccurs="1">
										<!-- Required if "LogicalPartitionConfiguration" -->
									</xsd:element>
									<xsd:element name="EntitledCapacity" type="xsd:integer" minOccurs="0" maxOccurs="1">
										<!-- Required if "LogicalPartitionConfiguration" -->
									</xsd:element>
									<xsd:element name="UncappedWeight" type="xsd:integer" minOccurs="0" maxOccurs="1">
										<!-- Required if "LogicalPartitionConfiguration" -->
									</xsd:element>
								</xsd:sequence>
								<xsd:attribute name="Name" type="xsd:string"/>
							</xsd:complexType>
						</xsd:element>
						<xsd:element name="SoftwareDescription" minOccurs="0" maxOccurs="1">
							<!-- Required -->
							<xsd:complexType>
								<xsd:sequence>
									<xsd:element name="SwDesc" minOccurs="0" maxOccurs="unbounded">
										<!-- Required "OperatingSystem"-->
										<xsd:complexType>
											<xsd:sequence minOccurs="0" maxOccurs="unbounded">
												<xsd:element name="Description" type="xsd:string" minOccurs="0"/>
												<xsd:element name="TaggedNotes" type="TaggedNotesType" minOccurs="0"/>
												<xsd:element name="HwThreadMode" type="xsd:string" minOccurs="0"/>
											</xsd:sequence>
											<xsd:attribute name="Family" type="xsd:string"/>
											<xsd:attribute name="Name" type="xsd:string"/>
											<xsd:attribute name="Version" type="xsd:string"/>
										</xsd:complexType>
									</xsd:element>
								</xsd:sequence>
							</xsd:complexType>
						</xsd:element>
						<!-- A workload is the program used to procude the output. In VMSTAT, the workload is just VMSTAT itself -->
						<xsd:element name="Workload" minOccurs="0" maxOccurs="1">
							<!-- Required -->
							<xsd:complexType>
								<xsd:sequence>
									<xsd:element name="RunByUser" type="xsd:string" minOccurs="1" maxOccurs="1">
										<!-- Required -->
									</xsd:element>
									<xsd:element name="ShortLegend" type="xsd:string" minOccurs="1" maxOccurs="1">
										<!-- Required -->
									</xsd:element>
									<xsd:element name="Description" type="xsd:string" minOccurs="0" maxOccurs="1"/>
									<xsd:element name="TaggedNotes" type="TaggedNotesType" minOccurs="0" maxOccurs="1">
										<!-- Optional -->
									</xsd:element>
								</xsd:sequence>
								<xsd:attribute name="Name" type="xsd:string"/>
								<xsd:attribute name="Version" type="xsd:string"/>
								<xsd:attribute name="WorkloadFamily" type="xsd:string"/>
							</xsd:complexType>
						</xsd:element>
					</xsd:sequence>
					<xsd:attribute name="LparId" type="xsd:integer"/>
					<xsd:attribute name="Hostname" type="xsd:string"/>
				</xsd:complexType>
			</xsd:element>
			<!-- The Validation tag is not used by VMSTAT at all -->
			<xsd:element name="Validation" type="xsd:string" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
		<xsd:attribute name="NodeClass" type="xsd:string"/>
		<xsd:attribute name="NodeId" type="xsd:integer"/>
	</xsd:complexType>
	<!-- ########################################################################### 	-->
	<!-- Common Collection tags which contain also VMSTAT specific case. START 		-->
	<!-- ########################################################################### 	-->
	<xsd:complexType name="CollectionDataType">
		<xsd:sequence>
			<xsd:element name="SystemConfiguration" minOccurs="1" maxOccurs="1">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="MemoryMode" type="xsd:string" minOccurs="0" maxOccurs="1"/>
						<xsd:element name="Lcpus" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
						<xsd:element name="Entitlement" type="xsd:float" minOccurs="0" maxOccurs="1"/>
						<xsd:element name="Drives" type="xsd:unsignedInt" minOccurs="0" maxOccurs="1"/>
						<xsd:element name="Memory" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
						<xsd:element name="NumWpars" type="xsd:unsignedInt" minOccurs="0" maxOccurs="1"/>
						<xsd:element name="MemoryPoolSize" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
						<xsd:element name="TrueMemory" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
						<xsd:element name="MemoryLimit" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
						<xsd:element name="CpuLimit" type="xsd:unsignedInt" minOccurs="0" maxOccurs="1"/>
						<xsd:element name="Rset" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<!-- A Collection Frame matches one sample VMSTAT data collection per interval-->
			<xsd:element name="CollectionFrame" minOccurs="1" maxOccurs="unbounded">
				<!-- Required -->
				<xsd:complexType>
					<xsd:sequence minOccurs="0" maxOccurs="unbounded">
						<xsd:element name="XmlFormatVersion" type="xsd:string" minOccurs="0" maxOccurs="1"/>
						<xsd:element name="CollectionHeader" minOccurs="0" maxOccurs="1">
							<!-- Required -->
							<xsd:complexType>
								<xsd:sequence minOccurs="0" maxOccurs="unbounded">
									<xsd:element name="CollectedByUser" type="xsd:string" minOccurs="0" maxOccurs="1">
										<!-- Required -->
									</xsd:element>
									<xsd:element name="CollectionTool" minOccurs="0" maxOccurs="1">
										<!-- Required -->
										<xsd:complexType>
											<xsd:sequence minOccurs="0" maxOccurs="unbounded">
												<xsd:element name="Name" type="xsd:string" minOccurs="0" maxOccurs="1">
													<!-- Required -->
												</xsd:element>
												<xsd:element name="Command" type="xsd:string" minOccurs="0" maxOccurs="unbounded">
													<!-- Required -->
												</xsd:element>
												<xsd:element name="Version" type="xsd:string" minOccurs="0" maxOccurs="1">
													<!-- Required -->
												</xsd:element>
											</xsd:sequence>
											<xsd:attribute name="Name" type="xsd:string"/>
											<xsd:attribute name="Units" type="xsd:string"/>
										</xsd:complexType>
									</xsd:element>
									<xsd:element name="TimePeriod" minOccurs="0" maxOccurs="1">
										<!-- Required -->
										<xsd:complexType>
											<xsd:sequence>
												<xsd:element name="TimeStamp" type="TimeStampType" minOccurs="0" maxOccurs="unbounded"/>
												<xsd:element name="TimeDuration" type="TimeDurationType" minOccurs="0" maxOccurs="unbounded"/>
											</xsd:sequence>
										</xsd:complexType>
									</xsd:element>
									<xsd:element name="StartedByUser" type="xsd:string" minOccurs="0"/>
									<xsd:element name="Validation" minOccurs="0" maxOccurs="1">
										<xsd:complexType>
											<xsd:sequence minOccurs="0" maxOccurs="unbounded">
												<xsd:element name="GeneralStatus" type="xsd:string" minOccurs="0" maxOccurs="1"/>
												<xsd:element name="ReviewedBy" type="xsd:string" minOccurs="0" maxOccurs="1"/>
												<xsd:element name="TimeStamp" type="TimeStampType" minOccurs="0" maxOccurs="1"/>
												<xsd:element name="InvalidReason" type="xsd:string" minOccurs="0" maxOccurs="1"/>
												<xsd:element name="Comments" type="xsd:string" minOccurs="0" maxOccurs="1"/>
											</xsd:sequence>
										</xsd:complexType>
									</xsd:element>
									<xsd:element name="CollectionID" type="xsd:integer" minOccurs="0" maxOccurs="1"/>
								</xsd:sequence>
							</xsd:complexType>
						</xsd:element>
						<!-- ########################################################################### 	-->
						<!-- VMSTAT Specific tags and types START 						-->
						<!-- ########################################################################### 	-->
						<xsd:element name="CollectedData" minOccurs="1" maxOccurs="1">
							<xsd:complexType>
								<xsd:sequence>
									<xsd:element name="SumStats" type="SumStatsType" minOccurs="1" maxOccurs="1"/>
									<xsd:element name="VmmStats" type="VmmStatsType" minOccurs="1" maxOccurs="1"/>
									<xsd:element name="PerPgSzSumStats" type="PerPageSizeStatsType" minOccurs="1" maxOccurs="unbounded"/>
									<xsd:element name="Interrupt" type="InterruptType" minOccurs="1" maxOccurs="unbounded"/>
									<xsd:element name="WparStats" type="WparStatsType" minOccurs="1" maxOccurs="unbounded"/>
									<xsd:element name="PerPageSizeStats" type="PerPageSizeStatsType" minOccurs="1" maxOccurs="unbounded"/>
								</xsd:sequence>
							</xsd:complexType>
						</xsd:element>
						<xsd:element name="CollectionFooter" minOccurs="0" maxOccurs="1">
							<!-- NOT Required -->
							<xsd:complexType>
								<xsd:sequence minOccurs="0" maxOccurs="unbounded">
									<xsd:element name="CollectedByUser" type="xsd:string" minOccurs="0" maxOccurs="1">
										<!-- NOT Required -->
									</xsd:element>
									<xsd:element name="CollectionTool" minOccurs="0" maxOccurs="1">
										<!-- NOT Required -->
										<xsd:complexType>
											<xsd:sequence minOccurs="0" maxOccurs="unbounded">
												<xsd:element name="Name" type="xsd:string" minOccurs="0" maxOccurs="1">
													<!-- NOT Required -->
												</xsd:element>
												<xsd:element name="Command" type="xsd:string" minOccurs="0" maxOccurs="unbounded">
													<!-- NOT Required -->
												</xsd:element>
												<xsd:element name="Version" type="xsd:string" minOccurs="0" maxOccurs="1">
													<!-- NOT Required -->
												</xsd:element>
											</xsd:sequence>
											<xsd:attribute name="Name" type="xsd:string"/>
											<xsd:attribute name="Units" type="xsd:string"/>
										</xsd:complexType>
									</xsd:element>
									<xsd:element name="TimePeriod" minOccurs="0" maxOccurs="1">
										<!-- Required -->
										<xsd:complexType>
											<xsd:sequence>
												<xsd:element name="TimeStamp" type="TimeStampType" minOccurs="0" maxOccurs="unbounded"/>
												<xsd:element name="TimeDuration" type="TimeDurationType" minOccurs="0" maxOccurs="unbounded"/>
											</xsd:sequence>
										</xsd:complexType>
									</xsd:element>
									<xsd:element name="StartedByUser" type="xsd:string" minOccurs="0"/>
									<xsd:element name="CollectionID" type="xsd:integer" minOccurs="0" maxOccurs="1"/>
								</xsd:sequence>
							</xsd:complexType>
						</xsd:element>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<!-- ########################################################################### 	-->
	<!-- VMSTAT Specific types used in the CollectedData tag START 				-->
	<!-- ########################################################################### 	-->
		<xsd:complexType name="ProcessingHeaderType">
		<xsd:sequence minOccurs="0"
			maxOccurs="unbounded">
			<xsd:element name="Command"
				type="xsd:string" minOccurs="0" maxOccurs="1">
			</xsd:element><!-- Required if <ProcessingHeader> present -->
			<xsd:element name="XmlFormatVersion" type="xsd:string" maxOccurs="1" minOccurs="0">
			</xsd:element><!-- Required if <ProcessingHeader> present -->
			<xsd:element name="TimeStamp"
				maxOccurs="unbounded" minOccurs="0" type="TimeStampType">
			</xsd:element><!-- Required if <ProcessingHeader> present -->
			<xsd:element name="CollectionId"
				type="xsd:integer" maxOccurs="1" minOccurs="0">
			</xsd:element><!-- Optional if <ProcessingHeader> present -->
			<xsd:element name="ProcessingID"
				type="xsd:string" minOccurs="0" maxOccurs="1">
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>

	<xsd:complexType name="TimeStampType">
		<xsd:simpleContent>
			<xsd:extension
				base="xsd:string">
				<xsd:attribute name="Type" type="xsd:string">
				</xsd:attribute>
				<xsd:attribute name="Units" type="xsd:string">
				</xsd:attribute>
				<xsd:attribute name="Name" type="xsd:string">
				</xsd:attribute>
			</xsd:extension>
		</xsd:simpleContent>
	</xsd:complexType>

	<xsd:complexType
		name="TimeDurationType">
		<xsd:simpleContent>
			<xsd:extension base="xsd:string">
				<xsd:attribute name="Name" type="xsd:string">
				</xsd:attribute>
				<xsd:attribute name="Units" type="xsd:string">
				</xsd:attribute>
			</xsd:extension>
		</xsd:simpleContent>
	</xsd:complexType>

	<xsd:complexType name="NodeTagType">
		<xsd:simpleContent>
			<xsd:extension base="xsd:string">
				<xsd:attribute name="Key" type="xsd:string">
				</xsd:attribute>
			</xsd:extension>
		</xsd:simpleContent>
	</xsd:complexType>

	<xsd:complexType name="CpuStatsType">
		<xsd:sequence>
			<xsd:element name="CPUUtil">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="User" type="xsd:float" minOccurs="0" maxOccurs="1"/>
						<xsd:element name="System" type="xsd:float" minOccurs="0" maxOccurs="1"/>
						<xsd:element name="Wait" type="xsd:float" minOccurs="0" maxOccurs="1"/>
						<xsd:element name="Idle" type="xsd:float" minOccurs="0" maxOccurs="1"/>
						<xsd:element name="mpcSendInterrupt" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
						<xsd:element name="mpcReceiveInterrupt" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
						<xsd:element name="DeviceInterrupt" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
						<xsd:element name="SoftwareInterrupt" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
						<xsd:element name="DecrementerInterrupt" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
						<xsd:element name="PhantomInterrupt" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
						<xsd:element name="ContextSwitch" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
						<xsd:element name="SysCall" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
						<xsd:element name="NumFork" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
						<xsd:element name="Traps" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
					</xsd:sequence>
					<xsd:attribute name="CPUID" type="xsd:string"/>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="KernelThrdStatsType">
		<xsd:sequence>
			<xsd:element name="RunnableThreads" type="xsd:unsignedInt" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="WaitingThreads" type="xsd:unsignedInt" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="PhysIO" type="xsd:unsignedInt" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="IOWait" type="xsd:unsignedInt" minOccurs="1" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="SumStatsType">
		<xsd:sequence>
			<xsd:element name="MemoryStats" type="MemoryStatsType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="AMEStats" type="AMEStatsType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="CPUStats" type="CpuStatsType" minOccurs="1" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="VmmStatsType">
		<xsd:sequence>
			<xsd:element name="MemoryStats" type="MemoryStatsType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="AMEStats" type="AMEStatsType" minOccurs="1" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="AMSStatsType">
		<xsd:sequence>
			<xsd:element name="HypervisorPgIn" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="TimeWaitForHypPgIn" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="minioent" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="iomeminuse" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="iomemfree" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="iohighwatermark" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="iomemallocfail" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="npools" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="PMem" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="LoanedPgs" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>

	<xsd:complexType name="AMEStatsType">
		<xsd:sequence>
			<xsd:element name="CompressedPercent" type="xsd:float" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="CompressedPages" type="xsd:float" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="CpoolSize" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="PctmemusedForCpool" type="xsd:float" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="CpoolFreepgs" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="TargetMemExpFactor" type="xsd:float" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="AchievedMemExpFactor" type="xsd:float" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="AmeDeficitSize" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="CpoolPageins" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="CpoolPageouts" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>

	<xsd:complexType name="MemoryStatsType">
		<xsd:sequence>
		    <xsd:element name="MemoryFrames" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="VirtualPages" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="MemoryPages" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="LruablePages" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="FreePages" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Mempools" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="PinnedPages" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="MaxpinPercent" type="xsd:float" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="MinpermPercent" type="xsd:float" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="MaxpermPercent" type="xsd:float" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="NumpermPercent" type="xsd:float" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="FilePages" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="NumClientPercent" type="xsd:float" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="MaxClientPercent" type="xsd:float" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="ClientPages" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="RemotePageouts" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="DiskioBlocked" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="PgspioBlocked" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="FsioBlocked" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="ClientFsioBlocked" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="ExtpgrFsioBlocked" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="ActiveLgpgs" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="FreeLgpgs" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Pageins" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Pageouts" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Reclaims" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="FilePageins" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="FilePageouts" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="PageSteals" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="PageScans" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Cycles" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="PgspPageins" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="PgspPageouts" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="ZeroFilledPgflts" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="ExecFilledPgflts" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="ClockExaminedPgs" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="ClockCycles" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="ClockFreedPgs" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Backtracks" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="LockMisses" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="FreeFrameWaits" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="ExtendXptWaits" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="PendingIOWaits" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="StartIOs" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="IOsDone" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="LgpgHighWaterCount" type="xsd:unsignedLong" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="WparStatsType">
		<xsd:sequence>
			<xsd:element name="WparName" type="xsd:string" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="KernelThrdStats" type="KernelThrdStatsType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="MemoryStats" type="MemoryStatsType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="CPUStats" type="CpuStatsType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="AMSStats" type="AMSStatsType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="AMEStats" type="AMEStatsType" minOccurs="1" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>

	<xsd:complexType name="PerPageSizeStatsType">
		<xsd:sequence>
			<xsd:element name="PageSize" type="xsd:string" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="MemoryStats" type="MemoryStatsType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="AMEStats" type="AMEStatsType" minOccurs="1" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>

	<xsd:complexType name="InterruptType">
		<xsd:sequence>
			<xsd:element name="Priority" type="xsd:integer" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="Level" type="xsd:integer" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="Type" type="xsd:string" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="Count" type="xsd:integer" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="Module" type="xsd:string" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="Address" type="xsd:unsignedInt" minOccurs="1" maxOccurs="1"/>

		</xsd:sequence>
	</xsd:complexType>

	<!-- ########################################################################### 	-->
	<!-- VMSTAT Specific types used in the CollectedData tag END 				-->
	<!-- ########################################################################### 	-->
	<!-- ########################################################################### -->
	<!-- VMSTAT Specific tags and types END						 -->
	<!-- ########################################################################### -->
</xsd:schema>
