<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2007 sp2 (http://www.altova.com) by Dagmar Haller (California ISO) -->
<xs:schema xmlns:m="http://www.caiso.com/soa/2008-08-13/GeneratorRDT.xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.caiso.com/soa/2008-08-13/GeneratorRDT.xsd" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<xs:element name="GeneratorRDT" type="m:GeneratorRDT"/>
	<xs:complexType name="GeneratorRDT">
		<xs:sequence>
			<xs:element name="MessageHeader" type="m:MessageHeader" minOccurs="0"/>
			<xs:element name="MessagePayload" type="m:MessagePayload"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="MessageHeader">
		<xs:annotation>
			<xs:documentation>Message header containing descriptive information about the message.</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="TimeDate" type="xs:dateTime">
				<xs:annotation>
					<xs:documentation>Application level relevant time and date for when this  instance of the message was produced.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="Source" type="xs:string">
				<xs:annotation>
					<xs:documentation>Source system that publishes the message. For CAISO, examples include ADS, ALFS, CAP, CRR, EMS, ETCC, FNM, IFM, MF, PI, RLC, RTM, SaMC, SIBR, SLIC, etc.</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="MessagePayload">
		<xs:sequence>
			<xs:element name="MasterFileRDTRecord" type="m:MasterFileRDTRecord" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Holds elements for retrieving RDTs or submitting RDT updates.</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="MasterFileRDTRecord">
		<xs:sequence>
			<xs:element name="RDTEffectiveDate" type="xs:dateTime"/>
			<xs:element name="SchedulingCoordinator" type="xs:string"/>
			<xs:element name="Comment" type="xs:string" minOccurs="0"/>
			<xs:element name="RegisteredGenerator" type="m:RegisteredGenerator" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="RegisteredGenerator">
		<xs:sequence>
			<xs:element name="name" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Unique name among objects owned by the same parent.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="mrid" type="m:mrid">
				<xs:annotation>
					<xs:documentation>MRID stands for master resource identifier which should be globally unique.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="resourceType" type="m:ResourceType">
				<xs:annotation>
					<xs:documentation>CAISO Extension Generator Resource type</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="minOffTime" type="m:Minutes" minOccurs="0">
				<xs:annotation>
					<xs:documentation>minimum off time after shut  down Proposed by Service Definition Team. This attribute may be used also in the GenerationBid class. The reason that the attribute is also modeled in this class is that it is resource attribute and needs to be persistently stored.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="minOnTime" type="m:Minutes" minOccurs="0">
				<xs:annotation>
					<xs:documentation>minimum on time after start up Proposed by Service Definition Team. This attribute may be used also in the GenerationBid class. The reason that the attribute is also modeled in this class is that it is resource attribute and needs to be persistently stored.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="maxOnTime" type="m:Minutes" minOccurs="0">
				<xs:annotation>
					<xs:documentation>maximum on time after start up Proposed by Service Definition Team. This attribute may be used also in the GenerationBid class. The reason that the attribute is also modeled in this class is that it is resource attribute and needs to be persistently stored.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="dispatchFlag" type="m:YesNo" minOccurs="0">
				<xs:annotation>
					<xs:documentation>CAISO Extension Dispatch flag: indicates whether the resource is dispatchable (Y/N) Proposed by SIEMENS team in the RegisteredGenerator class. It is move to the RegisteredResource class for the participating load dispatch purpose</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="isAggregatedRes" type="m:YesNo" minOccurs="0">
				<xs:annotation>
					<xs:documentation>a flag to indicate if a resource is an aggregated resource Proposed by the Service Definition Team</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="LMPMFlag" type="m:YesNo" minOccurs="0">
				<xs:annotation>
					<xs:documentation>CAISO Extension LMPM flag: indicates whether the resource is subject to the LMPM test (Yes/No) Proposed by servcie definition team</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="mustOfferFlag" type="m:YesNo" minOccurs="0">
				<xs:annotation>
					<xs:documentation>An identifier of a resource that has a must offer obligation, either due to a RA obligation or through other obligation (ie future capacity market procurement, RCST, etc.)</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="mustOfferObligationQualified" type="m:MOOQualifiedEnumeration" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Must Offer Obligation Qualified Flag: Y - Resource is Must Offer N - Resource is not Must Offer R - Resource is eligible for Must Offer based on RA Capacity or RCST designation in any given trading hour</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="marketParticipationFlag" type="m:YesNo" minOccurs="0">
				<xs:annotation>
					<xs:documentation>CAISO Extension Market Participation flag: indicates whether the resource participate in the market (Y/N)</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="resourceAdequacyFlag" type="m:YesNo" minOccurs="0">
				<xs:annotation>
					<xs:documentation>An identifier of a resource that is under the Resource Adeqacy (RA) program.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="priceSetFlagDA" type="m:YesNo" minOccurs="0">
				<xs:annotation>
					<xs:documentation>CAISO Extension Price setting flag: indicates whether a resource is capable of setting the Market Clearing Price (Y) for the DA market, and if not, indicates whether the resource must submit bids for energy at $ 0 (S) or not (N) Initially in the RegisteredGenerator class. It wasmove to the RegisteredResource class for the participating load dispatch purpose</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="priceSetFlagRT" type="m:YesNo" minOccurs="0">
				<xs:annotation>
					<xs:documentation>CAISO Extension Price setting flag: indicates whether a resource is capable of setting the Market Clearing Price (Y) for the RT market, and if not, indicates whether the resource must submit bids for energy at $ 0 (S) or not (N) Initially in the RegisteredGenerator class. It wasmove to the RegisteredResource class for the participating load dispatch purpose</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="maximumOperatingMW" type="m:ActivePower" minOccurs="0">
				<xs:annotation>
					<xs:documentation>This is the maximum operating MW limit the dispatcher can enter for this unit</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="minimumOperatingMW" type="m:ActivePower" minOccurs="0">
				<xs:annotation>
					<xs:documentation>This is the minimum operating MW limit the dispatcher can enter for this unit.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="raiseRampRate" type="m:PowerROCPerMin" minOccurs="0"/>
			<xs:element name="unitType" type="m:UnitType" minOccurs="0">
				<xs:annotation>
					<xs:documentation>CAISO Extension - Generating unit type Combined Cycle Gas Turbine Hydro Turbine Other Photovoltaic Hydro Pump-Turbine Reciprocating Engine Steam Turbine Synchronous Condenser Wind Turbine</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="genType" type="m:GenType" minOccurs="0">
				<xs:annotation>
					<xs:documentation>CAISO Extension - Generating type indicating Hydro generator</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="RMRFlag" type="m:RMRFlag" minOccurs="0">
				<xs:annotation>
					<xs:documentation>CAISO Extension Reliability must run (RMR) flag: indicates whether the unit is RMR</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="useLimitFlag" type="m:YesNo" minOccurs="0">
				<xs:annotation>
					<xs:documentation>CAISO Extension Use limit flag: indicates if the use-limited resource is fully scheduled (or has some slack for real-time dispatch) (Y/N Proposed by SIEMENS team</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="minLoadCost" type="m:CostPerHour" minOccurs="0">
				<xs:annotation>
					<xs:documentation>minimum load cost. Value is ($/hr) Proposed by the service definition team.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="maxPumpingLevel" type="m:ActivePower" minOccurs="0">
				<xs:annotation>
					<xs:documentation>max pumping level of a hydro pump unit</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="operatingMaintenanceCost" type="m:CostPerEnergyUnit" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The portion of the Operating Cost of a Generating Resource that is not related to fuel cost.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="costBasis" type="m:CostBasis" minOccurs="0"/>
			<xs:element name="fuelSource" type="m:FuelSource" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Values: Natural Gas Based Resource, Non Natural Gas Based Resource "NG" - Natural-Gas-Based Resource - a Resource that is powered by Natural Gas "NNG" - Non-Natural-Gas-Based Resource - a Resouce that is powered by some other fuel than Natural Gas</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="constrainedOutputFlag" type="m:YesNo" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Constrained Output Generator (COG) Indicator (Yes/No), per Generating Resource</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="maxStartUpsPerDay" type="xs:integer" minOccurs="0">
				<xs:annotation>
					<xs:documentation>maximum start ups per day Proposed by Service Definition Team. This attribute may be used also in the GenerationBid class. The reason that the attribute is also modeled in this class is that it is resource attribute and needs to be persistently stored.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="pumpingCost" type="m:CostPerHour" minOccurs="0"/>
			<xs:element name="pumpingFactor" type="xs:float" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Pumping factor for pump storage units, conversion factor between generating and pumping.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="qualifyingFacilityOwner" type="xs:string" minOccurs="0"/>
			<xs:element name="pumpMinUpTime" type="m:Minutes" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The minimum up time aspect for the pump in a pump storage unit</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="pumpMinDownTime" type="m:Minutes" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The minimum down time for the pump in a pump storage unit.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="costRankLMPM" type="m:RankTypeLMPM" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Priority for the cost based LMPM DEB processing for RLC.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="priceRankLMPM" type="m:RankTypeLMPM" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Priority for the LMP based LMPM DEB processing for RLC.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="negotiateRankLMPM" type="m:RankTypeLMPM" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Priority for the negotiate based LMPM DEB processing for RLC.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="loadFollowingUpMSS" type="m:YesNo" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Certifies resources for use in MSS Load Following Up with the CAISO.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="loadFollowingDownMSS" type="m:YesNo" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Certifies resources for use in MSS Load Following Down with the CAISO.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="pumpShutdownTime" type="xs:integer" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The shutdown time (minutes) of the pump aspect of a pump storage unit.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="pumpShutdownCost" type="xs:float" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The cost to shutdown a pump during the pump aspect of a pump storage unit.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="TGEnergyProductType" type="m:EnergyProductTypeTG" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Tie Generator Energy Product Type (Tie Generators are modeled as Generators)</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="AQMDistrict" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The Air Quality Management District or Air Pollution Control District in which the resource is located.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="PGAName" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The name of an agreement between the CAISO and a Participating Generator; a pro forma version of which is set forth in Appendix B.2 of the CAISO Tariff.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="priorityType" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Priority Type: REGM - Regulatory Must-Run RMR - Reliability Must Run PIRP - Participate in PIRP program</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="startUpCodeType" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Code used to determine the startup characteristics: FAST= Generating Units that have a Start Up Time less than ten minutes and can provide non-spin. Blank =  All other resources.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="MinDispatchLevel" type="m:ActivePower" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Minimum Dispatchable Level in MW</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="pumpMaxStartUps" type="xs:integer" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Maximum number of daily startups for a Pump</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="ResourceCapacity" type="m:MasterfileRDTResCapacity" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>This class model the various capacities of a resource. A resource may have numbers of capacities related to operating, ancillary services, energy trade and so forth. The types are but not limited to: Ancillary Service Regulation Up Regulation Dn Spinning Reserve Non-Spinning Reserve Operating Reserve RUC Energy Trade</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="ResourceCertification" type="m:GeneratorRDTResCertification" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>This class represent the resource certification for a specific product type. For example, a resource is certified for Non-Spinning reserve for RTM.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="FuelRegion" type="m:GeneratorRDTFuelRegionType" minOccurs="0"/>
			<xs:element name="RegulatingLimit" type="m:GeneratorRDTRegulatingLimit" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>This class represents the physical characteristc of a generator regarding the regulating limit</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="ForbiddenRegion" type="m:GeneratorRDTForbiddenRegion" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Forbbiden region is operating ranges where the units are unable to maintain steady operation without causing equipment damage. The four attributes that define a forbidden region are the low MW, the High MW, the crossing time, and the crossing cost.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="RampRateCurve" type="m:RampRateCurve" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Ramp rate as a function of resource MW output</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="HeatRateCurve" type="m:HeatRateCurve" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Relationship between unit heat rate in MBtu/hour per MW (Y-axis) and  unit output in MW (X-axis). The heat input is from all fuels.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="FuelCostCurve" type="m:FuelCostCurve" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Relationship between unit fuel cost in $/kWh(Y-axis) and  unit output in MW (X-axis).</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="StartUpTimeCurve" type="m:StartUpTimeCurve" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Startup time curve as a function of down time, where time is specified in minutes.  Relationship between unit startup time (Y1-axis) vs. unit elapsed down time (X-axis).</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="StartUpEnergyCurve" type="m:StartUpEnergyCurve" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The Energy consumption of a Generating Resource to complete a Start-Up.(x= cooling time). Form Startup Energy Curve. xAxisData -&gt; cooling time y1AxisData -&gt; MW</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="StartUpFuelCurve" type="m:StartUpFuelCurve" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The fuel consumption of a Generating Resource to complete a Start-Up.(x=cooling time) Form Startup Fuel Curve. xAxisData -&gt; cooling time y1AxisData -&gt; MBtu</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="StartUpCostCurve" type="m:StartUpCostCurve" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Startup costs and time as a function of down time.  Relationship between unit startup cost (Y1-axis) vs. unit elapsed down time (X-axis). For CAISO, the Y2-axis is not used.</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:simpleType name="mrid">
		<xs:restriction base="xs:string">
			<xs:maxLength value="32"/>
			<xs:minLength value="1"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="ResourceType">
		<xs:annotation>
			<xs:documentation>GEN LOAD TG</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:enumeration value="GEN"/>
			<xs:enumeration value="LOAD"/>
			<xs:enumeration value="TG"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="Minutes">
		<xs:annotation>
			<xs:documentation>Time, in minutes</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="value" type="xs:float" minOccurs="0"/>
			<xs:element name="units" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>"minutes"</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:simpleType name="YesNo">
		<xs:restriction base="xs:string">
			<xs:enumeration value="YES"/>
			<xs:enumeration value="NO"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="MOOQualifiedEnumeration">
		<xs:annotation>
			<xs:documentation>Y - Resource is Must Offer N - Resource is not Must Offer R - Resource is eligible for Must Offer based on RA Capacity or RCST designation in any given trading hour</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:enumeration value="Y"/>
			<xs:enumeration value="N"/>
			<xs:enumeration value="R"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="ActivePower">
		<xs:annotation>
			<xs:documentation>Product of RMS value of the voltage and the RMS value of the in-phase component of the current (Megawatt)</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="value" type="xs:float" minOccurs="0"/>
			<xs:element name="units" type="xs:string" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="PowerROCPerMin">
		<xs:annotation>
			<xs:documentation>Megawatt rate of change per minute</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="value" type="xs:float" minOccurs="0"/>
			<xs:element name="units" type="xs:string" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:simpleType name="UnitType">
		<xs:annotation>
			<xs:documentation>Combined Cycle Gas Turbine Hydro Turbine Other Photovoltaic Hydro Pump-Turbine Reciprocating Engine Steam Turbine Synchronous Condenser Wind Turbine Pump</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:enumeration value="CCYC"/>
			<xs:enumeration value="GTUR"/>
			<xs:enumeration value="HYDR"/>
			<xs:enumeration value="OTHR"/>
			<xs:enumeration value="PHOT"/>
			<xs:enumeration value="PTUR"/>
			<xs:enumeration value="RECP"/>
			<xs:enumeration value="STUR"/>
			<xs:enumeration value="SYNC"/>
			<xs:enumeration value="WIND"/>
			<xs:enumeration value="PUMP"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="GenType">
		<xs:annotation>
			<xs:documentation>Identifying Hydro generating resources versus other generating resources</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:enumeration value="H"/>
			<xs:enumeration value="T"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="RMRFlag">
		<xs:restriction base="xs:string">
			<xs:enumeration value="YES"/>
			<xs:enumeration value="NO"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="CostPerHour">
		<xs:annotation>
			<xs:documentation>Cost, in units of currency, per hour of elapsed time</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="value" type="xs:float" minOccurs="0"/>
			<xs:element name="units" type="xs:string" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="CostPerEnergyUnit">
		<xs:annotation>
			<xs:documentation>Cost, in units of currency, per megawatt hour of electricity generated</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="value" type="xs:float" minOccurs="0"/>
			<xs:element name="units" type="xs:string" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:simpleType name="CostBasis">
		<xs:annotation>
			<xs:documentation>Proxy Cost Registered Cost</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:enumeration value="PRXC"/>
			<xs:enumeration value="REGC"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="FuelSource">
		<xs:annotation>
			<xs:documentation>Bio Gas (Landfill, Sewage, Digester, etc.) Biomass Coal DIST Natural Gas Geothermal HRCV None Nuclear Oil Other Solar Waste to Energy Water Wind</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:enumeration value="BGAS"/>
			<xs:enumeration value="BIOM"/>
			<xs:enumeration value="COAL"/>
			<xs:enumeration value="DIST"/>
			<xs:enumeration value="GAS"/>
			<xs:enumeration value="GEOT"/>
			<xs:enumeration value="HRCV"/>
			<xs:enumeration value="NONE"/>
			<xs:enumeration value="NUCL"/>
			<xs:enumeration value="OIL"/>
			<xs:enumeration value="OTHR"/>
			<xs:enumeration value="SOLR"/>
			<xs:enumeration value="WAST"/>
			<xs:enumeration value="WATR"/>
			<xs:enumeration value="WIND"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="RankTypeLMPM">
		<xs:annotation>
			<xs:documentation>Priority ranking for Cost, LMP, and negotiated LMPM processing.</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:enumeration value="1"/>
			<xs:enumeration value="2"/>
			<xs:enumeration value="3"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="EnergyProductTypeTG">
		<xs:annotation>
			<xs:documentation>Tie Generator Energy Product Type enumeration: DYN FIRM</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:enumeration value="DYN"/>
			<xs:enumeration value="FIRM"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="MasterfileRDTResCapacity">
		<xs:sequence>
			<xs:element name="capacityType" type="m:capacityType">
				<xs:annotation>
					<xs:documentation>capacity type The types are but not limited to: Regulation Up Regulation Dn Spinning Reserve Non-Spinning Reserve FOO capacity MOO capacity</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="defaultCapacity" type="m:ActivePower">
				<xs:annotation>
					<xs:documentation>default capacity</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:simpleType name="capacityType">
		<xs:restriction base="xs:string">
			<xs:enumeration value="SR"/>
			<xs:enumeration value="NR"/>
			<xs:enumeration value="RR"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="GeneratorRDTResCertification">
		<xs:sequence>
			<xs:element name="certifiedNonspinDAM" type="m:YesNo" minOccurs="0"/>
			<xs:element name="certifiedNonspinRTM" type="m:YesNo" minOccurs="0"/>
			<xs:element name="certifiedPIRP" type="m:YesNo" minOccurs="0"/>
			<xs:element name="certifiedRegulation" type="m:YesNo" minOccurs="0"/>
			<xs:element name="certifiedSpin" type="m:YesNo" minOccurs="0"/>
			<xs:element name="certifiedRUC" type="m:YesNo" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="GeneratorRDTFuelRegionType">
		<xs:sequence>
			<xs:element name="fuelRegionType" type="m:FuelRegionType" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The type of fuel region</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:simpleType name="FuelRegionType">
		<xs:annotation>
			<xs:documentation>CISO PGE2 SCE2 SDG1 SDG2 SCE1</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:enumeration value="CISO"/>
			<xs:enumeration value="PGE2"/>
			<xs:enumeration value="SCE2"/>
			<xs:enumeration value="SDG1"/>
			<xs:enumeration value="SDG2"/>
			<xs:enumeration value="SCE1"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="GeneratorRDTRegulatingLimit">
		<xs:sequence>
			<xs:element name="highLimit" type="m:ActivePower" minOccurs="0"/>
			<xs:element name="lowLimit" type="m:ActivePower" minOccurs="0"/>
			<xs:element name="segmentNumber" type="xs:integer"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="GeneratorRDTForbiddenRegion">
		<xs:sequence>
			<xs:element name="crossTime" type="xs:integer" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Time to cross the forbidden region in minutes.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="highMW" type="xs:float" minOccurs="0">
				<xs:annotation>
					<xs:documentation>High end of the region definition</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="lowMW" type="xs:float" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Low end of the region definition.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="segmentNumber" type="xs:integer"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="RampRateCurve">
		<xs:sequence>
			<xs:element name="description" type="m:description" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Description of the object or instance.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="xAxisUnits" type="m:XAxisUnits" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The X-axis units of measure.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="y1AxisUnits" type="m:Y1AxisUnits" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The Y1-axis units of measure.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="y2AxisUnits" type="m:Y2AxisUnits" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The Y2-axis units of measure.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="rampRateType" type="m:RampRateType">
				<xs:annotation>
					<xs:documentation>How ramp rate is applied. Note: CAISO defines the ramp rate type as an enumeration.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="CurveSchedData" type="m:GeneratorRDTCurveSchedDataxy1y2" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Data point values for defining a curve or schedule</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:simpleType name="description">
		<xs:restriction base="xs:string">
			<xs:maxLength value="32"/>
			<xs:minLength value="1"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="XAxisUnits">
		<xs:annotation>
			<xs:documentation>The X-axis units of measure.</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:enumeration value="absoluteTime"/>
			<xs:enumeration value="normalizedTime"/>
			<xs:enumeration value="MW"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="Y1AxisUnits">
		<xs:annotation>
			<xs:documentation>The Y1-axis units of measure.</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:enumeration value="MW"/>
			<xs:enumeration value="MVAr"/>
			<xs:enumeration value="integer"/>
			<xs:enumeration value="unitOfCurrencyPerHour"/>
			<xs:enumeration value="amps"/>
			<xs:enumeration value="kV"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="Y2AxisUnits">
		<xs:annotation>
			<xs:documentation>The Y2-axis units of measure.</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:enumeration value="MW"/>
			<xs:enumeration value="MVAr"/>
			<xs:enumeration value="integer"/>
			<xs:enumeration value="amps"/>
			<xs:enumeration value="kV"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="RampRateType">
		<xs:annotation>
			<xs:documentation>ramp rate curve type</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:enumeration value="OP"/>
			<xs:enumeration value="REG"/>
			<xs:enumeration value="OP_RES"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="GeneratorRDTCurveSchedDataxy1y2">
		<xs:sequence>
			<xs:element name="xAxisData" type="xs:float" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The data value of the X-axis variable,  depending on the X-axis units</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="y1AxisData" type="xs:float" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The data value of the  first Y-axis variable, depending on the Y-axis units</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="y2AxisData" type="xs:float" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The data value of the second Y-axis variable (if present), depending on the Y-axis units</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="segmentNumber" type="xs:integer"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="HeatRateCurve">
		<xs:sequence>
			<xs:element name="description" type="m:description" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Description of the object or instance.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="xAxisUnits" type="m:XAxisUnits" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The X-axis units of measure.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="y1AxisUnits" type="m:Y1AxisUnits" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The Y1-axis units of measure.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="y2AxisUnits" type="m:Y2AxisUnits" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The Y2-axis units of measure.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="CurveSchedData" type="m:GeneratorRDTCurveSchedDataxy1y2" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Data point values for defining a curve or schedule</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="FuelCostCurve">
		<xs:sequence>
			<xs:element name="description" type="m:description" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Description of the object or instance.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="xAxisUnits" type="m:XAxisUnits" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The X-axis units of measure.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="y1AxisUnits" type="m:Y1AxisUnits" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The Y1-axis units of measure.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="CurveSchedData" type="m:GeneratorRDTCurveSchedDataxy1" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Data point values for defining a curve or schedule</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="GeneratorRDTCurveSchedDataxy1">
		<xs:sequence>
			<xs:element name="xAxisData" type="xs:float" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The data value of the X-axis variable,  depending on the X-axis units</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="y1AxisData" type="xs:float" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The data value of the  first Y-axis variable, depending on the Y-axis units</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="segmentNumber" type="xs:integer"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="StartUpTimeCurve">
		<xs:sequence>
			<xs:element name="description" type="m:description" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Description of the object or instance.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="xAxisUnits" type="m:XAxisUnits" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The X-axis units of measure.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="y1AxisUnits" type="m:Y1AxisUnits" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The Y1-axis units of measure.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="CurveSchedData" type="m:GeneratorRDTCurveSchedDataxy1" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Data point values for defining a curve or schedule</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="StartUpEnergyCurve">
		<xs:sequence>
			<xs:element name="description" type="m:description" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Description of the object or instance.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="xAxisUnits" type="m:XAxisUnits" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The X-axis units of measure.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="y1AxisUnits" type="m:Y1AxisUnits" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The Y1-axis units of measure.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="CurveSchedData" type="m:GeneratorRDTCurveSchedDataxy1" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Data point values for defining a curve or schedule</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="StartUpFuelCurve">
		<xs:sequence>
			<xs:element name="description" type="m:description" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Description of the object or instance.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="xAxisUnits" type="m:XAxisUnits" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The X-axis units of measure.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="y1AxisUnits" type="m:Y1AxisUnits" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The Y1-axis units of measure.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="CurveSchedData" type="m:GeneratorRDTCurveSchedDataxy1" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Data point values for defining a curve or schedule</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="StartUpCostCurve">
		<xs:sequence>
			<xs:element name="description" type="m:description" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Description of the object or instance.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="xAxisUnits" type="m:XAxisUnits" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The X-axis units of measure.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="y1AxisUnits" type="m:Y1AxisUnits" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The Y1-axis units of measure.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="CurveSchedData" type="m:GeneratorRDTCurveSchedDataxy1" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Data point values for defining a curve or schedule</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
</xs:schema>

