<?xml version="1.0" encoding="UTF-8"?>
<!-- Schema for the PJM Energy Market Participant XML Interface

     Copyright 2003 ALSTOM Corporation.

     Purpose:  This schema is used to specify the definition and format
               of all messages exchanged between the PJM energy market
               participants and the PJM market server.

     Author:   Phillip E. Hystad.

     Usage:    This schema is used in concert with the SOAP 1.1
               schema for exchange of messages.  The usage and
               examples are documented in the PJM XML External
               Interface Specification.

               The target namespace is:

                  http:/emkt.pjm.com/emkt/xml

     Revision
     History:


               [July 1st, 2007] Update. Reflects Revision 12 of the
               External Interface Specification.

               [March 15th, 2007] Update. Reflects Revision 11 of the
               External Interface Specification.

               [February 5th, 2006] Update. Reflects Revision 10 of the
               External Interface Specification.

               [November 9th, 2005] Update. Reflects Revision 9 of the
               External Interface Specification.

               [April 1st, 2005] Update. Reflects Revision 8 of the
               External Interface Specification.

               [November 16th, 2004] Update. Reflects Revision 7 of the
               External Interface Specification.

               [September 1st, 2004] Update. Reflects Revision 6 of the
               External Interface Specification.

               [October 17th, 2003] Update. Reflects Revision 5 of the
               External Interface Specification.

               [September 24, 2003] Update. Reflects Revision 4 of the
               External Interface Specification.

               [August 25, 2003] Update. Reflects Revision 3 of the
               External Interface Specification document.

               [July 30, 2003] Update. Reflects Revision 2 of the
               External Interface Specification document.

               [April 16, 2003] Original. Reflects Revision 1 of the
               External Interface Specification document.

-->

<schema targetNamespace="http://emkt.pjm.com/emkt/xml"
        xmlns:mkt="http://emkt.pjm.com/emkt/xml"
        xmlns="http://www.w3.org/2001/XMLSchema"
        elementFormDefault="qualified"
        attributeFormDefault="unqualified">

<!-- START OF PJM DEFINITIONS -->

<!--  AS Market Prices Type
-->

<complexType name="ASMarketPricesType">
   <sequence>
      <element name="ASMarketPricesHourly" minOccurs="0" maxOccurs="25">
         <complexType>
            <sequence>
               <element name="ASMarketPrice" minOccurs="0" maxOccurs="unbounded">
                  <complexType>
                     <all>
                        <element name="SPMCP" type="mkt:MWPriceType" minOccurs="0" maxOccurs="1"/>
                        <element name="RMCP" type="mkt:MWPriceType" minOccurs="0" maxOccurs="1"/>
                        <element name="DASRMCP" type="mkt:MWPriceType" minOccurs="0" maxOccurs="1"/>
                        <element name="Area" type="mkt:AreaNameType" minOccurs="0" maxOccurs="1"/>
                        <element name="ReserveZone" type="mkt:ReserveZoneNameType" minOccurs="0" maxOccurs="1"/>
                     </all>
                  </complexType>
               </element>
            </sequence>
         <attributeGroup ref="mkt:HourEndingGroup"/>
         </complexType>
      </element>
   </sequence>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  BidNodesType
-->

<complexType name="BidNodesType">
   <sequence>
      <element name="BidNode" minOccurs="0" maxOccurs="unbounded">
         <complexType>
            <all>
               <element name="NodeName" type="mkt:LocationNameType" minOccurs="1" maxOccurs="1"/>
               <element name="NodeType" type="mkt:NodeTypeType" minOccurs="1" maxOccurs="1"/>
               <element name="PnodeID" type="mkt:PNodeIDType" minOccurs="1" maxOccurs="1"/>
               <element name="CanSubmitFixed" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
               <element name="CanSubmitPriceSensitive" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
               <element name="CanSubmitIncrement" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
               <element name="CanSubmitDecrement" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
            </all>
         </complexType>
      </element>
   </sequence>
</complexType>

<!--  BidSegmentType
-->

<complexType name="BidSegmentType">
   <sequence minOccurs="0" maxOccurs="1">
      <element name="MW" type="mkt:MWType" minOccurs="1" maxOccurs="1"/>
      <element name="Price" type="mkt:MWPriceType" minOccurs="1" maxOccurs="1"/>
   </sequence>
   <attribute name="id" type="mkt:BidSegmentIDType" use="required"/>
</complexType>

<!--  Block Bid Type

      This block bid type is used for price sensitive demand bids and for
      virtual bids (incs/decs).

-->
<complexType name="BlockBidType">
   <sequence>
      <element name="BidSegment" type="mkt:BidSegmentType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>


<!--  Binding Limits Type
-->

<complexType name="BindingLimitsType">
   <sequence>
      <element name="BindingLimitsHourly" minOccurs="0" maxOccurs="25">
         <complexType>
         <sequence>
            <element name="BindingLimit" minOccurs="0" maxOccurs="unbounded">
               <complexType>
                  <sequence>
                     <element name="BranchName" type="mkt:BranchNameType" minOccurs="1" maxOccurs="1"/>
                     <element name="ContingencyName" type="mkt:ContingencyNameType" minOccurs="1" maxOccurs="1"/>
                     <element name="MarginalValue" type="mkt:MarginalValueType" minOccurs="1" maxOccurs="1"/>                     
                  </sequence>
               </complexType>
            </element>
         </sequence>
         <attributeGroup ref="mkt:HourEndingGroup"/>
         </complexType>
      </element>
   </sequence>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  CondensingUnitType
-->

<complexType name="CondensingUnitType">
   <all>
      <element name="CondensingAvailable" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
      <element name="CondenseNotificationTime" type="mkt:DeltaHoursType" minOccurs="0" maxOccurs="1"/>
      <element name="CondenseStartupCost" type="mkt:CostType"  minOccurs="0" maxOccurs="1"/>
      <element name="CondenseHourlyCost" type="mkt:CostType" minOccurs="0" maxOccurs="1"/>
      <element name="CondensePower" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
      <element name="CondenseToGenCost" type="mkt:CostType" minOccurs="0" maxOccurs="1"/>
   </all>
</complexType>

<!--  ConEd Contract Bid Type
-->

<complexType name="MUIConEdContractBidSetType">
    <sequence>
        <element name="MUIConEdContractBid" type="mkt:MUIConEdContractBidType" minOccurs="0" maxOccurs="unbounded"/>
    </sequence>
</complexType>

<complexType name="MUIConEdContractBidType">
   <sequence>
      <element name="ConEdContractBidHourly" minOccurs="0" maxOccurs="25">
         <complexType>
            <sequence>
               <element name="DAE600" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
               <element name="DAE400NotWilling" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
               <element name="DAE400Willing" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
               <element name="DAE400UpTo" type="mkt:BlockBidType" minOccurs="0" maxOccurs="1"/>
            </sequence>
            <attributeGroup ref="mkt:HourEndingGroup"/>
         </complexType>
      </element>
   </sequence>
   <attribute name="day" type="date" use="required"/>
</complexType>      

<!--  ConEd Contract Results Type
-->

<complexType name="MUIConEdContractResultsType">
   <sequence>
      <element name="ConEdContractResultsHourly" minOccurs="0" maxOccurs="25">
         <complexType>
         <all>
            <element name="ClearedMW600" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
            <element name="ClearedMW400" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
          </all>
         <attributeGroup ref="mkt:HourEndingGroup"/>
         </complexType>
      </element>
   </sequence>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  MUIConEdDefaultsType
-->

<complexType name="MUIConEdDefaultsType">
   <sequence>
      <element name="DAE600" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
      <element name="DAE400NotWilling" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
      <element name="DAE400Willing" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
      <element name="DAE400WillingUpTo" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
      <element name="DAE400WillingUpToPrice" type="mkt:MWPriceType" minOccurs="0" maxOccurs="1"/>
   </sequence>
</complexType>

<!--  Demand Bid
-->

<complexType name="DemandBidType">
   <sequence>
      <element name="DemandBidHourly" minOccurs="0" maxOccurs="25">
         <complexType>
            <sequence>
               <element name="FixedDemand" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
               <element name="PriceSensitiveDemand" type="mkt:BlockBidType" minOccurs="0" maxOccurs="1"/>
            </sequence>
            <attributeGroup ref="mkt:HourEndingGroup"/>
         </complexType>
      </element>
   </sequence>
   <attribute name="day" type="date" use="required"/>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
</complexType>

<!-- DemandBidSetType
-->

<complexType name="DemandBidSetType">
   <sequence>
      <element name="DemandBid" type="mkt:DemandBidType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--  Demand Summary
-->

<complexType name="DemandSummaryType">
   <sequence>
      <element name="DemandSummaryHourly" minOccurs="0" maxOccurs="25">
         <complexType>
            <sequence>
               <element name="DemandSummarySet" minOccurs="0" maxOccurs="unbounded">
                  <complexType>
                     <sequence>
                        <element name="ForecastMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
                        <element name="DemandBidMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
                        <element name="ReserveMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
                        <element name="Area" type="mkt:AreaNameType" minOccurs="0" maxOccurs="1"/>
                     </sequence>
                  </complexType>
               </element>
            </sequence>
            <attributeGroup ref="mkt:HourEndingGroup"/>
         </complexType>
      </element>
   </sequence>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  Demand Summary By Zone
-->

<complexType name="DemandSummaryByZoneType">
   <sequence>
      <element name="DemandSummaryByZoneHourly" minOccurs="0" maxOccurs="25">
         <complexType>
            <sequence>
               <element name="DemandSummaryByZoneSet" minOccurs="0" maxOccurs="unbounded">
                  <complexType>
                     <sequence>
                        <element name="DemandBidMW" type="mkt:MWType" minOccurs="1" maxOccurs="1"/>
                        <element name="ZoneName" type="mkt:ZoneNameType" minOccurs="1" maxOccurs="1"/>
                     </sequence>
                  </complexType>
               </element>
            </sequence>
            <attributeGroup ref="mkt:HourEndingGroup"/>
         </complexType>
      </element>
   </sequence>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  Dispatch Lambda Type
-->

<complexType name="DispatchLambdaType">
   <all>
      <element name="ScheduleDescription" type="mkt:ScheduleDescriptionType" minOccurs="1" maxOccurs="1"/>
      <element name="RegMWAssignment" type="mkt:MWType" minOccurs="1" maxOccurs="1"/>
      <element name="LambdaDispatchRate" type="mkt:LambdaDispatchRateType" minOccurs="1" maxOccurs="1"/>
      <element name="LambdaMW" type="mkt:MWType" minOccurs="1" maxOccurs="1"/>
      <element name="DeviationMW" type="mkt:MWType" minOccurs="1" maxOccurs="1"/>
      <element name="EnergyMin" type="mkt:MWType" minOccurs="1" maxOccurs="1"/>
      <element name="EnergyMax" type="mkt:MWType" minOccurs="1" maxOccurs="1"/>
      <element name="CapacityMax" type="mkt:MWType" minOccurs="1" maxOccurs="1"/>
      <element name="Status" type="mkt:StatusCommentStringType" minOccurs="0" maxOccurs="1"/>
      <element name="NonRampLambdaMW" type="mkt:MWType" minOccurs="1" maxOccurs="1"/>
   </all>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
   <attribute name="interval" type="dateTime" use="required"/>
</complexType>

<!--  DispatchLambdaSetType
-->

<complexType name="DispatchLambdaSetType">
   <sequence>
      <element name="DispatchLambda" type="mkt:DispatchLambdaType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--  DistributionFactorsType
-->

<complexType name="DistributionFactorsType">
   <sequence>
      <element name="AggregateNode" minOccurs="0" maxOccurs="unbounded">
         <complexType>
            <sequence>
               <element name="BusNode" minOccurs="0" maxOccurs="unbounded">
                  <complexType>
                     <attribute name="location" type="mkt:LocationNameType" use="required"/>
                     <attribute name="factor" type="mkt:FactorType" use="required"/>
                  </complexType>
               </element>
            </sequence>
            <attribute name="location" type="mkt:LocationNameType" use="required"/>
         </complexType>
      </element>
   </sequence>
   <attribute name="day" type="date"/>
</complexType>

<!--  DSR Regulation Offer Type
-->

<complexType name="DSRRegulationOfferType">
   <all>
      <element name="OfferMW" type="mkt:OfferMWType" minOccurs="0" maxOccurs="1"/>
      <element name="OfferPrice" type="mkt:MWPriceType" minOccurs="0" maxOccurs="1"/>
      <element name="RegulationLimits" type="mkt:LimitsType" minOccurs="0" maxOccurs="1"/>
      <element name="Unavailable" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
      <element name="SelfScheduled" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
      <element name="MinimumMW" type="mkt:OfferMWType" minOccurs="0" maxOccurs="1"/>
   </all>
   <attribute name="day" type="date" use="required"/>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
</complexType>

<!--   DSR Regulation Offer Set Type
-->

<complexType name="DSRRegulationOfferSetType">
   <sequence>
      <element name="DSRRegulationOffer" type="mkt:DSRRegulationOfferType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--  DSR Regulation Update
-->
   <complexType name="DSRRegulationUpdateType">
      <sequence>
         <element name="DSRRegulationUpdateHourly" minOccurs="0" maxOccurs="25">
            <complexType>
               <all>
                  <element name="MW" type="mkt:MWType" minOccurs="0"/>
                  <element name="RegulationLimits" type="mkt:LimitsType" minOccurs="0" maxOccurs="1"/>
                  <element name="Unavailable" type="boolean" default="false" minOccurs="0"/>
                  <element name="SelfScheduled" type="boolean" default="false" minOccurs="0"/>
               </all>
               <attributeGroup ref="mkt:HourEndingGroup"/>
            </complexType>
         </element>
      </sequence>
      <attribute name="location" type="mkt:LocationNameType" use="required"/>
      <attribute name="day" type="date" use="required"/>
   </complexType>

<!--  DSR Regulation Update Set Type
-->

<complexType name="DSRRegulationUpdateSetType">
   <sequence>
      <element name="DSRRegulationUpdate" type="mkt:DSRRegulationUpdateType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--  DSR SRREG Award Type
-->

<complexType name="DSRSRREGAwardType">
   <sequence>
      <element name="DSRSRREGAwardHourly" minOccurs="0" maxOccurs="25">
         <complexType>
            <all>
               <element name="SynchOfferMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
               <element name="RegOfferMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
               <element name="SelfScheduledMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
               <element name="SynchAwardedMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
               <element name="RegAwardedMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
            </all>
            <attributeGroup ref="mkt:HourEndingGroup"/>
         </complexType>
      </element>
   </sequence>
   <attribute name="day" type="date" use="required"/>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
</complexType>

<!--  DSR SPREG Award Set Type
-->

<complexType name="DSRSRREGAwardSetType">
   <sequence>
      <element name="DSRSRREGAward" type="mkt:DSRSRREGAwardType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--  DSR Synch Reserve Offer Type
-->

<complexType name="DSRSynchReserveOfferType">
   <all>
      <element name="OfferMW" type="mkt:OfferMWType" minOccurs="0" maxOccurs="1"/>
      <element name="OfferPrice" type="mkt:MWPriceType" minOccurs="0" maxOccurs="1"/>
      <element name="Available" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
   </all>
   <attribute name="day" type="date" use="required"/>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
</complexType>

<!--  DSR Synch Reserve Offer Set Type
-->

<complexType name="DSRSynchReserveOfferSetType">
   <sequence>
      <element name="DSRSynchReserveOffer" type="mkt:DSRSynchReserveOfferType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--  DSR Synch Reserve Update Type
-->

<complexType name="DSRSynchReserveUpdateType">
   <sequence>
      <element name="DSRSynchReserveUpdateHourly" minOccurs="0" maxOccurs="25">
         <complexType>
            <all>
               <element name="OfferMW" type="mkt:OfferMWType" minOccurs="0" maxOccurs="1"/>
               <element name="Unavailable" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
               <element name="SelfScheduledMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
            </all>
            <attributeGroup ref="mkt:HourEndingGroup"/>
         </complexType>
      </element>
   </sequence>
   <attribute name="day" type="date" use="required"/>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
</complexType>

<!--  DSR Synch Reserve Update Set Type
-->

<complexType name="DSRSynchReserveUpdateSetType">
   <sequence>
      <element name="DSRSynchReserveUpdate" type="mkt:DSRSynchReserveUpdateType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--  Interface Limits Type
-->

<complexType name="InterfaceLimitsType">
   <sequence>
      <element name="InterfaceLimitsHourly" minOccurs="0" maxOccurs="25">
         <complexType>
         <sequence>
            <element name="InterfaceLimit" minOccurs="1" maxOccurs="unbounded">
               <complexType>
                  <all>
                     <element name="InterfaceLimitName" type="mkt:InterfaceLimitNameType" minOccurs="1" maxOccurs="1"/>
                     <element name="FlowMW" type="mkt:MWType" minOccurs="1" maxOccurs="1"/>
                     <element name="LimitMW" type="mkt:MWType" minOccurs="1" maxOccurs="1"/>
                  </all>
               </complexType>
            </element>
         </sequence>
         <attributeGroup ref="mkt:HourEndingGroup"/>
         </complexType>
      </element>
   </sequence>
   <attribute name="day" type="date"/>
</complexType>

<!--  Load Response
-->

<complexType name="LoadResponseType">
   <sequence>
      <element name="Price" type="mkt:MWPriceType" minOccurs="0" maxOccurs="1"/>
      <element name="ShutdownCost1" type="mkt:CostType" minOccurs="0" maxOccurs="1"/>
      <element name="ShutdownCost2" type="mkt:CostType" minOccurs="0" maxOccurs="1"/>
      <element name="MinimumDowntime" type="mkt:RunTimeType" minOccurs="0" maxOccurs="1"/>
      <element name="LoadResponseHourly" minOccurs="0" maxOccurs="25">
         <complexType>
            <sequence>
               <element name="MW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
            </sequence>
            <attributeGroup ref="mkt:HourEndingGroup"/>
         </complexType>
      </element>
   </sequence>
   <attribute name="day" type="date" use="required"/>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
</complexType>

<!--  LoadResponseSetType
-->

<complexType name="LoadResponseSetType">
   <sequence>
      <element name="LoadResponse" type="mkt:LoadResponseType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--  Market Prices Type
-->

<complexType name="MarketPricesType">
   <sequence>
      <element name="MarketPricesHourly" minOccurs="0" maxOccurs="25">
         <complexType>
         <all>
            <element name="LMP" type="mkt:LMPType" minOccurs="0" maxOccurs="1"/>
            <element name="LossLMP" type="mkt:LMPType" minOccurs="0" maxOccurs="1"/>
            <element name="CongestionLMP" type="mkt:LMPType" minOccurs="0" maxOccurs="1"/>
         </all>
         <attributeGroup ref="mkt:HourEndingGroup"/>
         </complexType>
      </element>
   </sequence>
   <attribute name="day" type="date" use="required"/>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
   <attribute name="type" type="mkt:MarketQueryTypeType" use="required"/>
</complexType>

<!--  MarketPricesSetType
-->

<complexType name="MarketPricesSetType">
   <sequence>
      <element name="MarketPrices" type="mkt:MarketPricesType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--  Market Results Type
-->

<complexType name="MarketResultsType">
   <sequence>
      <element name="MarketResultsHourly" minOccurs="0" maxOccurs="25">
         <complexType>
         <all>
            <element name="ClearedMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
            <element name="ClearedIncMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
            <element name="ClearedDecMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
            <element name="ClearedPrice" type="mkt:MWPriceType" minOccurs="0" maxOccurs="1"/>
            <element name="PriceCapped" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
            <element name="ConstraintName" type="mkt:ConstraintNameType" minOccurs="0" maxOccurs="1"/>
            <element name="ContingencyName" type="mkt:ContingencyNameType" minOccurs="0" maxOccurs="1"/>
            <element name="Schedule" type="mkt:ScheduleNameType" minOccurs="0" maxOccurs="1"/>
         </all>
         <attributeGroup ref="mkt:HourEndingGroup"/>
         </complexType>
      </element>
   </sequence>
   <attribute name="day" type="date" use="required"/>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
   <attribute name="type" type="mkt:MarketQueryTypeType" use="required"/>
</complexType>


<!--  MarketResultsSetType
-->

<complexType name="MarketResultsSetType">
   <sequence>
     <element name="MarketResults" type="mkt:MarketResultsType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--- Message type
-->

<complexType name="MessageType">
   <sequence>
      <element name="EffectiveTime" type="dateTime"/>
      <element name="TerminationTime" type="dateTime"/>
      <element name="Priority" type="mkt:MessagePriorityType"/>
      <element name="Text" type="mkt:MessageTextType"/>
   </sequence>
   <attribute name="realm" type="mkt:MessageRealmType" use="optional" default="Public"/>
</complexType>

<!--- MessageSet type
-->

<complexType name="MessageSetType">
   <sequence>
      <element name="Message" type="mkt:MessageType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--- MUIAreaType
-->

<complexType name="MUIAreaType">
   <attribute name="shortName" type="mkt:AreaNameType" use="required"/>
   <attribute name="longName" type="mkt:AreaNameType" use="required"/>
</complexType>

<!--- MUIAreaSet type
-->

<complexType name="MUIAreaSetType">
   <sequence>
      <element name="MUIArea" type="mkt:MUIAreaType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--  MUIASMarketPricesType
-->

<complexType name="MUIASMarketPricesType">
   <sequence>
      <element name="MUIASMarketPrice" minOccurs="0" maxOccurs="unbounded">
         <complexType>
            <sequence>
               <element name="MUIASMarketPriceHourly" minOccurs="0" maxOccurs="25">
                  <complexType>
                     <sequence>
                        <element name="SPMCP" type="mkt:MWPriceType" minOccurs="0" maxOccurs="1"/>
                        <element name="RMCP" type="mkt:MWPriceType" minOccurs="0" maxOccurs="1"/>
                        <element name="DASRMCP" type="mkt:MWPriceType" minOccurs="0" maxOccurs="1"/>
                     </sequence>
                     <attributeGroup ref="mkt:HourEndingGroup"/>
                  </complexType>
               </element>
            </sequence>
            <attribute name="area" type="mkt:AreaNameType" use="required"/>
            <attribute name="reserveZone" type="mkt:ReserveZoneNameType" use="optional"/>
         </complexType>
      </element>
   </sequence>
</complexType>

<!--  MUIBindingLimitsType
-->
<complexType name="MUIBindingLimitsType">
   <sequence>

      <element name="MUIBranch" minOccurs="0" maxOccurs="unbounded">
         <complexType>
            <sequence>

               <element name="MUIContingency" minOccurs="0" maxOccurs="unbounded">
                  <complexType>
                     <sequence>

                        <element name="MUIBindingLimit" minOccurs="0" maxOccurs="25">
                           <complexType>
                              <attributeGroup ref="mkt:HourEndingGroup"/>
                              <attribute name="marginalValue" type="mkt:MarginalValueType" use="required"/>
                           </complexType>
                        </element>

                     </sequence>
                     <attribute name="name" type="mkt:ContingencyNameType" use="required"/>
                  </complexType>
               </element>

            </sequence>
            <attribute name="name" type="mkt:BranchNameType" use="required"/>
         </complexType>
      </element>

   </sequence>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  MUIDateTimeType
-->

<complexType name="MUIDateTimeType">
   <attribute name="day" type="date" use="required"/>
   <attributeGroup ref="mkt:HourEndingGroup"/>
</complexType>

<!--  MUIDayInformationType
-->

<complexType name="MUIDayInformationType">
   <sequence>
      <element name="BiannualPeriod" type="mkt:BiannualPeriodType" minOccurs="0" maxOccurs="1"/>
      <element name="KeepMarketOpen" type="boolean" minOccurs="0" maxOccurs="1"/>
      <element name="Approved" type="boolean" minOccurs="1" maxOccurs="1"/>
      <element name="RegulationApproved" type="boolean" minOccurs="1" maxOccurs="1"/>
      <element name="StartMarketDay" type="date" minOccurs="1" maxOccurs="1"/>
      <element name="EndMarketDay" type="date" minOccurs="1" maxOccurs="1"/>
      <element name="FirstOpenHour" type="int" minOccurs="0" maxOccurs="1"/>
      <element name="IsDuplicateHour" type="boolean" minOccurs="0" maxOccurs="1"/>
   </sequence>
</complexType>

<!--  MUIDeleteBilateralType
-->
<complexType name="MUIDeleteBilateralType">
   <sequence>
      <element name="BilateralID" type="mkt:BilateralIDType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--  MUIDeleteUnitScheduleType
-->
<complexType name="MUIDeleteUnitScheduleType">
   <sequence>
      <element name="Schedule" type="mkt:ScheduleNameType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
</complexType>

<!--  MUIDemandSummaryType
-->
<complexType name="MUIDemandSummaryType">
   <sequence>
      <element name="MUIDemandSummaryArea" minOccurs="0" maxOccurs="unbounded">
         <complexType>
            <sequence>

               <element name="MUIDemandSummaryHourly" minOccurs="0" maxOccurs="25">
                  <complexType>
                     <sequence>
                        <element name="DemandBidMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
                        <element name="ForecastMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
                        <element name="ReserveMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
                     </sequence>
                     <attributeGroup ref="mkt:HourEndingGroup"/>
                  </complexType>
               </element>
            </sequence>
            <attribute name="name" type="mkt:AreaNameType" use="required"/>
         </complexType>
      </element>
   </sequence>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  MUIDispatchLambdaType
-->

<complexType name="MUIDispatchLambdaType">
   <all>
      <element name="ScheduleDescription" type="mkt:ScheduleDescriptionType" minOccurs="1" maxOccurs="1"/>
      <element name="RegMWAssignment" type="mkt:MWType" minOccurs="1" maxOccurs="1"/>
      <element name="LambdaDispatchRate" type="mkt:LambdaDispatchRateType" minOccurs="1" maxOccurs="1"/>
      <element name="LambdaMW" type="mkt:MWType" minOccurs="1" maxOccurs="1"/>
      <element name="DeviationMW" type="mkt:MWType" minOccurs="1" maxOccurs="1"/>
      <element name="EnergyMin" type="mkt:MWType" minOccurs="1" maxOccurs="1"/>
      <element name="EnergyMax" type="mkt:MWType" minOccurs="1" maxOccurs="1"/>
      <element name="CapacityMax" type="mkt:MWType" minOccurs="1" maxOccurs="1"/>
      <element name="Status" type="mkt:StatusCommentStringType" minOccurs="0" maxOccurs="1"/>
      <element name="TotalRegMW" type="mkt:MWType" minOccurs="1" maxOccurs="1"/>
      <element name="TotalSteamMW" type="mkt:MWType" minOccurs="1" maxOccurs="1"/>
      <element name="NonRampLambdaMW" type="mkt:MWType" minOccurs="1" maxOccurs="1"/>
   </all>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
   <attribute name="interval" type="dateTime" use="required"/>
</complexType>

<!--  MUIDispatchLambdaSetType
-->

<complexType name="MUIDispatchLambdaSetType">
   <sequence>
      <element name="MUIDispatchLambda" type="mkt:MUIDispatchLambdaType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

   <!--  MUIDSRRegulationOfferType
-->
   <complexType name="MUIDSRRegulationOfferType">
      <all>
         <element name="OfferMW" type="mkt:OfferMWType" minOccurs="0"/>
         <element name="OfferPrice" type="mkt:MWPriceType" minOccurs="0"/>
         <element name="RegulationLowMW" type="mkt:MWType" minOccurs="0"/>
         <element name="RegulationHighMW" type="mkt:MWType" minOccurs="0"/>
         <element name="Unavailable" type="boolean" default="false" minOccurs="0"/>
         <element name="SelfScheduled" type="boolean" default="false" minOccurs="0"/>
         <element name="AreaName" type="mkt:AreaNameType" minOccurs="0"/>
         <element name="MinimumMW" type="mkt:OfferMWType" minOccurs="0" maxOccurs="1"/>  
      </all>
      <attribute name="day" type="date" use="required"/>
      <attribute name="location" type="mkt:LocationNameType" use="required"/>
   </complexType>
   
   <!--  MUIDSRRegulationOfferSetType
-->
   <complexType name="MUIDSRRegulationOfferSetType">
      <sequence>
         <element name="MUIDSRRegulationOffer" type="mkt:MUIDSRRegulationOfferType" minOccurs="0" maxOccurs="unbounded"/>
      </sequence>
   </complexType>
   
   <!--  MUIDSRRegulationUpdateType
-->
   <complexType name="MUIDSRRegulationUpdateType">
      <sequence>
         <element name="DSRRegulationUpdateHourly" minOccurs="0" maxOccurs="25">
            <complexType>
               <all>
                  <element name="MW" type="mkt:MWType" minOccurs="0"/>
                  <element name="RegulationLimits" type="mkt:LimitsType" minOccurs="0" maxOccurs="1"/>
                  <element name="Unavailable" type="boolean" default="false" minOccurs="0"/>
                  <element name="SelfScheduled" type="boolean" default="false" minOccurs="0"/>
               </all>
               <attributeGroup ref="mkt:HourEndingGroup"/>
            </complexType>
         </element>
         <element name="DefaultRegulationMW" type="mkt:MWType" minOccurs="0"/>
         <element name="DefaultRegulationLowMW" type="mkt:MWType" minOccurs="0"/>
         <element name="DefaultRegulationHighMW" type="mkt:MWType" minOccurs="0"/>
         <element name="DefaultCommitStatus" type="string" default="Economic" minOccurs="0"/>
      </sequence>
      <attribute name="location" type="mkt:LocationNameType" use="required"/>
      <attribute name="day" type="date" use="required"/>
   </complexType>
   
   <!--  MUIDSRRegulationUpdateSetType
-->
   <complexType name="MUIDSRRegulationUpdateSetType">
      <sequence>
         <element name="MUIDSRRegulationUpdate" type="mkt:MUIDSRRegulationUpdateType" minOccurs="0" maxOccurs="unbounded"/>
      </sequence>
   </complexType> 

<!--  MUI DSR Synch Reserve Update Type
-->

<complexType name="MUIDSRSynchReserveUpdateType">
   <sequence>
      <element name="DSRSynchReserveUpdateHourly" minOccurs="0" maxOccurs="25">
         <complexType>
            <all>
               <element name="OfferMW" type="mkt:OfferMWType" minOccurs="0" maxOccurs="1"/>
               <element name="Unavailable" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
               <element name="SelfScheduledMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
            </all>
            <attributeGroup ref="mkt:HourEndingGroup"/>
         </complexType>
      </element>
      <element name="DefaultOfferMW" type="mkt:OfferMWType" minOccurs="0" maxOccurs="1"/>
   </sequence>
   <attribute name="day" type="date" use="required"/>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
</complexType>

<!--  MUI DSR Synch Reserve Update Set Type
-->

<complexType name="MUIDSRSynchReserveUpdateSetType">
   <sequence>
      <element name="MUIDSRSynchReserveUpdate" type="mkt:MUIDSRSynchReserveUpdateType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--  MUIExtendedUnitDetailType
-->

<complexType name="MUIExtendedUnitDetailType">
   <sequence>
      <element name="RegResource" type="boolean" minOccurs="0" maxOccurs="1"/>
      <element name="CapacityResource" type="boolean" minOccurs="0" maxOccurs="1"/>
      <element name="PriceBased" type="boolean" minOccurs="0" maxOccurs="1"/>
      <element name="PNodeName" type="mkt:LocationNameType" minOccurs="0" maxOccurs="1"/>
      <element name="TypeOfUnitLongName" type="mkt:LocationLabelType" minOccurs="0" maxOccurs="1"/>
      <element name="PlantLongName" type="mkt:LocationLabelType" minOccurs="0" maxOccurs="1"/>
      <element name="CompanyLongName" type="mkt:LocationLabelType" minOccurs="0" maxOccurs="1"/>
      <element name="UnitShortName" type="mkt:MUIUnitShortNameType" minOccurs="0" maxOccurs="1"/>
      <element name="UnitNumber" type="mkt:MUIUnitNumberType" minOccurs="0" maxOccurs="1"/>
      <element name="WeatherPointID" type="mkt:MUIWeatherPointIDType" minOccurs="0" maxOccurs="1"/>
      <element name="IsCCU" type="boolean" minOccurs="0" maxOccurs="1"/>
      <element name="IsPSU" type="boolean" minOccurs="0" maxOccurs="1"/>
   </sequence>
   <attribute name="day" type="date" use="required"/>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
</complexType>

<!--- MUIExtendedUnitDetailSet type
-->

<complexType name="MUIExtendedUnitDetailSetType">
   <sequence>
      <element name="MUIExtendedUnitDetail" type="mkt:MUIExtendedUnitDetailType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--- MUIFuelTypeType
-->

<complexType name="MUIFuelTypeType">
   <attribute name="primaryType" type="mkt:FuelTypeNameType" use="required"/>
   <attribute name="subType" type="mkt:FuelTypeNameType" use="required"/>
</complexType>

<!--- MUIFuelTypeSetType
-->

<complexType name="MUIFuelTypeSetType">
   <sequence>
      <element name="MUIFuelType" type="mkt:MUIFuelTypeType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--  MUIHourlyMWType
-->

<complexType name="MUIHourlyMWType">
   <attributeGroup ref="mkt:HourEndingGroup"/>
   <attribute name="MW" type="mkt:MWType" use="required"/>
</complexType>

<!--  MUIHourlyMWPriceType
-->
<complexType name="MUIHourlyMWPriceType">
   <attributeGroup ref="mkt:HourEndingGroup"/>
   <attribute name="price" type="mkt:MWPriceType" use="required"/>
</complexType>

<!--  MUIInterfaceLimitsType
-->
<complexType name="MUIInterfaceLimitsType">
   <sequence>

      <element name="MUIInterfaceLimit" minOccurs="0" maxOccurs="unbounded">
         <complexType>
            <sequence>

               <element name="MUILimitMW" type="mkt:MUIHourlyMWType" minOccurs="0" maxOccurs="25"/>
               <element name="MUIFlowMW" type="mkt:MUIHourlyMWType" minOccurs="0" maxOccurs="25"/>

            </sequence>
            <attribute name="name" type="mkt:InterfaceLimitNameType" use="required"/>
         </complexType>
      </element>

   </sequence>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  MUILocationType
-->

<complexType name="MUILocationType">
   <attribute name="type" type="mkt:PortfolioTypeType" use="required"/>
   <attribute name="name" type="mkt:LocationNameType" use="required"/>
   <attribute name="label" type="mkt:LocationLabelType" use="optional"/>
   <attribute name="nodeType" type="mkt:NodeTypeType" use="optional"/>
</complexType>

<!--  MUILocationSetType
-->

<complexType name="MUILocationSetType">
   <sequence>
      <element name="MUILocation" type="mkt:MUILocationType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  MUIMarketResultsType
-->

<complexType name="MUIMarketResultsType">
   <sequence>

      <element name="MUIMarketResultsLocation" minOccurs="0" maxOccurs="unbounded">
         <complexType>
            <sequence>

               <element name="MUIMarketResultsHour" minOccurs="0" maxOccurs="25">
                  <complexType>
                     <sequence>

                        <element name="ClearedMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
                        <element name="ClearedIncMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
                        <element name="ClearedDecMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
                        <element name="ClearedPrice" type="mkt:MWPriceType" minOccurs="0" maxOccurs="1"/>
                        <element name="PriceCapped" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
                        <element name="ConstraintName" type="mkt:ConstraintNameType" minOccurs="0" maxOccurs="1"/>
                        <element name="ContingencyName" type="mkt:ContingencyNameType" minOccurs="0" maxOccurs="1"/>

                     </sequence>
                     <attributeGroup ref="mkt:HourEndingGroup"/>
                  </complexType>
               </element>

            </sequence>
            <attribute name="name" type="mkt:LocationNameType" use="required"/>
            <attribute name="schedule" type="mkt:ScheduleNameType" use="optional"/>
            <attribute name="scheduleShortName" type="mkt:ScheduleShortNameType" use="optional"/>
         </complexType>
      </element>

   </sequence>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  MUINetTieScheduleType
-->

<complexType name="MUINetTieScheduleType">
   <sequence>

      <element name="MUINetTieArea" minOccurs="0" maxOccurs="unbounded">
         <complexType>
            <sequence>

               <element name="MUINetTieMW" type="mkt:MUIHourlyMWType" minOccurs="0" maxOccurs="25"/>

            </sequence>
            <attribute name="name" type="mkt:AreaNameType" use="required"/>
         </complexType>
      </element>

   </sequence>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  MUIPortfoliosType
-->

<complexType name="MUIPortfoliosType">
   <sequence>
      <element name="MUIPortfolio" minOccurs="0" maxOccurs="unbounded">
         <complexType>
            <sequence>
               <element name="MUILocation" type="mkt:MUILocationType" minOccurs="0" maxOccurs="unbounded"/>
            </sequence>
            <attribute name="name" type="mkt:PortfolioNameType" use="required"/>
            <attribute name="action" type="mkt:PortfolioActionType" use="optional" default="Create"/>
         </complexType>
      </element>
   </sequence>
</complexType>


<!--  MUIQueryByLocationDayType
-->

<complexType name="MUIQueryByLocationDayType">
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  MUIQueryPortfoliosType
-->

<complexType name="MUIQueryPortfoliosType">
   <choice>
      <element name="All" type="mkt:QueryAllType"/>
      <element name="PortfolioName" type="mkt:PortfolioNameType"/>
   </choice>
   <attribute name="public" type="boolean" use="optional" default="false"/>
</complexType>

<!--  MUIQueryWeatherForecastType
-->

<complexType name="MUIQueryWeatherForecastType">
   <choice>
      <element name="All" type="mkt:QueryAllType"/>
      <element name="WeatherPointName" type="mkt:WeatherPointNameType" minOccurs="1" maxOccurs="1"/>
   </choice>
   <attribute name="day" type="date"/>
</complexType>

<!--  MUIRegulationBilateralsType
-->

<complexType name="MUIRegulationBilateralsType">
   <sequence>
      <element name="MUIBilateralSchedule" minOccurs="0" maxOccurs="unbounded">
         <complexType>
            <all>
               <element name="Confirmed" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
               <element name="BilateralID" type="mkt:BilateralIDType" minOccurs="0" maxOccurs="1"/>
               <element name="Buyer" type="mkt:ParticipantNameType" minOccurs="1" maxOccurs="1"/>
               <element name="Seller" type="mkt:ParticipantNameType" minOccurs="1" maxOccurs="1"/>
               <element name="MW" type="mkt:MWType" minOccurs="1" maxOccurs="1"/>
               <element name="StartTime" type="mkt:MUIDateTimeType" minOccurs="1" maxOccurs="1"/>
               <element name="StopTime" type="mkt:MUIDateTimeType" minOccurs="1" maxOccurs="1"/>
               <element name="ConfirmationTime" type="dateTime" minOccurs="0" maxOccurs="1"/>
               <element name="AreaName" type="mkt:AreaNameType" minOccurs="1" maxOccurs="1"/>
            </all>
         </complexType>
      </element>
   </sequence>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  MUIRegulationOfferType
-->

<complexType name="MUIRegulationOfferType">
   <all>
      <element name="OfferMW" type="mkt:OfferMWType" minOccurs="0" maxOccurs="1"/>
      <element name="OfferPrice" type="mkt:MWPriceType" minOccurs="0" maxOccurs="1"/>
      <element name="RegulationLowMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
      <element name="RegulationHighMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
      <element name="Unavailable" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
      <element name="SelfScheduled" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
      <element name="AreaName" type="mkt:AreaNameType" minOccurs="0" maxOccurs="1"/>
      <element name="MinimumMW" type="mkt:OfferMWType" minOccurs="0" maxOccurs="1"/>
   </all>
   <attribute name="day" type="date" use="required"/>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
</complexType>

<!--  MUIRegulationOfferSetType
-->

<complexType name="MUIRegulationOfferSetType">
   <sequence>
      <element name="MUIRegulationOffer" type="mkt:MUIRegulationOfferType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--  MUIRegulationUpdateType
-->

<complexType name="MUIRegulationUpdateType">
   <sequence>
      <element name="RegulationUpdateHourly" minOccurs="0" maxOccurs="25">
         <complexType>
            <all>
               <element name="MW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
               <element name="RegulationLimits" type="mkt:LimitsType" minOccurs="0" maxOccurs="1"/>
               <element name="Unavailable" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
               <element name="SelfScheduled" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
               <element name="Spilling" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
            </all>
            <attributeGroup ref="mkt:HourEndingGroup"/>
         </complexType>
      </element>
      <element name="DefaultRegulationMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
      <element name="DefaultRegulationLowMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
      <element name="DefaultRegulationHighMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
      <element name="DefaultCommitStatus" type="string" minOccurs="0" maxOccurs="1" default="Economic"/>
   </sequence>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  MUIRegulationUpdateSetType
-->

<complexType name="MUIRegulationUpdateSetType">
   <sequence>
      <element name="MUIRegulationUpdate" type="mkt:MUIRegulationUpdateType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--- MUIReserveZoneType
-->

<complexType name="MUIReserveZoneType">
   <attribute name="shortName" type="mkt:ReserveZoneShortNameType" use="required"/>
   <attribute name="longName" type="mkt:ReserveZoneNameType" use="required"/>
</complexType>

<!--- MUIReserveZoneSetType
-->

<complexType name="MUIReserveZoneSetType">
   <sequence>
      <element name="MUIReserveZone" type="mkt:MUIReserveZoneType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--  MUIScheduleDetailType
-->

<complexType name="MUIScheduleDetailType">
   <all>
      <element name="Market" type="mkt:ScheduleMarketType" minOccurs="0" maxOccurs="1" default="DayAhead"/>
      <element name="EconomicLimits" type="mkt:LimitsType" minOccurs="0" maxOccurs="1"/>
      <element name="EmergencyLimits" type="mkt:LimitsType" minOccurs="0" maxOccurs="1"/>
      <element name="Runtimes" type="mkt:RuntimesType" minOccurs="0" maxOccurs="1"/>
      <element name="UseStartupNoLoad" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
      <element name="StartupCosts" type="mkt:StartupCostsType" minOccurs="0" maxOccurs="1"/>
      <element name="FuelTypes" type="mkt:ScheduleFuelTypesType" minOccurs="0" maxOccurs="1"/>
   </all>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
   <attribute name="schedule" type="mkt:ScheduleNameType" use="required"/>
   <attribute name="shortName" type="mkt:ScheduleShortNameType" use="required"/>
   <attribute name="longName" type="mkt:ScheduleLongNameType" use="required"/>
   <attribute name="day" type="date" use="required"/>
   <attribute name="editCostTypeSchedule" type="boolean" use="required"/>
   <attribute name="editNoLoadCost" type="boolean" use="required"/>
   <attribute name="displayMaximumDailyEnergy" type="boolean" use="required"/>
</complexType>

<!--  MUIScheduleOfferType
-->

<complexType name="MUIScheduleOfferType">
   <sequence>
      <element name="OfferSegment" minOccurs="0" maxOccurs="10">
         <complexType>
            <attribute name="MW" type="mkt:MWType" use="required"/>
            <attribute name="price" type="mkt:MWPriceType" use="required"/>
         </complexType>
      </element>
      <element name="StartupCosts" type="mkt:StartupCostsType" minOccurs="0" maxOccurs="1"/>
   </sequence>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
   <attribute name="schedule" type="mkt:ScheduleNameType" use="required"/>
   <attribute name="day" type="date" use="required"/>
   <attribute name="slope" type="boolean" use="optional" default="false"/>
</complexType>

<!--  MUIScheduleSelectionType
-->

<complexType name="MUIScheduleSelectionType">
   <sequence>
      <element name="Available" type="boolean" minOccurs="1" maxOccurs="1"/>
      <element name="Market" type="mkt:ScheduleMarketType" minOccurs="0" maxOccurs="1" default="DayAhead"/>
      <element name="StartupCosts" type="mkt:StartupCostsType" minOccurs="0" maxOccurs="1"/>
      <element name="LongName" type="mkt:ScheduleLongNameType" minOccurs="1" maxOccurs="1"/>
      <element name="ShortName" type="mkt:ScheduleShortNameType" minOccurs="1" maxOccurs="1"/>
      <element name="Type" type="mkt:ScheduleTypeNameType" minOccurs="1" maxOccurs="1"/>
   </sequence>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
   <attribute name="schedule" type="mkt:ScheduleNameType" use="required"/>
   <attribute name="day" type="date" use="required"/>
   <attribute name="editCostTypeSchedule" type="boolean" use="required"/>
   <attribute name="editNoLoadCost" type="boolean" use="required"/>
</complexType>

<!--  MUIScheduleSelectionSetType
-->

<complexType name="MUIScheduleSelectionSetType">
   <sequence>
      <element name="MUIScheduleSelection" type="mkt:MUIScheduleSelectionType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--  MUISpinningReserveUpdateType
-->

<complexType name="MUISpinningReserveUpdateType">
   <sequence>
      <element name="SpinningReserveUpdateHourly" minOccurs="0" maxOccurs="25">
         <complexType>
            <all>
               <element name="OfferMW" type="mkt:OfferMWType" minOccurs="0" maxOccurs="1"/>
               <element name="SpinMAX" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
               <element name="Unavailable" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
               <element name="SelfScheduledMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
            </all>
            <attributeGroup ref="mkt:HourEndingGroup"/>
         </complexType>
      </element>
      <element name="DefaultOfferMW" type="mkt:OfferMWType" minOccurs="0" maxOccurs="1"/>
      <element name="DefaultSpinMaxMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
   </sequence>
   <attribute name="day" type="date" use="required"/>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
</complexType>

<!--  MUISpinningReserveUpdateSetType
-->

<complexType name="MUISpinningReserveUpdateSetType">
   <sequence>
      <element name="MUISpinningReserveUpdate" type="mkt:MUISpinningReserveUpdateType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--  MUISpinReserveBilateralsType
-->

<complexType name="MUISpinReserveBilateralsType">
   <sequence>
      <element name="MUISpinBilateralSchedule" minOccurs="0" maxOccurs="unbounded">
         <complexType>
            <all>
              <element name="Confirmed" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
              <element name="BilateralID" type="mkt:BilateralIDType" minOccurs="0" maxOccurs="1"/>
              <element name="Buyer" type="mkt:ParticipantNameType" minOccurs="1" maxOccurs="1"/>
              <element name="Seller" type="mkt:ParticipantNameType" minOccurs="1" maxOccurs="1"/>
              <element name="MW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
              <element name="Percent" type="mkt:ObligationPercentageType" minOccurs="0" maxOccurs="1"/>
              <element name="StartTime" type="mkt:MUIDateTimeType" minOccurs="1" maxOccurs="1"/>
              <element name="StopTime" type="mkt:MUIDateTimeType" minOccurs="1" maxOccurs="1"/>
              <element name="ConfirmationTime" type="dateTime" minOccurs="0" maxOccurs="1"/>
              <element name="AreaName" type="mkt:AreaNameType" minOccurs="0" maxOccurs="1"/>
              <element name="ReserveZone" type="mkt:ReserveZoneNameType" minOccurs="0" maxOccurs="1"/>
            </all>
         </complexType>
      </element>
   </sequence>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--

  MUI Day Ahead Scheduling Reserve (DASR) Related Types

 -->
 
<!--  MUISchedReserveOfferSetType
-->

<complexType name="MUISchedReserveOfferSetType">
   <sequence>
      <element name="MUISchedReserveOffer" type="mkt:MUISchedReserveOfferType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>


<!--  MUISchedReserveOfferType
-->

<complexType name="MUISchedReserveOfferType">
   <all>
      <element name="OfferPrice" type="mkt:MWPriceType" minOccurs="0" maxOccurs="1"/>
      <!--<element name="Unavailable" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>-->
      <element name="AreaName" type="mkt:AreaNameType" minOccurs="0" maxOccurs="1"/>
      <!--<element name="ColdStartupTime" type="mkt:RuntimeTimeType"  minOccurs="0" maxOccurs="1"/>
      <element name="ColdNotificationTime" type="mkt:RuntimeTimeType"  minOccurs="0" maxOccurs="1"/>-->
   </all>
   <attribute name="day" type="date" use="required"/>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
</complexType>

<!--  MUISchedReserveBilateralsType
-->

<complexType name="MUISchedReserveBilateralsType">
   <sequence>
      <element name="MUISchedReserveBilateralSchedule" minOccurs="0" maxOccurs="unbounded">
         <complexType>
            <all>
               <element name="Confirmed" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
               <element name="BilateralID" type="mkt:BilateralIDType" minOccurs="0" maxOccurs="1"/>
               <element name="Buyer" type="mkt:ParticipantNameType" minOccurs="1" maxOccurs="1"/>
               <element name="Seller" type="mkt:ParticipantNameType" minOccurs="1" maxOccurs="1"/>
               <element name="MW" type="mkt:MWType" minOccurs="1" maxOccurs="1"/>
               <element name="StartTime" type="mkt:MUIDateTimeType" minOccurs="1" maxOccurs="1"/>
               <element name="StopTime" type="mkt:MUIDateTimeType" minOccurs="1" maxOccurs="1"/>
               <element name="ConfirmationTime" type="dateTime" minOccurs="0" maxOccurs="1"/>
               <element name="AreaName" type="mkt:AreaNameType" minOccurs="1" maxOccurs="1"/>
            </all>
         </complexType>
      </element>
   </sequence>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  MUI DSR Sched Reserve Offer Type
-->

<complexType name="MUIDSRSchedReserveOfferType">
   <all>
      <element name="OfferPrice" type="mkt:MWPriceType" minOccurs="0" maxOccurs="1"/>
      <element name="AreaName" type="mkt:AreaNameType" minOccurs="0" maxOccurs="1"/>
      <element name="MinDownTime" type="mkt:RuntimeTimeType"  minOccurs="0" maxOccurs="1"/>
   </all>
   <attribute name="day" type="date" use="required"/>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
</complexType>

<!--  MUI DSR Sched Reserve Offer Set Type
-->

<complexType name="MUIDSRSchedReserveOfferSetType">
   <sequence>
      <element name="MUIDSRSchedReserveOffer" type="mkt:MUIDSRSchedReserveOfferType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--  MUI DSR Sched Reserve Update Type
-->

<complexType name="MUIDSRSchedReserveUpdateType">
   <sequence>
      <element name="MUIDSRSchedReserveUpdateHourly" minOccurs="0" maxOccurs="25">
        <complexType>
           <all>
              <element name="Eligible" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
           </all>
           <attributeGroup ref="mkt:HourEndingGroup"/>
        </complexType>
      </element>
   </sequence>
   <attribute name="day" type="date" use="required"/>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
</complexType>

<!--  MUI DSR Sched Reserve Update Set Type
-->

<complexType name="MUIDSRSchedReserveUpdateSetType">
   <sequence>
      <element name="MUIDSRSchedReserveUpdate" type="mkt:MUIDSRSchedReserveUpdateType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--  End Of MUI Day-Ahead Scheduling Reserve (DASR) Related Types -->

<!--  MUIUnitNumberType
-->

<simpleType name="MUIUnitNumberType">
   <restriction base="decimal">
      <totalDigits value="2"/>
      <fractionDigits value="0"/>
      <minInclusive value="0"/>
      <maxInclusive value="99"/>
   </restriction>
</simpleType>

<!--  MUIUnitShortNameType
-->

<simpleType name="MUIUnitShortNameType">
   <restriction base="string">
      <minLength value="1"/>
      <maxLength value="8"/>
   </restriction>
</simpleType>

<!--  MUIWeatherPointIDType
-->

<simpleType name="MUIWeatherPointIDType">
   <restriction base="decimal">
      <totalDigits value="2"/>
      <fractionDigits value="0"/>
      <minInclusive value="0"/>
      <maxInclusive value="99"/>
   </restriction>
</simpleType>

<!--  MUIWeatherForecastType
-->

<complexType name="MUIWeatherForecastType">
   <sequence>

      <element name="MUIWeatherPoint" minOccurs="0" maxOccurs="unbounded">
         <complexType>
            <sequence>

               <element name="DaytimeTemperature" type="mkt:TemperatureType" minOccurs="0" maxOccurs="1"/>
               <element name="NighttimeTemperature" type="mkt:TemperatureType" minOccurs="0" maxOccurs="1"/>

            </sequence>
            <attribute name="name" type="mkt:WeatherPointNameType" use="required"/>
            <attribute name="longName" type="mkt:WeatherPointNameType" use="optional"/>
         </complexType>
      </element>

   </sequence>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  Net Tie Schedule Type
-->

<complexType name="NetTieScheduleType">
   <sequence>
      <element name="NetTieScheduleHourly" minOccurs="0" maxOccurs="25">
         <complexType>
            <sequence>
               <element name="NetTieArea" minOccurs="0" maxOccurs="unbounded">
                  <complexType>
                     <all>
                        <element name="MW" type="mkt:MWType" minOccurs="1" maxOccurs="1"/>
                        <element name="AreaName" type="mkt:AreaNameType" minOccurs="1" maxOccurs="1"/>
                     </all>
                  </complexType>
               </element>
            </sequence>
            <attributeGroup ref="mkt:HourEndingGroup"/>
         </complexType>
      </element>
   </sequence>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  Node List Type
-->

<complexType name="NodeListType">
   <sequence>
      <element name="Node" minOccurs="0" maxOccurs="unbounded">
         <complexType>
            <sequence>
               <element name="NodeName" type="mkt:LocationNameType" minOccurs="1" maxOccurs="1"/>
               <element name="NodeType" type="mkt:NodeTypeType" minOccurs="1" maxOccurs="1"/>
               <element name="PnodeID" type="mkt:PNodeIDType" minOccurs="1" maxOccurs="1"/>
            </sequence>
         </complexType>
      </element>
   </sequence>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  PortfoliosType
-->

<complexType name="PortfoliosType">
   <sequence>
      <element name="Portfolio" minOccurs="0" maxOccurs="unbounded">
         <complexType>
            <sequence>
               <element name="Location" minOccurs="0" maxOccurs="unbounded">
                  <complexType>
                     <attribute name="name" type="mkt:LocationNameType" use="required"/>
                     <attribute name="type" type="mkt:PortfolioTypeType" use="required"/>
                  </complexType>
               </element>
            </sequence>
            <attribute name="name" type="mkt:PortfolioNameType" use="required"/>
            <attribute name="action" type="mkt:PortfolioActionType" use="optional" default="Create"/>
         </complexType>
      </element>
   </sequence>
</complexType>

<!--  PumpStorageLimitsType
-->

<complexType name="PumpStorageLimitsType">
    <all>
        <element name="MinGenMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
        <element name="MinPumpMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
    </all>
</complexType>

<!--  QueryBidNodesType
-->

<complexType name="QueryBidNodesType"/>


<!--  QueryByAllLocationDayHourType
-->

<complexType name="QueryByAllLocationDayHourType">
   <sequence>
      <choice>
         <element name="All" type="mkt:QueryAllType"/>
         <element name="LocationName" type="mkt:LocationNameType" />
         <element name="PortfolioName" type="mkt:PortfolioNameType" />
      </choice>
      <element name="Hour" minOccurs="0" maxOccurs="1">
         <complexType>
            <simpleContent>
               <extension base="mkt:HourEndingType">
                  <attribute name="isDuplicateHour" type="boolean" default="false" use="optional"/>
               </extension>
            </simpleContent>
         </complexType>
      </element>
   </sequence>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  QueryByAllLocationDayType
-->

<complexType name="QueryByAllLocationDayType">
   <choice>
      <element name="All" type="mkt:QueryAllType"/>
      <element name="LocationName" type="mkt:LocationNameType" />
      <element name="PortfolioName" type="mkt:PortfolioNameType" />
   </choice>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  QueryByAllLocationDayTypeType
-->

<complexType name="QueryByAllLocationDayTypeType">
   <choice>
      <element name="All" type="mkt:QueryAllType"/>
      <element name="LocationName" type="mkt:LocationNameType" />
      <element name="PortfolioName" type="mkt:PortfolioNameType" />
   </choice>
   <attribute name="day" type="date" use="required"/>
   <attribute name="type" type="mkt:MarketQueryTypeType" use="required"/>
</complexType>

<!--  QueryByAllLocationType
-->

<complexType name="QueryByAllLocationType">
   <choice>
      <element name="All" type="mkt:QueryAllType"/>
      <element name="LocationName" type="mkt:LocationNameType"/>
      <element name="PortfolioName" type="mkt:PortfolioNameType"/>
   </choice>
</complexType>

<!--  QueryByAllScheduleLocationDayType
-->

<complexType name="QueryByAllScheduleLocationDayType">
   <choice>
      <element name="All" type="mkt:QueryAllType"/>
      <element name="LocationName" type="mkt:LocationNameType" />
      <element name="PortfolioName" type="mkt:PortfolioNameType" />
   </choice>
   <attribute name="day" type="date" use="required"/>
   <attribute name="available" type="boolean" default="false" use="optional"/>
</complexType>

<!--  QueryByAreaDayType
-->

<complexType name="QueryByAreaDayType">
   <sequence>
      <element name="AreaName" type="mkt:AreaNameType" />
   </sequence>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  QueryByDayType
-->

<complexType name="QueryByDayType">
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  QueryByDisplayDayType
-->

<complexType name="QueryByDisplayDayType">
   <attribute name="day" type="date" use="required"/>
   <attribute name="marketType" type="mkt:MarketQueryTypeType" use="optional"/>
   <attribute name="queryName" type="mkt:QueryNameType" use="optional"/>
</complexType>

<!--  QueryByLocationDayHourType
-->

<complexType name="QueryByLocationDayHourType">
   <sequence>
      <choice>
         <element name="LocationName" type="mkt:LocationNameType" />
         <element name="PortfolioName" type="mkt:PortfolioNameType" />
      </choice>
      <element name="Hour" minOccurs="0" maxOccurs="1">
         <complexType>
            <simpleContent>
               <extension base="mkt:HourEndingType">
                  <attribute name="isDuplicateHour" type="boolean" default="false" use="optional"/>
               </extension>
            </simpleContent>
         </complexType>
      </element>
   </sequence>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  QueryByLocationDayType
-->

<complexType name="QueryByLocationDayType">
   <choice>
      <element name="LocationName" type="mkt:LocationNameType" />
      <element name="PortfolioName" type="mkt:PortfolioNameType" />
   </choice>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  QueryByLocationType
-->

<complexType name="QueryByLocationType">
   <choice>
      <element name="LocationName" type="mkt:LocationNameType" />
      <element name="PortfolioName" type="mkt:PortfolioNameType" />
   </choice>
</complexType>

<!--  QueryByNoParametersType
-->

<complexType name="QueryByNoParametersType">
</complexType>

<!--  QueryByScheduleDayType
-->

<complexType name="QueryByScheduleDayType">
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
   <attribute name="schedule" type="mkt:ScheduleNameType" use="required"/>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  QueryByTransaction
-->

<element name="QueryByTransaction">
   <complexType>
      <sequence>
         <element name="TransactionID" type="mkt:TransactionType" minOccurs="1" maxOccurs="unbounded"/>
      </sequence>
   </complexType>
</element>

<!--  QueryMessagesType
-->

<complexType name="QueryMessagesType">
   <sequence>
      <element name="ActiveDateTime" type="dateTime" minOccurs="0" maxOccurs="1"/>
      <element name="PriorityThreshold" type="mkt:MessagePriorityType" minOccurs="0" maxOccurs="1" default="999"/>
   </sequence>
   <attribute name="realm" type="mkt:MessageRealmType" use="optional" default="Public"/>
</complexType>

<!--  QueryPortfoliosType
-->

<complexType name="QueryPortfoliosType">
   <choice>
      <element name="All" type="mkt:QueryAllType"/>
      <element name="PortfolioName" type="mkt:PortfolioNameType"/>
   </choice>
</complexType>

<!--  QueryRequest

      The QueryRequest is the root for all query request elements.  This
      element must be placed in the SOAP Body element.
-->

<element name="QueryRequest">
   <complexType>
      <choice minOccurs="1" maxOccurs="unbounded">
         <element name="MUIQueryAllLocations" type="mkt:QueryByNoParametersType"/>
         <element name="MUIQueryAreas" type="mkt:QueryByDayType"/>
         <element name="MUIQueryConEdContractBids" type="mkt:QueryByDayType"/>
         <element name="MUIQueryConEdContractResults" type="mkt:QueryByDayType"/>
         <element name="MUIQueryConEdDefaults" type="mkt:QueryByDayType"/>
         <element name="MUIQueryRegAreas" type="mkt:QueryByDayType"/>
         <element name="MUIQuerySchedResAreas" type="mkt:QueryByDayType"/>
         <element name="MUIQuerySpinAreas" type="mkt:QueryByDayType"/>
         <element name="MUIQueryASMarketPrices" type="mkt:QueryByDayType"/>
         <element name="MUIQueryBindingLimits" type="mkt:QueryByDayType"/>
         <element name="MUIQueryDayInformation" type="mkt:QueryByDisplayDayType"/>
         <element name="MUIQueryDemandSummary" type="mkt:QueryByDayType"/>
         <element name="MUIQueryDSRRegulationOffer" type="mkt:QueryByAllLocationDayType"/>
         <element name="MUIQueryDSRRegulationUpdate" type="mkt:QueryByAllLocationDayType"/>
         <element name="MUIQueryDSRSchedReserveOffer" type="mkt:QueryByAllLocationDayType"/>
         <element name="MUIQueryDSRSchedReserveUpdate" type="mkt:QueryByAllLocationDayType"/>
         <element name="MUIQueryDSRSynchReserveUpdate" type="mkt:QueryByAllLocationDayType"/>
         <element name="MUIQueryDispatchLambda" type="mkt:QueryByAllLocationType"/>
         <element name="MUIQueryExtendedUnitDetail" type="mkt:QueryByAllLocationDayType"/>
         <element name="MUIQueryFuelTypes" type="mkt:QueryByNoParametersType"/>
         <element name="MUIQueryInterfaceLimits" type="mkt:QueryByDayType"/>
         <element name="MUIQueryLocations" type="mkt:QueryByNoParametersType"/>
         <element name="MUIQueryMarketResults" type="mkt:QueryByAllLocationDayTypeType"/>
         <element name="MUIQueryNetTieSchedule" type="mkt:QueryByDayType"/>
         <element name="MUIQueryPortfolios" type="mkt:MUIQueryPortfoliosType"/>
         <element name="MUIQueryRegulationBilaterals" type="mkt:QueryByDayType"/>
         <element name="MUIQueryRegulationOffer" type="mkt:QueryByAllLocationDayType"/>
         <element name="MUIQueryRegulationResults" type="mkt:QueryByAreaDayType"/>
         <element name="MUIQueryRegulationUpdate" type="mkt:QueryByAllLocationDayType"/>
         <element name="MUIQueryReserveZones" type="mkt:QueryByNoParametersType"/>
         <element name="MUIQuerySchedReserveBilaterals" type="mkt:QueryByDayType"/>
         <element name="MUIQuerySchedReserveOffer" type="mkt:QueryByAllLocationDayType"/>
         <element name="MUIQuerySchedReserveResults" type="mkt:QueryByAreaDayType"/>
         <element name="MUIQueryScheduleDetail" type="mkt:QueryByScheduleDayType"/>
         <element name="MUIQueryScheduleOffer" type="mkt:QueryByScheduleDayType"/>
         <element name="MUIQueryScheduleSelection" type="mkt:QueryByLocationDayType"/>
         <element name="MUIQuerySpinningReserveUpdate" type="mkt:QueryByAllLocationDayType"/>
         <element name="MUIQuerySpinReserveBilaterals" type="mkt:QueryByDayType"/>
         <element name="MUIQuerySpinReserveResults" type="mkt:QueryByAreaDayType"/>
         <element name="MUIQueryWeatherForecast" type="mkt:MUIQueryWeatherForecastType"/>
         <element name="QueryASMarketPrices" type="mkt:QueryByDayType"/>
         <element name="QueryBindingLimits" type="mkt:QueryByDayType"/>
         <element name="QueryBidNodes" type="mkt:QueryBidNodesType"/>
         <element name="QueryDemandBid" type="mkt:QueryByAllLocationDayType"/>
         <element name="QueryDemandSummary" type="mkt:QueryByDayType"/>
         <element name="QueryDemandSummaryByZone" type="mkt:QueryByDayType"/>         
         <element name="QueryDispatchLambda" type="mkt:QueryByAllLocationType"/>
         <element name="QueryDistributionFactors" type="mkt:QueryByAllLocationDayType"/>
         <element name="QueryDSRRegulationOffer" type="mkt:QueryByAllLocationDayType"/>
         <element name="QueryDSRRegulationUpdate" type="mkt:QueryByAllLocationDayType"/>
         <element name="QueryDSRSRREGAward" type="mkt:QueryByAllLocationDayHourType"/>
         <element name="QueryDSRSchedReserveAward" type="mkt:QueryByAllLocationDayHourType"/>
         <element name="QueryDSRSchedReserveOffer" type="mkt:QueryByAllLocationDayType"/>
         <element name="QueryDSRSchedReserveUpdate" type="mkt:QueryByAllLocationDayType"/>
         <element name="QueryDSRSynchReserveOffer" type="mkt:QueryByAllLocationDayType"/>
         <element name="QueryDSRSynchReserveUpdate" type="mkt:QueryByAllLocationDayType"/>
         <element name="QueryInterfaceLimits" type="mkt:QueryByDayType"/>
         <element name="QueryLoadResponse" type="mkt:QueryByAllLocationDayType"/>
         <element name="QueryMarketPrices" type="mkt:QueryByAllLocationDayTypeType"/>
         <element name="QueryMarketResults" type="mkt:QueryByAllLocationDayTypeType"/>
         <element name="QueryMessages" type="mkt:QueryMessagesType"/>
         <element name="QueryNetTieSchedule" type="mkt:QueryByDayType"/>
         <element name="QueryNodeList" type="mkt:QueryByDayType"/>
         <element name="QueryPortfolios" type="mkt:QueryPortfoliosType"/>
         <element name="QueryRASchedMW" type="mkt:QueryByDayType"/>
         <element name="QueryRealTimeLoadResponseDaily" type="mkt:QueryByAllLocationDayType"/>
         <element name="QueryRealTimeLoadResponseHourly" type="mkt:QueryByAllLocationDayType"/>
         <element name="QueryRegulationBilaterals" type="mkt:QueryByDayType"/>
         <element name="QueryRegulationOffer" type="mkt:QueryByAllLocationDayType"/>
         <element name="QueryRegulationResults" type="mkt:QueryByDayType"/>
         <element name="QueryRegulationUpdate" type="mkt:QueryByAllLocationDayType"/>
         <element name="QuerySchedReserveAward" type="mkt:QueryByAllLocationDayHourType"/>
         <element name="QuerySchedReserveBilaterals" type="mkt:QueryByDayType"/>
         <element name="QuerySchedReserveOffer" type="mkt:QueryByAllLocationDayType"/>
         <element name="QuerySchedReserveResults" type="mkt:QueryByDayType"/>
         <element name="QueryScheduleDefinitions" type="mkt:QueryByNoParametersType"/>
         <element name="QueryScheduleDetail" type="mkt:QueryByScheduleDayType"/>
         <element name="QueryScheduleOffer" type="mkt:QueryByScheduleDayType"/>
         <element name="QueryScheduleSelection" type="mkt:QueryByScheduleDayType"/>
         <element name="QueryAllScheduleDetail" type="mkt:QueryByAllScheduleLocationDayType"/>
         <element name="QueryAllScheduleOffer" type="mkt:QueryByAllScheduleLocationDayType"/>
         <element name="QueryAllScheduleSelection" type="mkt:QueryByAllScheduleLocationDayType"/>
         <element name="QuerySpinningReserveOffer" type="mkt:QueryByAllLocationDayType"/>
         <element name="QuerySpinningReserveUpdate" type="mkt:QueryByAllLocationDayType"/>
         <element name="QuerySpinReserveBilaterals" type="mkt:QueryByDayType"/>
         <element name="QuerySpinReserveResults" type="mkt:QueryByDayType"/>
         <element name="QuerySPREGAward" type="mkt:QueryByAllLocationDayHourType"/>
         <element name="QueryThresholds" type="mkt:QueryByNoParametersType"/>
         <element name="QueryUnitDetail" type="mkt:QueryByAllLocationDayType"/>
         <element name="QueryUnitSchedules" type="mkt:QueryByAllLocationType"/>
         <element name="QueryUnitUpdate" type="mkt:QueryByAllLocationDayType"/>
         <element name="QueryVirtualBid" type="mkt:QueryByAllLocationDayType"/>
         <element name="QueryWeatherForecast" type="mkt:QueryWeatherForecastType"/>
      </choice>
   </complexType>
</element>

<!--  QueryResponse

      The QueryResponse is the root for all query response elements.  This
      element is returned in the SOAP Body.
-->

<element name="QueryResponse">
   <complexType>
      <choice minOccurs="1" maxOccurs="unbounded">
         <element name="MUIAllLocationsSet" type="mkt:MUILocationSetType"/>
         <element name="MUIAreaSet" type="mkt:MUIAreaSetType"/>
         <element name="MUIConEdContractBidSet" type="mkt:MUIConEdContractBidSetType"/>
         <element name="MUIConEdContractResults" type="mkt:MUIConEdContractResultsType"/>
         <element name="MUIConEdDefaults" type="mkt:MUIConEdDefaultsType"/>
         <element name="MUIRegAreaSet" type="mkt:MUIAreaSetType"/>
         <element name="MUISchedResAreaSet" type="mkt:MUIAreaSetType"/>
         <element name="MUISpinAreaSet" type="mkt:MUIAreaSetType"/>
         <element name="MUIASMarketPrices" type="mkt:MUIASMarketPricesType"/>
         <element name="MUIBindingLimits" type="mkt:MUIBindingLimitsType"/>
         <element name="MUIDayInformation" type="mkt:MUIDayInformationType"/>
         <element name="MUIDemandSummary" type="mkt:MUIDemandSummaryType"/>
         <element name="MUIDispatchLambdaSet" type="mkt:MUIDispatchLambdaSetType"/>
         <element name="MUIDSRRegulationOfferSet" type="mkt:MUIDSRRegulationOfferSetType"/>
         <element name="MUIDSRRegulationUpdateSet" type="mkt:MUIDSRRegulationUpdateSetType"/>
         <element name="MUIDSRSchedReserveOfferSet" type="mkt:MUIDSRSchedReserveOfferSetType"/>
         <element name="MUIDSRSchedReserveUpdateSet" type="mkt:MUIDSRSchedReserveUpdateSetType"/>
         <element name="MUIDSRSynchReserveUpdateSet" type="mkt:MUIDSRSynchReserveUpdateSetType"/>
         <element name="MUIExtendedUnitDetailSet" type="mkt:MUIExtendedUnitDetailSetType"/>
         <element name="MUIFuelTypeSet" type="mkt:MUIFuelTypeSetType"/>
         <element name="MUIInterfaceLimits" type="mkt:MUIInterfaceLimitsType"/>
         <element name="MUILocationSet" type="mkt:MUILocationSetType"/>
         <element name="MUIMarketResults" type="mkt:MUIMarketResultsType"/>
         <element name="MUINetTieSchedule" type="mkt:MUINetTieScheduleType"/>
         <element name="MUIPortfolios" type="mkt:MUIPortfoliosType"/>
         <element name="MUIRegulationBilaterals" type="mkt:MUIRegulationBilateralsType"/>
         <element name="MUIRegulationOfferSet" type="mkt:MUIRegulationOfferSetType"/>
         <element name="MUIRegulationResults" type="mkt:RegulationResultsType"/>
         <element name="MUIRegulationUpdateSet" type="mkt:MUIRegulationUpdateSetType"/>
         <element name="MUIReserveZoneSet" type="mkt:MUIReserveZoneSetType"/>
         <element name="MUISchedReserveBilaterals" type="mkt:MUISchedReserveBilateralsType"/>
         <element name="MUISchedReserveOfferSet" type="mkt:MUISchedReserveOfferSetType"/>
         <element name="MUISchedReserveResults" type="mkt:SchedReserveResultsType"/>
         <element name="MUIScheduleDetail" type="mkt:MUIScheduleDetailType"/>
         <element name="MUIScheduleOffer" type="mkt:MUIScheduleOfferType"/>
         <element name="MUIScheduleSelectionSet" type="mkt:MUIScheduleSelectionSetType"/>
         <element name="MUISpinningReserveUpdateSet" type="mkt:MUISpinningReserveUpdateSetType"/>
         <element name="MUISpinReserveBilaterals" type="mkt:MUISpinReserveBilateralsType"/>
         <element name="MUISpinReserveResults" type="mkt:SpinReserveResultsType"/>
         <element name="MUIWeatherForecast" type="mkt:MUIWeatherForecastType"/>
         <element name="AllScheduleDetailSet" type="mkt:ScheduleDetailSetType"/>
         <element name="AllScheduleOfferSet" type="mkt:ScheduleOfferSetType"/>
         <element name="AllScheduleSelectionSet" type="mkt:ScheduleSelectionSetType"/>
         <element name="ASMarketPrices" type="mkt:ASMarketPricesType"/>
         <element name="BindingLimits" type="mkt:BindingLimitsType"/>
         <element name="BidNodes" type="mkt:BidNodesType"/>
         <element name="DemandBidSet" type="mkt:DemandBidSetType"/>
         <element name="DemandSummary" type="mkt:DemandSummaryType"/>
         <element name="DemandSummaryByZone" type="mkt:DemandSummaryByZoneType"/>
         <element name="DispatchLambdaSet" type="mkt:DispatchLambdaSetType"/>
         <element name="DistributionFactors" type="mkt:DistributionFactorsType"/>
         <element name="DSRRegulationOfferSet" type="mkt:DSRRegulationOfferSetType"/>
         <element name="DSRRegulationUpdateSet" type="mkt:DSRRegulationUpdateSetType"/>
         <element name="DSRSchedReserveAwardSet" type="mkt:SchedReserveAwardSetType"/>
         <element name="DSRSchedReserveOfferSet" type="mkt:DSRSchedReserveOfferSetType"/>
         <element name="DSRSchedReserveUpdateSet" type="mkt:DSRSchedReserveUpdateSetType"/>
         <element name="DSRSynchReserveOfferSet" type="mkt:DSRSynchReserveOfferSetType"/>
         <element name="DSRSynchReserveUpdateSet" type="mkt:DSRSynchReserveUpdateSetType"/>
         <element name="DSRSRREGAwardSet" type="mkt:DSRSRREGAwardSetType"/>
         <element name="ErrorSet" type="mkt:ErrorSetType"/>
         <element name="InterfaceLimits" type="mkt:InterfaceLimitsType"/>
         <element name="LoadResponseSet" type="mkt:LoadResponseSetType"/>
         <element name="MarketPricesSet" type="mkt:MarketPricesSetType"/>
         <element name="MarketResultsSet" type="mkt:MarketResultsSetType"/>
         <element name="MessageSet" type="mkt:MessageSetType"/>
         <element name="NetTieSchedule" type="mkt:NetTieScheduleType"/>
         <element name="NodeList" type="mkt:NodeListType"/>
         <element name="Portfolios" type="mkt:PortfoliosType"/>
         <element name="RASchedMW" type="mkt:RASchedMWType"/>
         <element name="RealTimeLoadResponseDailySet" type="mkt:RealTimeLoadResponseDailySetType"/>
         <element name="RealTimeLoadResponseHourlySet" type="mkt:RealTimeLoadResponseHourlySetType"/>
         <element name="RegulationBilaterals" type="mkt:RegulationBilateralsType"/>
         <element name="RegulationOfferSet" type="mkt:RegulationOfferSetType"/>
         <element name="RegulationResults" type="mkt:RegulationResultsType"/>
         <element name="RegulationUpdateSet" type="mkt:RegulationUpdateSetType"/>
         <element name="SchedReserveAwardSet" type="mkt:SchedReserveAwardSetType"/>
         <element name="SchedReserveBilaterals" type="mkt:SchedReserveBilateralsType"/>
         <element name="SchedReserveOfferSet" type="mkt:SchedReserveOfferSetType"/>
         <element name="SchedReserveResults" type="mkt:SchedReserveResultsType"/>
         <element name="ScheduleDefinitions" type="mkt:ScheduleDefinitionsType"/>
         <element name="ScheduleDetailSet" type="mkt:ScheduleDetailSetType"/>
         <element name="ScheduleOfferSet" type="mkt:ScheduleOfferSetType"/>
         <element name="ScheduleSelectionSet" type="mkt:ScheduleSelectionSetType"/>
         <element name="SpinningReserveOfferSet" type="mkt:SpinningReserveOfferSetType"/>
         <element name="SpinningReserveUpdateSet" type="mkt:SpinningReserveUpdateSetType"/>
         <element name="SpinReserveBilaterals" type="mkt:SpinReserveBilateralsType"/>
         <element name="SpinReserveResults" type="mkt:SpinReserveResultsType"/>
         <element name="SPREGAwardSet" type="mkt:SPREGAwardSetType"/>
         <element name="Thresholds" type="mkt:ThresholdsType"/>
         <element name="UnitDetailSet" type="mkt:UnitDetailSetType"/>
         <element name="UnitSchedulesSet" type="mkt:UnitSchedulesSetType"/>
         <element name="UnitUpdateSet" type="mkt:UnitUpdateSetType"/>
         <element name="VirtualBidSet" type="mkt:VirtualBidSetType"/>
         <element name="WeatherForecast" type="mkt:WeatherForecastType"/>
      </choice>
   </complexType>
</element>

<!--  RA Sched MW
-->
   <complexType name="RASchedMWType">
      <sequence>
          <element name="RASchedMWReason" minOccurs="0" maxOccurs="unbounded">
              <complexType>
                  <all>
                      <element name="Reason" type="string" minOccurs="0" maxOccurs="1"/>
                      <element name="SumEconMax" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
                  </all>
              </complexType>
          </element>
      </sequence>
      <attribute name="day" type="date" use="required"/>
   </complexType>

<!--  QueryWeatherForecastType
-->

<complexType name="QueryWeatherForecastType">
   <sequence>
      <element name="WeatherPointName" type="mkt:WeatherPointNameType" minOccurs="1" maxOccurs="1"/>
   </sequence>
   <attribute name="day" type="date"/>
</complexType>

<!--  Real Time Load Response Daily
-->

<complexType name="RealTimeLoadResponseDailyType">
   <sequence>
      <element name="Price" type="mkt:MWPriceType" minOccurs="0" maxOccurs="1"/>
      <element name="ShutdownCost1" type="mkt:CostType" minOccurs="0" maxOccurs="1"/>
      <element name="ShutdownCost2" type="mkt:CostType" minOccurs="0" maxOccurs="1"/>
      <element name="MinimumDowntime" type="mkt:RunTimeType" minOccurs="0" maxOccurs="1"/>
   </sequence>
   <attribute name="day" type="date" use="required"/>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
</complexType>

<!--  RealTimeLoadResponseDailySetType
-->

<complexType name="RealTimeLoadResponseDailySetType">
   <sequence>
      <element name="RealTimeLoadResponseDaily" type="mkt:RealTimeLoadResponseDailyType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--  Real Time Load Response Hourly
-->

<complexType name="RealTimeLoadResponseHourlyType">
   <sequence>
      <element name="RTLoadResponseHourly" minOccurs="0" maxOccurs="25">
         <complexType>
            <sequence>
               <element name="MW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
            </sequence>
            <attributeGroup ref="mkt:HourEndingGroup"/>
         </complexType>
      </element>
   </sequence>
   <attribute name="day" type="date" use="required"/>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
</complexType>

<!--  RealTimeLoadResponseHourlySetType
-->

<complexType name="RealTimeLoadResponseHourlySetType">
   <sequence>
      <element name="RealTimeLoadResponseHourly" type="mkt:RealTimeLoadResponseHourlyType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--  Regulation Bilaterals Type
-->

<complexType name="RegulationBilateralsType">
   <sequence>
      <element name="BilateralSchedule" minOccurs="0" maxOccurs="unbounded">
         <complexType>
            <all>
               <element name="Confirmed" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
               <element name="BilateralID" type="mkt:BilateralIDType" minOccurs="0" maxOccurs="1"/>
               <element name="Buyer" type="mkt:ParticipantNameType" minOccurs="1" maxOccurs="1"/>
               <element name="Seller" type="mkt:ParticipantNameType" minOccurs="1" maxOccurs="1"/>
               <element name="MW" type="mkt:MWType" minOccurs="1" maxOccurs="1"/>
               <element name="StartTime" type="dateTime" minOccurs="1" maxOccurs="1"/>
               <element name="StopTime" type="dateTime" minOccurs="1" maxOccurs="1"/>
               <element name="ConfirmationTime" type="dateTime" minOccurs="0" maxOccurs="1"/>
               <element name="AreaName" type="mkt:AreaNameType" minOccurs="1" maxOccurs="1"/>
            </all>
         </complexType>
      </element>
   </sequence>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  Regulation Offer Type
-->

<complexType name="RegulationOfferType">
   <all>
      <element name="OfferMW" type="mkt:OfferMWType" minOccurs="0" maxOccurs="1"/>
      <element name="OfferPrice" type="mkt:MWPriceType" minOccurs="0" maxOccurs="1"/>
      <element name="Unavailable" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
      <element name="SelfScheduled" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
      <element name="MinimumMW" type="mkt:OfferMWType" minOccurs="0" maxOccurs="1"/>
   </all>
   <attribute name="day" type="date" use="required"/>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
</complexType>

<!--  RegulationOfferSetType
-->

<complexType name="RegulationOfferSetType">
   <sequence>
      <element name="RegulationOffer" type="mkt:RegulationOfferType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--  Regulation Results
-->

<complexType name="RegulationResultsType">
   <sequence>
      <element name="RegulationResultsHourly" minOccurs="0" maxOccurs="25">
         <complexType>
            <sequence>
               <element name="RegulationResultsByArea" minOccurs="0" maxOccurs="unbounded">
                  <complexType>
                     <all>
                        <element name="RMCP" type="mkt:MWPriceType" minOccurs="0" maxOccurs="1"/>
                        <element name="SelfScheduledMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
                        <element name="ProcuredMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
                        <element name="TotalMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
                        <element name="RequiredMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
                        <element name="DeficiencyMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
                        <element name="AreaName" type="mkt:AreaNameType" minOccurs="0" maxOccurs="1"/>
                     </all>
                  </complexType>
               </element>
            </sequence>
            <attributeGroup ref="mkt:HourEndingGroup"/>
         </complexType>
      </element>
   </sequence>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  Regulation Update
-->

<complexType name="RegulationUpdateType">
   <sequence>
      <element name="RegulationUpdateHourly" minOccurs="0" maxOccurs="25">
         <complexType>
            <all>
               <element name="MW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
               <element name="RegulationLimits" type="mkt:LimitsType" minOccurs="0" maxOccurs="1"/>
               <element name="Unavailable" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
               <element name="SelfScheduled" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
               <element name="Spilling" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
            </all>
            <attributeGroup ref="mkt:HourEndingGroup"/>
         </complexType>
      </element>
   </sequence>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  RegulationUpdateSetType
-->

<complexType name="RegulationUpdateSetType">
   <sequence>
      <element name="RegulationUpdate" type="mkt:RegulationUpdateType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--
     Day Ahead Scheduling Reserver (DASR) Related Types
 -->

<!--  SchedReserveOfferSetType
-->

<complexType name="SchedReserveOfferSetType">
   <sequence>
      <element name="SchedReserveOffer" type="mkt:SchedReserveOfferType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--  Sched Reserve Offer Type
-->

<complexType name="SchedReserveOfferType">
   <all>
      <element name="OfferPrice" type="mkt:MWPriceType" minOccurs="0" maxOccurs="1"/>
   </all>
   <attribute name="day" type="date" use="required"/>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
</complexType>

<!--  Sched Reserve Bilaterals Type
-->

<complexType name="SchedReserveBilateralsType">
   <sequence>
      <element name="SchedReserveBilateralSchedule" minOccurs="0" maxOccurs="unbounded">
         <complexType>
            <all>
               <element name="Confirmed" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
               <element name="BilateralID" type="mkt:BilateralIDType" minOccurs="0" maxOccurs="1"/>
               <element name="Buyer" type="mkt:ParticipantNameType" minOccurs="1" maxOccurs="1"/>
               <element name="Seller" type="mkt:ParticipantNameType" minOccurs="1" maxOccurs="1"/>
               <element name="MW" type="mkt:MWType" minOccurs="1" maxOccurs="1"/>
               <element name="StartTime" type="dateTime" minOccurs="1" maxOccurs="1"/>
               <element name="StopTime" type="dateTime" minOccurs="1" maxOccurs="1"/>
               <element name="ConfirmationTime" type="dateTime" minOccurs="0" maxOccurs="1"/>
               <element name="AreaName" type="mkt:AreaNameType" minOccurs="1" maxOccurs="1"/>
            </all>
         </complexType>
      </element>
   </sequence>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  Sched Reserve Results
-->

<complexType name="SchedReserveResultsType">
   <sequence>
      <element name="SchedReserveResultsHourly" minOccurs="0" maxOccurs="25">
         <complexType>
            <sequence>
               <element name="SchedReserveResultsByArea" minOccurs="0" maxOccurs="unbounded">
                  <complexType>
                     <all>
                        <element name="DASRMCP" type="mkt:MWPriceType" minOccurs="0" maxOccurs="1"/>
                        <element name="RequiredMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
                        <element name="AwardedMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
                        <element name="AreaName" type="mkt:AreaNameType" minOccurs="0" maxOccurs="1"/>
                     </all>
                  </complexType>
               </element>
            </sequence>
            <attributeGroup ref="mkt:HourEndingGroup"/>
         </complexType>
      </element>
   </sequence>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  DSR Sched Reserve Offer Type
-->

<complexType name="DSRSchedReserveOfferType">
   <all>
      <element name="OfferPrice" type="mkt:MWPriceType" minOccurs="0" maxOccurs="1"/>
   </all>
   <attribute name="day" type="date" use="required"/>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
</complexType>

<!--  DSR Sched Reserve Offer Set Type
-->

<complexType name="DSRSchedReserveOfferSetType">
   <sequence>
      <element name="DSRSchedReserveOffer" type="mkt:DSRSchedReserveOfferType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--  DSR Sched Reserve Update Type
-->

<complexType name="DSRSchedReserveUpdateType">
   <sequence>
      <element name="DSRSchedReserveUpdateHourly" minOccurs="0" maxOccurs="25">
        <complexType>
           <all>
              <element name="Eligible" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
           </all>
           <attributeGroup ref="mkt:HourEndingGroup"/>
        </complexType>
      </element>
   </sequence>
   <attribute name="day" type="date" use="required"/>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
</complexType>

<!--  DSR Sched Reserve Update Set Type
-->

<complexType name="DSRSchedReserveUpdateSetType">
   <sequence>
      <element name="DSRSchedReserveUpdate" type="mkt:DSRSchedReserveUpdateType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--
     End of Day Ahead Scheduling Reserver (DASR) Related Types
 -->

<!--  RuntimesType
-->

<complexType name="RuntimesType">
   <all>
      <element name="MinimumRuntime" type="mkt:RuntimeTimeType"  minOccurs="0" maxOccurs="1"/>
      <element name="MaximumRuntime" type="mkt:RuntimeTimeType"  minOccurs="0" maxOccurs="1"/>
      <element name="MinimumDowntime" type="mkt:RuntimeTimeType"  minOccurs="0" maxOccurs="1"/>
      <element name="HotToColdTime" type="mkt:RuntimeTimeType"  minOccurs="0" maxOccurs="1"/>
      <element name="HotToIntermediateTime" type="mkt:RuntimeTimeType"  minOccurs="0" maxOccurs="1"/>
      <element name="ColdStartupTime" type="mkt:RuntimeTimeType"  minOccurs="0" maxOccurs="1"/>
      <element name="IntermediateStartupTime" type="mkt:RuntimeTimeType"  minOccurs="0" maxOccurs="1"/>
      <element name="HotStartupTime" type="mkt:RuntimeTimeType"  minOccurs="0" maxOccurs="1"/>
      <element name="ColdNotificationTime" type="mkt:RuntimeTimeType"  minOccurs="0" maxOccurs="1"/>
      <element name="IntermediateNotificationTime" type="mkt:RuntimeTimeType"  minOccurs="0" maxOccurs="1"/>
      <element name="HotNotificationTime" type="mkt:RuntimeTimeType"  minOccurs="0" maxOccurs="1"/>
      <element name="MaximumDailyStarts" type="mkt:RuntimeCountType"  minOccurs="0" maxOccurs="1"/>
      <element name="MaximumWeeklyStarts" type="mkt:RuntimeCountType"  minOccurs="0" maxOccurs="1"/>
      <element name="MaximumDailyEnergy" type="mkt:MWEnergyType"  minOccurs="0" maxOccurs="1"/>
      <element name="MaximumWeeklyEnergy" type="mkt:MWEnergyType"  minOccurs="0" maxOccurs="1"/>
   </all>
</complexType>

<!--  Schedule Detail Type
-->

<complexType name="ScheduleDetailType">
   <all>
      <element name="Market" type="mkt:ScheduleMarketType" minOccurs="0" maxOccurs="1" default="DayAhead"/>
      <element name="EconomicLimits" type="mkt:LimitsType" minOccurs="0" maxOccurs="1"/>
      <element name="EmergencyLimits" type="mkt:LimitsType" minOccurs="0" maxOccurs="1"/>
      <element name="Runtimes" type="mkt:RuntimesType" minOccurs="0" maxOccurs="1"/>
      <element name="UseStartupNoLoad" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
      <element name="StartupCosts" type="mkt:StartupCostsType" minOccurs="0" maxOccurs="1"/>
      <element name="FuelTypes" type="mkt:ScheduleFuelTypesType" minOccurs="0" maxOccurs="1"/>
   </all>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
   <attribute name="schedule" type="mkt:ScheduleNameType" use="required"/>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  Schedule Detail Set Type
-->

<complexType name="ScheduleDetailSetType">
   <sequence>
      <element name="ScheduleDetail" type="mkt:ScheduleDetailType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--  Schedule Fuel Types Type
-->

<complexType name="ScheduleFuelTypesType">
   <all>
      <element name="Primary" type="mkt:FuelTypeNameType" minOccurs="0" maxOccurs="1"/>
      <element name="Sub" type="mkt:FuelTypeNameType" minOccurs="0" maxOccurs="1"/>
   </all>
</complexType>

<!--  Schedule Definitions Type
-->

<complexType name="ScheduleDefinitionsType">
   <sequence>
      <element name="ScheduleDefinition" minOccurs="0" maxOccurs="unbounded">
         <complexType>
            <all>
               <element name="Schedule" type="mkt:ScheduleNameType" minOccurs="1" maxOccurs="1"/>
               <element name="Type" type="mkt:ScheduleTypeNameType" minOccurs="1" maxOccurs="1"/>
               <element name="LMPCapped" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
               <element name="Description" type="mkt:ScheduleTypeDescriptionType" minOccurs="0" maxOccurs="1"/>
            </all>
         </complexType>
      </element>
   </sequence>
</complexType>

<!--  ScheduleOffer Type
-->

<complexType name="ScheduleOfferType">
   <sequence>
      <element name="OfferSegment" minOccurs="0" maxOccurs="10">
         <complexType>
            <attribute name="MW" type="mkt:MWType" use="required"/>
            <attribute name="price" type="mkt:MWPriceType" use="required"/>
         </complexType>
      </element>
   </sequence>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
   <attribute name="schedule" type="mkt:ScheduleNameType" use="required"/>
   <attribute name="day" type="date" use="required"/>
   <attribute name="slope" type="boolean" use="optional" default="false"/>
</complexType>

<!--  Schedule Offer Set Type
-->

<complexType name="ScheduleOfferSetType">
   <sequence>
      <element name="ScheduleOffer" type="mkt:ScheduleOfferType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--  Schedule Selection Type
-->

<complexType name="ScheduleSelectionType">
   <sequence>
      <element name="Available" type="boolean" minOccurs="0" maxOccurs="1"/>
   </sequence>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
   <attribute name="schedule" type="mkt:ScheduleNameType" use="required"/>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  Schedule Selection Set Type
-->

<complexType name="ScheduleSelectionSetType">
   <sequence>
      <element name="ScheduleSelection" type="mkt:ScheduleSelectionType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--  Spinning Reserve Offer Type
-->

<complexType name="SpinningReserveOfferType">
   <all>
      <element name="OfferMW" type="mkt:OfferMWType" minOccurs="0" maxOccurs="1"/>
      <element name="OfferPrice" type="mkt:MWPriceType" minOccurs="0" maxOccurs="1"/>
      <element name="CondenseAvailable" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
      <element name="CondenseStartupCost" type="mkt:MWPriceType"  minOccurs="0" maxOccurs="1"/>
      <element name="CondenseEnergyUsage" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
      <element name="CondenseToGenCost" type="mkt:MWPriceType" minOccurs="0" maxOccurs="1"/>
      <element name="SpinAsCondenser" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
      <element name="FullLoadHeatRate" type="mkt:HeatRateType" minOccurs="0" maxOccurs="1"/>
      <element name="ReducedLoadHeatRate" type="mkt:HeatRateType" minOccurs="0" maxOccurs="1"/>
      <element name="VOMRate" type="mkt:VOMRateType" minOccurs="0" maxOccurs="1"/>
   </all>
   <attribute name="day" type="date" use="required"/>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
</complexType>

<!--  SpinningReserveOfferSetType
-->

<complexType name="SpinningReserveOfferSetType">
   <sequence>
      <element name="SpinningReserveOffer" type="mkt:SpinningReserveOfferType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--  Spinning Reserve Update Type
-->

<complexType name="SpinningReserveUpdateType">
   <sequence>
      <element name="SpinningReserveUpdateHourly" minOccurs="0" maxOccurs="25">
         <complexType>
            <all>
               <element name="OfferMW" type="mkt:OfferMWType" minOccurs="0" maxOccurs="1"/>
               <element name="SpinMAX" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
               <element name="Unavailable" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
               <element name="SelfScheduledMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
            </all>
            <attributeGroup ref="mkt:HourEndingGroup"/>
         </complexType>
      </element>
   </sequence>
   <attribute name="day" type="date" use="required"/>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
</complexType>

<!--  SpinningReserveUpdateSetType
-->

<complexType name="SpinningReserveUpdateSetType">
   <sequence>
      <element name="SpinningReserveUpdate" type="mkt:SpinningReserveUpdateType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--  Spin Reserve Bilaterals Type
-->

<complexType name="SpinReserveBilateralsType">
   <sequence>
      <element name="SpinBilateralSchedule" minOccurs="0" maxOccurs="unbounded">
         <complexType>
            <all>
              <element name="Confirmed" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
              <element name="BilateralID" type="mkt:BilateralIDType" minOccurs="0" maxOccurs="1"/>
              <element name="Buyer" type="mkt:ParticipantNameType" minOccurs="1" maxOccurs="1"/>
              <element name="Seller" type="mkt:ParticipantNameType" minOccurs="1" maxOccurs="1"/>
              <element name="MW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
              <element name="Percent" type="mkt:ObligationPercentageType" minOccurs="0" maxOccurs="1"/>
              <element name="StartTime" type="dateTime" minOccurs="1" maxOccurs="1"/>
              <element name="StopTime" type="dateTime" minOccurs="1" maxOccurs="1"/>
              <element name="ConfirmationTime" type="dateTime" minOccurs="0" maxOccurs="1"/>
              <element name="AreaName" type="mkt:AreaNameType" minOccurs="0" maxOccurs="1"/>
              <element name="ReserveZone" type="mkt:ReserveZoneNameType" minOccurs="0" maxOccurs="1"/>
            </all>
         </complexType>
      </element>
   </sequence>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  Spin Reserve Results
-->

<complexType name="SpinReserveResultsType">
   <sequence>
      <element name="SpinReserveResultsHourly" minOccurs="0" maxOccurs="25">
         <complexType>
            <sequence>
               <element name="SpinReserveResultsByArea" minOccurs="0" maxOccurs="unbounded">
                  <complexType>
                     <all>
                        <element name="SPMCP" type="mkt:MWPriceType" minOccurs="0" maxOccurs="1"/>
                        <element name="RequiredMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
                        <element name="Tier1MW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
                        <element name="Tier2MW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
                        <element name="SelfScheduledMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
                        <element name="Tier2AssignedMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
                        <element name="TotalMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
                        <element name="DeficiencyMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
                        <element name="AreaName" type="mkt:AreaNameType" minOccurs="0" maxOccurs="1"/>
                        <element name="ReserveZone" type="mkt:ReserveZoneNameType" minOccurs="0" maxOccurs="1"/>
                     </all>
                  </complexType>
                </element>
            </sequence>
            <attributeGroup ref="mkt:HourEndingGroup"/>
         </complexType>
      </element>
   </sequence>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  SPREG Award Type
-->

<complexType name="SPREGAwardType">
   <sequence>
      <element name="SPREGAwardHourly" minOccurs="0" maxOccurs="25">
         <complexType>
            <all>
               <element name="Tier" type="mkt:TierNameType" minOccurs="0" maxOccurs="1"/>
               <element name="SpinOfferMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
               <element name="RegOfferMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
               <element name="Tier1MW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
               <element name="SelfScheduledMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
               <element name="Tier2MW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
               <element name="RegAwardedMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
            </all>
            <attributeGroup ref="mkt:HourEndingGroup"/>
         </complexType>
      </element>
   </sequence>
   <attribute name="day" type="date" use="required"/>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
</complexType>

<!--  SPREG Award Set Type
-->

<complexType name="SPREGAwardSetType">
   <sequence>
      <element name="SPREGAward" type="mkt:SPREGAwardType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--  Sched Reserve Award Type
-->

<complexType name="SchedReserveAwardType">
   <sequence>
      <element name="SchedReserveAwardHourly" minOccurs="0" maxOccurs="25">
         <complexType>
            <all>
               <element name="AreaName" type="mkt:AreaNameType" minOccurs="0" maxOccurs="1"/>
               <element name="DASRAwardedMW" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
            </all>
            <attributeGroup ref="mkt:HourEndingGroup"/>
         </complexType>
      </element>
   </sequence>
   <attribute name="day" type="date" use="required"/>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
</complexType>

<!--  Sched Reserve Award Set Type
-->

<complexType name="SchedReserveAwardSetType">
   <sequence>
      <element name="SchedReserveAward" type="mkt:SchedReserveAwardType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--  StartupCostsType
-->

<complexType name="StartupCostsType">
  <all>
     <element name="NoLoadCost" type="mkt:CostType" minOccurs="0" maxOccurs="1" />
     <element name="ColdStartupCost" type="mkt:CostType" minOccurs="0" maxOccurs="1" />
     <element name="IntermediateStartupCost" type="mkt:CostType" minOccurs="0" maxOccurs="1" />
     <element name="HotStartupCost" type="mkt:CostType" minOccurs="0" maxOccurs="1" />
  </all>
</complexType>

<!--  SubmitRequest

      This is the root element for all submit requests.
-->

<element name="SubmitRequest">
   <complexType>
   <choice minOccurs="1" maxOccurs="unbounded">
      <element name="MUIConEdContractBid" type="mkt:MUIConEdContractBidType"/>
      <element name="MUIDeleteSchedReserveBilateral" type="mkt:MUIDeleteBilateralType"/>
      <element name="MUIDeleteRegulationBilateral" type="mkt:MUIDeleteBilateralType"/>
      <element name="MUIDeleteSpinReserveBilateral" type="mkt:MUIDeleteBilateralType"/>
      <element name="MUIDeleteUnitSchedule" type="mkt:MUIDeleteUnitScheduleType"/>
      <element name="MUIRegulationBilaterals" type="mkt:MUIRegulationBilateralsType"/>
      <element name="MUISchedReserveBilaterals" type="mkt:MUISchedReserveBilateralsType"/>
      <element name="MUIScheduleSelection" type="mkt:MUIScheduleSelectionType"/>
      <element name="MUISpinReserveBilaterals" type="mkt:MUISpinReserveBilateralsType"/>
      <element name="DistributionFactors" type="mkt:DistributionFactorsType"/>
      <element name="DemandBid" type="mkt:DemandBidType"/>
      <element name="DSRRegulationOffer" type="mkt:DSRRegulationOfferType"/>
      <element name="DSRRegulationUpdate" type="mkt:DSRRegulationUpdateType"/>
      <element name="DSRSchedReserveOffer" type="mkt:DSRSchedReserveOfferType"/>
      <element name="DSRSchedReserveUpdate" type="mkt:DSRSchedReserveUpdateType"/>
      <element name="DSRSynchReserveOffer" type="mkt:DSRSynchReserveOfferType"/>
      <element name="DSRSynchReserveUpdate" type="mkt:DSRSynchReserveUpdateType"/>
      <element name="LoadResponse" type="mkt:LoadResponseType"/>
      <element name="Portfolios" type="mkt:PortfoliosType"/>
      <element name="RealTimeLoadResponseDaily" type="mkt:RealTimeLoadResponseDailyType"/>
      <element name="RealTimeLoadResponseHourly" type="mkt:RealTimeLoadResponseHourlyType"/>
      <element name="RegulationOffer" type="mkt:RegulationOfferType"/>
      <element name="RegulationUpdate" type="mkt:RegulationUpdateType"/>
      <element name="SchedReserveOffer" type="mkt:SchedReserveOfferType"/>
      <element name="ScheduleOffer" type="mkt:ScheduleOfferType"/>
      <element name="ScheduleDetail" type="mkt:ScheduleDetailType"/>
      <element name="ScheduleSelection" type="mkt:ScheduleSelectionType"/>
      <element name="SpinningReserveOffer" type="mkt:SpinningReserveOfferType"/>
      <element name="SpinningReserveUpdate" type="mkt:SpinningReserveUpdateType"/>
      <element name="Thresholds" type="mkt:ThresholdsType"/>
      <element name="UnitSchedules" type="mkt:UnitSchedulesType"/>
      <element name="UnitUpdate" type="mkt:UnitUpdateType"/>
      <element name="UnitDetail" type="mkt:UnitDetailType"/>
      <element name="VirtualBid" type="mkt:VirtualBidType"/>
      <element name="WeatherForecast" type="mkt:WeatherForecastType"/>
   </choice>
   </complexType>
</element>

<!--  SubmitResponse

      This element is the submit response root element that contains
      all returned elements which currently are error and success.
-->

<element name="SubmitResponse">
   <complexType>
   <choice>
      <element name="Success" type="mkt:SuccessType" minOccurs="1" maxOccurs="1"/>
      <element name="Error" type="mkt:ErrorType" minOccurs="1" maxOccurs="unbounded"/>
   </choice>
   </complexType>
</element>

<!--  ThresholdsType
-->

<complexType name="ThresholdsType">
   <sequence>
      <element name="VirtualBidThresholds" minOccurs="0" maxOccurs="1">
         <complexType>
            <sequence>
               <element name="IncrementThreshold" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
               <element name="DecrementThreshold" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
            </sequence>
         </complexType>
      </element>
      <element name="DemandBidThresholds" minOccurs="0" maxOccurs="1">
         <complexType>
            <sequence>
               <element name="DemandBidThreshold" minOccurs="0" maxOccurs="unbounded">
                  <complexType>
                     <sequence>
                        <element name="FixedThreshold" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
                        <element name="PriceSensitiveThreshold" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
                        <element name="FixedThresholdAllowed" type="boolean" minOccurs="0" maxOccurs="1"/>
                        <element name="PriceSensitiveThresholdAllowed" type="boolean" minOccurs="0" maxOccurs="1"/>
                     </sequence>
                     <attribute name="location" type="mkt:LocationNameType" use="required"/>
                  </complexType>
               </element>
            </sequence>
         </complexType>
      </element>
   </sequence>
</complexType>

<!--  UnitDetail
-->

<complexType name="UnitDetailType">
   <sequence>
      <element name="DefaultCommitStatus" type="mkt:CommitStatusType" minOccurs="0" maxOccurs="1" default="Economic"/>
      <element name="FixedGen" type="boolean" default="false" minOccurs="0" maxOccurs="1"/>    
      <element name="DefaultLimits" minOccurs="0" maxOccurs="1">
         <complexType>
            <all>
               <element name="Economic" type="mkt:LimitsType" minOccurs="0" maxOccurs="1"/>
               <element name="Emergency" type="mkt:LimitsType" minOccurs="0" maxOccurs="1"/>
               <element name="Regulation" type="mkt:LimitsType" minOccurs="0" maxOccurs="1"/>
               <element name="Spinning" type="mkt:LimitsMaxType" minOccurs="0" maxOccurs="1"/>
               <element name="Temperature" minOccurs="0" maxOccurs="1">
                  <complexType>
                     <sequence>
                        <element name="EconomicRange" type="mkt:TemperatureLimitsType" minOccurs="0" maxOccurs="1"/>
                        <element name="EmergencyRange" type="mkt:TemperatureLimitsType" minOccurs="0" maxOccurs="1"/>
                     </sequence>
                  </complexType>
               </element>
            </all>
         </complexType>
      </element>
      <element name="DefaultStartupCosts" minOccurs="0" maxOccurs="2">
         <complexType>
            <all>
               <element name="UseCostBasedStartup" type="boolean" default="false" minOccurs="0" maxOccurs="1"/>
               <element name="NoLoad" type="mkt:CostType" minOccurs="0" maxOccurs="1"/>
               <element name="ColdStartup" type="mkt:CostType" minOccurs="0" maxOccurs="1"/>
               <element name="IntermediateStartup" type="mkt:CostType" minOccurs="0" maxOccurs="1"/>
               <element name="HotStartup" type="mkt:CostType" minOccurs="0" maxOccurs="1"/>
            </all>
            <attribute name="interval" type="mkt:StartupCostIntervalType" use="required"/>
         </complexType>
      </element>
      <element name="DefaultRampRate" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
      <element name="EnergyRampRateCurve" type="mkt:RampRateCurveType" minOccurs="0" maxOccurs="1"/>
      <element name="SpinRampRateCurve" type="mkt:RampRateCurveType" minOccurs="0" maxOccurs="1"/>
      <element name="CondenseAvailable" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
      <element name="CondenseStartupCost" type="mkt:MWPriceType"  minOccurs="0" maxOccurs="1"/>
      <element name="CondenseEnergyUsage" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
      <element name="CondenseToGenCost" type="mkt:MWPriceType" minOccurs="0" maxOccurs="1"/>
      <element name="CondenseNotificationTime" type="mkt:DeltaHoursType" minOccurs="0" maxOccurs="1"/>
      <element name="CondenseHourlyCost" type="mkt:MWPriceType" minOccurs="0" maxOccurs="1"/>
      <element name="CombinedCycleParameters" minOccurs="0" maxOccurs="1">
         <complexType>
            <all>
               <element name="MinTimeBetweenStartups" type="mkt:RuntimeTimeType" minOccurs="0" maxOccurs="1"/>
               <element name="AllowSimpleCycle" type="boolean" default="false" minOccurs="0" maxOccurs="1"/>
               <element name="CombinedCycleFactor" type="mkt:CombinedCycleFactorType" minOccurs="0" maxOccurs="1"/>
            </all>
         </complexType>
      </element>
      <element name="PumpStorageParameters" minOccurs="0" maxOccurs="1">
         <complexType>
            <all>
               <element name="PumpingFactor" type="mkt:PumpingFactorType" minOccurs="0" maxOccurs="1"/>
               <element name="InitialMWH" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
               <element name="FinalMWH" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
               <element name="MaxMWH" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
               <element name="MinMWH" type="mkt:MWType" minOccurs="0" maxOccurs="1"/>
           </all>
         </complexType>
      </element>
      <element name="PumpStorageLimits" type="mkt:PumpStorageLimitsType" minOccurs="0" maxOccurs="1"/>
   </sequence>
   <attribute name="day" type="date" use="required"/>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
</complexType>

<!--  UnitDetailSetType
-->

<complexType name="UnitDetailSetType">
   <sequence>
      <element name="UnitDetail" type="mkt:UnitDetailType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--  UnitSchedulesType
-->

<complexType name="UnitSchedulesType">
   <sequence>
      <element name="UnitSchedule" minOccurs="0" maxOccurs="unbounded">
         <complexType>
            <sequence>
               <element name="ScheduleName" type="mkt:ScheduleShortNameType" minOccurs="0" maxOccurs="1"/>
               <element name="ScheduleDescription" type="mkt:ScheduleDescriptionType" minOccurs="0" maxOccurs="1"/>
            </sequence>
            <attribute name="schedule" type="mkt:ScheduleNameType" use="required"/>
         </complexType>
      </element>
   </sequence>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
</complexType>

<!--  UnitSchedulesSetType
-->

<complexType name="UnitSchedulesSetType">
   <sequence>
      <element name="UnitSchedules" type="mkt:UnitSchedulesType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--  UnitUpdate
-->

<complexType name="UnitUpdateType">
   <sequence>
      <element name="UnitUpdateHourly" minOccurs="0" maxOccurs="25">
         <complexType>
            <all>
               <element name="EconomicLimits" type="mkt:LimitsType" minOccurs="0" maxOccurs="1"/>
               <element name="EmergencyLimits" type="mkt:LimitsType" minOccurs="0" maxOccurs="1"/>
               <element name="CommitStatus" type="mkt:CommitStatusType" minOccurs="0" maxOccurs="1" default="Economic"/>
               <element name="FixedGen" type="boolean" default="false" minOccurs="0" maxOccurs="1"/>    
               <element name="DefaultEconomicLimits" type="mkt:LimitsType" minOccurs="0" maxOccurs="1"/>
               <element name="DefaultEmergencyLimits" type="mkt:LimitsType" minOccurs="0" maxOccurs="1"/>
               <element name="NotificationTime" type="mkt:RuntimeTimeType" minOccurs="0" maxOccurs="1"/>
               <element name="PumpStorageLimits" type="mkt:PumpStorageLimitsType" minOccurs="0" maxOccurs="1"/>
            </all>
            <attributeGroup ref="mkt:HourEndingGroup"/>
         </complexType>
      </element>
   </sequence>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  UnitUpdateSetType
-->

<complexType name="UnitUpdateSetType">
   <sequence>
      <element name="UnitUpdate" type="mkt:UnitUpdateType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--  Virtual Bid Type
-->

<complexType name="VirtualBidType">
   <all>
      <element name="Increment" type="mkt:VirtualBidIncDecType" minOccurs="0" maxOccurs="1"/>
      <element name="Decrement" type="mkt:VirtualBidIncDecType" minOccurs="0" maxOccurs="1"/>
   </all>
   <attribute name="location" type="mkt:LocationNameType" use="required"/>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  VirtualBidIncDecType
-->
<complexType name="VirtualBidIncDecType">
   <sequence>
      <element name="VirtualBidHourly" minOccurs="0" maxOccurs="25">
         <complexType>
            <sequence>
               <element name="BidSegment" type="mkt:BidSegmentType" minOccurs="0" maxOccurs="unbounded"/>
            </sequence>
            <attributeGroup ref="mkt:HourEndingGroup"/>
         </complexType>
      </element>
   </sequence>
</complexType>

<!--  VirtualBidSetType
-->

<complexType name="VirtualBidSetType">
   <sequence>
      <element name="VirtualBid" type="mkt:VirtualBidType" minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--  WeatherForecastType
-->

<complexType name="WeatherForecastType">
   <sequence>
      <element name="WeatherPoint" minOccurs="0" maxOccurs="unbounded">
         <complexType>
            <sequence>
               <element name="DaytimeTemperature" type="mkt:TemperatureType" minOccurs="0" maxOccurs="1"/>
               <element name="NighttimeTemperature" type="mkt:TemperatureType" minOccurs="0" maxOccurs="1"/>
            </sequence>
            <attribute name="name" type="mkt:WeatherPointNameType" use="required"/>
         </complexType>
      </element>
   </sequence>
   <attribute name="day" type="date" use="required"/>
</complexType>

<!--  PJM Common Types -->

<!--  AreaNameType
-->

<simpleType name="AreaNameType">
   <restriction base="string">
      <minLength value="1"/>
      <maxLength value="40"/>
   </restriction>
</simpleType>

<!--  BiannualPeriodType
-->

<simpleType name="BiannualPeriodType">
   <restriction base="int">
      <totalDigits value="1"/>
      <fractionDigits value="0"/>
      <minInclusive value="1"/>
      <maxInclusive value="2"/>
   </restriction>
</simpleType>

<!--  Bid Segment ID Type
-->

<simpleType name="BidSegmentIDType">
   <restriction base="int">
        <minInclusive value="1"/>
   </restriction>
</simpleType>

<!--  Bilateral ID Type
-->

<simpleType name="BilateralIDType">
   <restriction base="decimal">
      <totalDigits value="10"/>
      <fractionDigits value="0"/>
   </restriction>
</simpleType>

<!--  Block Bid Attribute
-->

<simpleType name="BlockBidAttributeType">
   <restriction base="string">
      <enumeration value="physical"/>
      <enumeration value="inc"/>
      <enumeration value="dec"/>
   </restriction>
</simpleType>

<!--  BranchNameType
-->

<simpleType name="BranchNameType">
   <restriction base="string">
      <minLength value="1"/>
      <maxLength value="90"/>
   </restriction>
</simpleType>

<!--  CombinedCycleFactorType
-->

<simpleType name="CombinedCycleFactorType">
   <restriction base="decimal">
      <totalDigits value="4"/>
      <fractionDigits value="1"/>
      <minInclusive value="0"/>
      <maxInclusive value="100"/>
   </restriction>
</simpleType>

<!--  ConstraintNameType
-->

<simpleType name="ConstraintNameType">
   <restriction base="string">
      <minLength value="1"/>
      <maxLength value="80"/>
   </restriction>
</simpleType>

<!--  ContingencyNameType
-->

<simpleType name="ContingencyNameType">
   <restriction base="string">
      <minLength value="1"/>
      <maxLength value="80"/>
   </restriction>
</simpleType>

<!--  CommitStatusType
-->

<simpleType name="CommitStatusType">
   <restriction base="string">
      <enumeration value="Unavailable"/>
      <enumeration value="Economic"/>
      <enumeration value="Emergency"/>
      <enumeration value="MustRun"/>
   </restriction>
</simpleType>

<!--  CostType
-->

<simpleType name="CostType">
   <restriction base="decimal">
      <totalDigits value="10"/>
      <fractionDigits value="2"/>
      <minInclusive value="-99999999.99"/>
      <maxInclusive value="99999999.99"/>
   </restriction>
</simpleType>

<!--  Delta Hours Type
-->

<simpleType name="DeltaHoursType">
   <restriction base="decimal">
      <totalDigits value="10"/>
      <fractionDigits value="1"/>
      <minInclusive value="0"/>
      <maxInclusive value="999999999.9"/>
   </restriction>
</simpleType>

<!--  ErrorType

      The ErrorType is used to specify a single error occurrence and it
      is returned as part of the ErrorResponse element.  The fields are:

        Code    Specifies an optional error code.
        Text    Specifies descriptive text.
        Line    Specifies an optional line number.

-->

<complexType name="ErrorType">
   <sequence>
      <element name="Code" type="string" minOccurs="0" maxOccurs="1"/>
      <element name="Text" type="string" minOccurs="1" maxOccurs="1"/>
      <element name="Line" type="string" minOccurs="0" maxOccurs="1"/>
   </sequence>
</complexType>

<!--  ErrorSetType
-->

<complexType name="ErrorSetType">
   <sequence>
      <element name="Error" type="mkt:ErrorType" minOccurs="1" maxOccurs="unbounded"/>
   </sequence>
</complexType>

<!--  FactorType
-->

<simpleType name="FactorType">
   <restriction base="decimal">
      <totalDigits value="8"/>
      <fractionDigits value="6"/>
      <minInclusive value="-1.0"/>
      <maxInclusive value="1.0"/>
   </restriction>
</simpleType>

<!--  Fuel Type Name Type
-->

<simpleType name="FuelTypeNameType">
   <restriction base="string">
      <minLength value="1"/>
      <maxLength value="20"/>
   </restriction>
</simpleType>

<!--  HourEndingType
-->

<simpleType name="HourEndingType">
   <restriction base="int">
      <totalDigits value="2"/>
      <minInclusive value="1"/>
      <maxInclusive value="24"/>
   </restriction>
</simpleType>

<!--  HourEndingGroup
-->

<attributeGroup name="HourEndingGroup">
   <attribute name="hour" type="mkt:HourEndingType" use="required"/>
   <attribute name="isDuplicateHour" type="boolean" default="false" use="optional"/>
</attributeGroup>

<!--  Interface Limit Name Type
-->

<simpleType name="InterfaceLimitNameType">
   <restriction base="string">
      <minLength value="1"/>
      <maxLength value="55"/>
   </restriction>
</simpleType>

<!--  Lambda Dispatch Rate Type
-->

<simpleType name="LambdaDispatchRateType">
   <restriction base="decimal">
      <totalDigits value="8"/>
      <fractionDigits value="2"/>
      <minInclusive value="0"/>
      <maxInclusive value="999999.99"/>
   </restriction>
</simpleType>

<!--  LimitsType
-->

<complexType name="LimitsType">
   <attribute name="minMW" type="mkt:MWType" use="optional"/>
   <attribute name="maxMW" type="mkt:MWType" use="optional"/>
</complexType>

<!--  LimitsMaxType
-->

<complexType name="LimitsMaxType">
   <attribute name="maxMW" type="mkt:MWType" use="required"/>
</complexType>

<!--  LimitsMinType
-->

<complexType name="LimitsMinType">
   <attribute name="minMW" type="mkt:MWType" use="required"/>
</complexType>

<!--  LocationID Type
-->

<simpleType name="LocationIDType">
   <restriction base="decimal">
      <fractionDigits value="0"/>
   </restriction>
</simpleType>

<!--  LocationLabel Type
-->

<simpleType name="LocationLabelType">
   <restriction base="string">
      <minLength value="1"/>
      <maxLength value="40"/>
   </restriction>
</simpleType>

<!--  LocationNameType

      This simple type declares the type for the locational
      pricing node name.

-->

<simpleType name="LocationNameType">
   <restriction base="string">
      <minLength value="1"/>
      <maxLength value="30"/>
   </restriction>
</simpleType>

<!--  MarginalValueType
-->

<simpleType name="MarginalValueType">
   <restriction base="decimal">
      <totalDigits value="10"/>
      <fractionDigits value="2"/>
      <minInclusive value="-99999999.99"/>
      <maxInclusive value="99999999.99"/>
   </restriction>
</simpleType>

<!--  MarketQueryTypeType
-->

<simpleType name="MarketQueryTypeType">
   <restriction base="string">
      <enumeration value="Public"/>
      <enumeration value="Generation"/>
      <enumeration value="Demand"/>
      <enumeration value="LoadResponse"/>
      <enumeration value="Virtual"/>
   </restriction>
</simpleType>

<!--  MessagePriorityType
-->

<simpleType name="MessagePriorityType">
   <restriction base="decimal">
      <totalDigits value="3"/>
      <fractionDigits value="0"/>
      <minInclusive value="0"/>
      <maxInclusive value="999"/>
   </restriction>
</simpleType>

<!--  MessageRealmType
-->

<simpleType name="MessageRealmType">
   <restriction base="string">
      <enumeration value="All"/>
      <enumeration value="Public"/>
      <enumeration value="Private"/>
   </restriction>
</simpleType>

<!--  MessageTextType
-->

<simpleType name="MessageTextType">
   <restriction base="string">
      <minLength value="1"/>
      <maxLength value="1024"/>
   </restriction>
</simpleType>

<!--  MWEnergyType
-->

<simpleType name="MWEnergyType">
   <restriction base="decimal">
      <totalDigits value="10"/>
      <fractionDigits value="1"/>
      <minInclusive value="-999999999.9"/>
      <maxInclusive value="999999999.9"/>
   </restriction>
</simpleType>

<!--  MWPriceType

      A simple type that designates the an offer price in $ per MW
      used for MW dependent costs such as offer curve.
-->

<simpleType name="MWPriceType">
   <restriction base="decimal">
      <totalDigits value="10"/>
      <fractionDigits value="2"/>
      <minInclusive value="-99999999.99"/>
      <maxInclusive value="99999999.99"/>
   </restriction>
</simpleType>

<!--  LMPType

      A simple type that designates an LMP value in $ per MW.
-->

<simpleType name="LMPType">
   <restriction base="decimal">
      <totalDigits value="14"/>
      <fractionDigits value="6"/>
      <minInclusive value="-99999999.999999"/>
      <maxInclusive value="99999999.999999"/>
   </restriction>
</simpleType>


<!--  MWType

      This type designates a MW value which is used for generation
      capacity, load values, limits, and energy.  Currently, both
      positive and negative values are allowed.
-->

<simpleType name="MWType">
   <restriction base="decimal">
      <totalDigits value="8"/>
      <fractionDigits value="1"/>
      <minInclusive value="-9999999.9"/>
      <maxInclusive value="9999999.9"/>
   </restriction>
</simpleType>

<!--  MWRateType
-->

<simpleType name="MWRateType">
   <restriction base="decimal">
      <totalDigits value="5"/>
      <fractionDigits value="1"/>
      <minInclusive value="0.1"/>
      <maxInclusive value="9999.9"/>
   </restriction>
</simpleType>

<!--  Node Type Type
-->

<simpleType name="NodeTypeType">
   <restriction base="string">
      <enumeration value="Hub"/>
      <enumeration value="Zone"/>
      <enumeration value="Interface"/>
      <enumeration value="Bus"/>
      <enumeration value="500"/>
      <enumeration value="Generator"/>
      <enumeration value="Aggregate"/>
   </restriction>
</simpleType>

<!--  ObligationPercentageType
-->

<simpleType name="ObligationPercentageType">
   <restriction base="decimal">
      <totalDigits value="4"/>
      <fractionDigits value="1"/>
      <minInclusive value="0"/>
      <maxInclusive value="100"/>
   </restriction>
</simpleType>

<!--  OfferMWPriceType

      A simple type that designates the an offer price in $ per MW
      used for MW dependent costs such as offer curve.
-->

<simpleType name="OfferMWPriceType">
   <restriction base="decimal">
      <totalDigits value="10"/>
      <fractionDigits value="2"/>
      <minInclusive value="0"/>
      <maxInclusive value="99999999.99"/>
   </restriction>
</simpleType>

<!--  OfferMWType

      This type designates a MW value which is used for generation
      capacity, load values, limits, and energy.
-->

<simpleType name="OfferMWType">
   <restriction base="decimal">
      <totalDigits value="8"/>
      <fractionDigits value="1"/>
      <minInclusive value="0"/>
      <maxInclusive value="9999999.9"/>
   </restriction>
</simpleType>

<!--  ParticipantNameType
-->

<simpleType name="ParticipantNameType">
   <restriction base="string">
      <minLength value="1"/>
      <maxLength value="40"/>
   </restriction>
</simpleType>

<!--  Participant Short Name Type
-->

<simpleType name="ParticipantShortNameType">
   <restriction base="string">
      <minLength value="1"/>
      <maxLength value="8"/>
   </restriction>
</simpleType>

<!--  PNodeID Type
-->

<simpleType name="PNodeIDType">
   <restriction base="decimal">
      <fractionDigits value="0"/>
      <minInclusive value="1"/>
   </restriction>
</simpleType>

<!--  PortfolioActionType

      This simple type defines an enumeration that specifies the kinds
      of actions that are performed on portfolios.  This action is used
      in concert with the PortfolioSubmit message.  The actions are:

        Create      Create a new portfolio.
        Replace     Replace an existing portfolio.
        Remove      Remove an existing portfolio.
        AddPath     Add one or more paths to existing portfolio.
        RemovePath  Remove one or more paths from an existing portfolio.

-->

<simpleType name="PortfolioActionType">
   <restriction base="string">
      <enumeration value="Create"/>
      <enumeration value="Replace"/>
      <enumeration value="Remove"/>
      <enumeration value="AddTo"/>
      <enumeration value="RemoveFrom"/>
   </restriction>
</simpleType>

<simpleType name="PortfolioTypeType">
   <restriction base="string">
      <enumeration value="Demand"/>
      <enumeration value="Generator"/>
      <enumeration value="LoadResponse"/>
   </restriction>
</simpleType>

<!--  PortfolioNameType

      A simple type that specifies a portfolio name.

-->

<simpleType name="PortfolioNameType">
   <restriction base="string">
      <minLength value="1"/>
      <maxLength value="40"/>
   </restriction>
</simpleType>

<simpleType name="PumpingFactorType">
   <restriction base="decimal">
      <totalDigits value="5"/>
      <fractionDigits value="2"/>
      <minInclusive value="0"/>
      <maxInclusive value="100"/>
   </restriction>
</simpleType>

<!--  QueryAllType
-->

<complexType name="QueryAllType"/>

<!-- QueryNameType
-->

<simpleType name="QueryNameType">
   <restriction base="string">
      <enumeration value="DistributionFactors"/>
      <enumeration value="DemandBid"/>
      <enumeration value="LoadResponse"/>
      <enumeration value="Portfolios"/>
      <enumeration value="RealTimeLoadResponseDaily"/>
      <enumeration value="RealTimeLoadResponseHourly"/>
      <enumeration value="RegulationOffer"/>
      <enumeration value="RegulationUpdate"/>
      <enumeration value="SchedReserveOffer"/>
      <enumeration value="SchedReserveUpdate"/>
      <enumeration value="ScheduleOffer"/>
      <enumeration value="ScheduleDetail"/>
      <enumeration value="ScheduleSelection"/>
      <enumeration value="SpinningReserveOffer"/>
      <enumeration value="SpinningReserveUpdate"/>
      <enumeration value="Thresholds"/>
      <enumeration value="UnitSchedules"/>
      <enumeration value="UnitUpdate"/>
      <enumeration value="UnitDetail"/>
      <enumeration value="VirtualBid"/>
      <enumeration value="WeatherForecast"/>
      <enumeration value="ConEdContractBids"/>
   </restriction>
</simpleType>

<!--  RampRateCurveType
-->

<complexType name="RampRateCurveType">
   <sequence>
      <element name="RampRate" type="mkt:RampRateType" minOccurs="0" maxOccurs="10"/>
   </sequence>
</complexType>

<!--  RampRateType
-->

<complexType name="RampRateType">
   <attribute name="MW" type="mkt:MWType" use="required"/>
   <attribute name="rate" type="mkt:MWRateType" use="required"/>
</complexType>

<!--  ReserveZoneNameType
-->

<simpleType name="ReserveZoneNameType">
   <restriction base="string">
      <minLength value="1"/>
      <maxLength value="40"/>
   </restriction>
</simpleType>

<!--  ReserveZoneShortNameType
-->

<simpleType name="ReserveZoneShortNameType">
   <restriction base="string">
      <minLength value="1"/>
      <maxLength value="8"/>
   </restriction>
</simpleType>

<!--  Runtime Type
-->

<simpleType name="RunTimeType">
   <restriction base="decimal">
      <totalDigits value="8"/>
      <fractionDigits value="2"/>
      <minInclusive value="0"/>
      <maxInclusive value="999999.99"/>
   </restriction>
</simpleType>

<!--  RuntimeCountType
-->

<simpleType name="RuntimeCountType">
   <restriction base="decimal">
      <totalDigits value="5"/>
      <fractionDigits value="0"/>
      <minInclusive value="0"/>
      <maxInclusive value="99999"/>
   </restriction>
</simpleType>

<!--  RuntimeTimeType
-->

<simpleType name="RuntimeTimeType">
   <restriction base="decimal">
      <totalDigits value="8"/>
      <fractionDigits value="2"/>
      <minInclusive value="0"/>
      <maxInclusive value="999999.99"/>
   </restriction>
</simpleType>


<!--  ScheduleMarketType
-->

<simpleType name="ScheduleMarketType">
   <restriction base="string">
      <enumeration value="DayAhead"/>
      <enumeration value="Balancing"/>
      <enumeration value="Both"/>
   </restriction>
</simpleType>

<!--  Schedule Long Name Type
-->

<simpleType name="ScheduleLongNameType">
   <restriction base="string">
      <minLength value="1"/>
      <maxLength value="40"/>
   </restriction>
</simpleType>

<!--  Schedule Short Name Type
-->

<simpleType name="ScheduleShortNameType">
   <restriction base="string">
      <minLength value="1"/>
      <maxLength value="8"/>
   </restriction>
</simpleType>

<!--  Schedule Description Type
-->

<simpleType name="ScheduleDescriptionType">
   <restriction base="string">
      <minLength value="1"/>
      <maxLength value="40"/>
   </restriction>
</simpleType>

<!--  ScheduleNameType
-->

<simpleType name="ScheduleNameType">
   <restriction base="int">
      <totalDigits value="2"/>
      <fractionDigits value="0"/>
      <minInclusive value="1"/>
      <maxInclusive value="99"/>
   </restriction>
</simpleType>

<!--  Schedule Type Description Type
-->

<simpleType name="ScheduleTypeDescriptionType">
   <restriction base="string">
      <minLength value="1"/>
      <maxLength value="80"/>
   </restriction>
</simpleType>

<!--  Schedule Type Name Type
-->

<simpleType name="ScheduleTypeNameType">
   <restriction base="string">
      <enumeration value="Price"/>
      <enumeration value="Cost"/>
   </restriction>
</simpleType>

<!--  StartupCostIntervalType
-->

<simpleType name="StartupCostIntervalType">
   <restriction base="string">
      <enumeration value="1"/>
      <enumeration value="2"/>
   </restriction>
</simpleType>

<!--  Status Comment String Type
-->

<simpleType name="StatusCommentStringType">
   <restriction base="string">
      <minLength value="1"/>
      <maxLength value="80"/>
   </restriction>
</simpleType>

<!--  SuccessType

      This element is returned in the SubmitResponse element if the
      submit was successful.
-->

<complexType name="SuccessType">
   <sequence minOccurs="1" maxOccurs="1">
      <element name="TransactionID" type="mkt:TransactionType"/>
   </sequence>
</complexType>

<!--  TemperatureLimitsType
-->

<complexType name="TemperatureLimitsType">
   <all>
      <element name="Low" type="mkt:TemperatureLimitsPointType" minOccurs="0" maxOccurs="1"/>
      <element name="Middle" type="mkt:TemperatureLimitsPointType" minOccurs="0" maxOccurs="1"/>
      <element name="High" type="mkt:TemperatureLimitsPointType" minOccurs="0" maxOccurs="1"/>
   </all>
</complexType>

<!--  TemperatureLimitsPointType
-->

<complexType name="TemperatureLimitsPointType">
   <attribute name="MW" type="mkt:MWType" use="required"/>
   <attribute name="temperature" type="mkt:TemperatureType" use="optional"/>
</complexType>

<!--  TemperatureType
-->

<simpleType name="TemperatureType">
   <restriction base="decimal">
      <totalDigits value="4"/>
      <fractionDigits value="1"/>
      <minInclusive value="-100.0"/>
      <maxInclusive value="150.0"/>
   </restriction>
</simpleType>

<!--  TierNameType
-->

<simpleType name="TierNameType">
   <restriction base="string">
      <enumeration value="TIER1"/>
      <enumeration value="TIER2"/>
   </restriction>
</simpleType>

<!--  TransactionType
-->

<simpleType name="TransactionType">
   <restriction base="decimal">
      <totalDigits value="15"/>
      <fractionDigits value="0"/>
      <minExclusive value="0"/>
      <maxInclusive value="999999999999999"/>
   </restriction>
</simpleType>

<!--  HeatRateType (BTU/kWh)
-->

<simpleType name="HeatRateType">
   <restriction base="decimal">
      <totalDigits value="8"/>
      <fractionDigits value="3"/>
      <minExclusive value="0"/>
      <maxInclusive value="99999.999"/>
   </restriction>
</simpleType>


<!--  VOMRateType (Variable Operating and Maintenance $/MBtu)
-->

<simpleType name="VOMRateType">
   <restriction base="decimal">
      <totalDigits value="8"/>
      <fractionDigits value="2"/>
      <minExclusive value="0"/>
      <maxInclusive value="999999.99"/>
   </restriction>
</simpleType>


<!--  WeatherPointNameType
-->

<simpleType name="WeatherPointNameType">
   <restriction base="string">
      <minLength value="1"/>
      <maxLength value="24"/>
   </restriction>
</simpleType>

<!--  ZoneNameType
-->

<simpleType name="ZoneNameType">
   <restriction base="string">
      <minLength value="1"/>
      <maxLength value="40"/>
   </restriction>
</simpleType>

</schema>

