<?xml version = "1.0" encoding = "utf-8"?>
<!--Generated by Turbo XML 2.3.1.100. Conforms to w3c http://www.w3.org/2001/XMLSchema-->
<xsd:schema xmlns="http://www.fpml.org/2003/FpML-4-0"
        targetNamespace="http://www.fpml.org/2003/FpML-4-0"
        xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
        <!--
  == Copyright (c) 2002-2003. All rights reserved.
  == Financial Products Markup Language is subject to the FpML public license.
  == A copy of this license is available at http://www.fpml.org/documents/license
  -->
        <xsd:include schemaLocation="fpml-shared-4-0.xsd"/>
        <xsd:complexType name="CalculationPeriod">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type defining the parameters used in the
                                calculation of a fixed or floating rate calculation period amount.
                                This type forms part of cashflows representation of a swap stream.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:element name="unadjustedStartDate" type="xsd:date" minOccurs="0"/>
                        <xsd:element name="unadjustedEndDate" type="xsd:date" minOccurs="0"/>
                        <xsd:element name="adjustedStartDate" type="xsd:date" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The calculation period
                                                start date, adjusted according to any relevant
                                                business day convention.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="adjustedEndDate" type="xsd:date" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The calculation period end
                                                date, adjusted according to any relevant business
                                                day convention.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="calculationPeriodNumberOfDays" type="xsd:positiveInteger" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The number of days from the
                                                adjusted effective / start date to the adjusted
                                                termination / end date calculated in accordance with
                                                the applicable day count fraction.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:choice>
                                <xsd:element name="notionalAmount" type="xsd:decimal">
                                        <xsd:annotation>
                                                <xsd:documentation xml:lang="en">The amount that a
                                                  cashflow will accrue interest on.</xsd:documentation>
                                        </xsd:annotation>
                                </xsd:element>
                                <xsd:element name="fxLinkedNotionalAmount" type="FxLinkedNotionalAmount">
                                        <xsd:annotation>
                                                <xsd:documentation xml:lang="en">The amount that a
                                                  cashflow will accrue interest on. This is
                                                  the calculated amount of the fx linked - ie
                                                  the other currency notional amount
                                                  multiplied by the appropriate fx spot rate.</xsd:documentation>
                                        </xsd:annotation>
                                </xsd:element>
                        </xsd:choice>
                        <xsd:choice>
                                <xsd:element name="floatingRateDefinition" type="FloatingRateDefinition">
                                        <xsd:annotation>
                                                <xsd:documentation xml:lang="en">The floating rate
                                                  reset information for the calculation period.</xsd:documentation>
                                        </xsd:annotation>
                                </xsd:element>
                                <xsd:element name="fixedRate" type="xsd:decimal">
                                        <xsd:annotation>
                                                <xsd:documentation xml:lang="en">The calculation
                                                  period fixed rate. A per annum rate,
                                                  expressed as a decimal. A fixed rate of 5%
                                                  would be represented as 0.05.</xsd:documentation>
                                        </xsd:annotation>
                                </xsd:element>
                        </xsd:choice>
                </xsd:sequence>
                <xsd:attribute name="id" type="xsd:ID"/>
        </xsd:complexType>
        <xsd:complexType name="CalculationPeriodAmount">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type defining the parameters used in the
                                calculation of fixed or floating rate calculation period amounts or
                                for specifying a known calculation period amount or known amount schedule.</xsd:documentation>
                </xsd:annotation>
                <xsd:choice>
                        <xsd:element name="calculation" type="Calculation">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The parameters used in the
                                                calculation of fixed or floaring rate calculation
                                                period amounts.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="knownAmountSchedule" type="AmountSchedule">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The known calculation
                                                period amount or a known amount schedule expressed
                                                as explicit known amounts and dates. In the case of
                                                a schedule, the step dates may be subject to
                                                adjustment in accordance with any adjustments
                                                specified in calculationPeriodDatesAdjustments.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                </xsd:choice>
        </xsd:complexType>
        <xsd:complexType name="CalculationPeriodDates">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type defining the parameters used to
                                generate the calculation period dates schedule, including the
                                specification of any initial or final stub calculation periods. A
                                calculation perod schedule consists of an optional initial stub
                                calculation period, one or more regular calculation periods and an
                                optional final stub calculation period. In the absence of any
                                initial or final stub calculation periods, the regular part of the
                                calculation period schedule is assumed to be between the effective
                                date and the termination date. No implicit stubs are allowed, i.e.
                                stubs must be explicitly specified using an appropriate combination
                                of firstPeriodStateDate, firstRegularPeriodStartDate and lastRegularPeriodEndDate.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:element name="effectiveDate" type="AdjustableDate">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The first day of the term
                                                of the trade. This day may be subject to adjustment
                                                in accordance with a business day convention.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="terminationDate" type="AdjustableDate">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The last day of the term of
                                                the trade. This day may be subject to adjustment in
                                                accordance with a business day convention.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="calculationPeriodDatesAdjustments" type="BusinessDayAdjustments">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The business day convention
                                                to apply to each calculation period end date if it
                                                would otherwise fall on a day that is not a business
                                                day in the specified financial business centers.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="firstPeriodStartDate" type="AdjustableDate" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The start date of the
                                                calculation period if the date falls before the
                                                effective date. It must only be specified if it is
                                                not equal to the effective date. This date may be
                                                subject to adjustment in accordance with a business
                                                day convention.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="firstRegularPeriodStartDate" type="xsd:date" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The start date of the
                                                regular part of the calculation period schedule. It
                                                must only be specified if there is an initial stub
                                                calculation period. This day may be subject to
                                                adjustment in accordance with any adjustments
                                                specified in calculationPeriodDatesAdjustments.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="lastRegularPeriodEndDate" type="xsd:date" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The end date of the regular
                                                part of the calculation period schedule. It must
                                                only be specified if there is a final stub
                                                calculation period. This day may be subject to
                                                adjustment in accordance with any adjustments
                                                specified in calculationPeriodDatesAdjustments.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="calculationPeriodFrequency" type="CalculationPeriodFrequency">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The frequency at which
                                                calculation period end dates occur with the regular
                                                part of the calculation period schedule and their
                                                roll date convention.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                </xsd:sequence>
                <xsd:attribute name="id" use="required" type="xsd:ID"/>
        </xsd:complexType>
        <xsd:complexType name="Cashflows">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type defining the cashflow representation
                                of a swap trade.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:element name="cashflowsMatchParameters" type="xsd:boolean">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">A true/false flag to
                                                indicate whether the cashflows match the parametric
                                                definition of the stream, i.e. whether the cashflows
                                                could be regenerated from the parameters without
                                                loss of information.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="principalExchange" type="PrincipalExchange" minOccurs="0" maxOccurs="unbounded">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The initial, intermediate
                                                and final principal exchange amounts. Typically
                                                required on cross currency interest rate swaps where
                                                actual exchanges of principal occur. A list of
                                                principal exchange elements may be ordered in the
                                                document by ascending adjusted principal exchange
                                                date. An FpML document containing an unordered
                                                principal exchange list is still regarded as a
                                                conformant document.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="paymentCalculationPeriod" type="PaymentCalculationPeriod"
                                minOccurs="0" maxOccurs="unbounded">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The adjusted payment date
                                                and associated calculation period parameters
                                                required to calculate the actual or projected
                                                payment amount. A list of payment calculation period
                                                elements may be ordered in the document by ascending
                                                adjusted payment date. An FpML document containing
                                                an unordered list of payment calculation periods is
                                                still regarded as a conformant document.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                </xsd:sequence>
        </xsd:complexType>
        <xsd:complexType name="Discounting">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type defining discounting information.
                                The 2000 ISDA definitions, section 8.4. discounting (related to the
                                calculation of a discounted fixed amount or floating amount) apply.
                                This type must only be included if discounting applies.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:element name="discountingType" type="DiscountingTypeEnum">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The discounting method that
                                                is applicable.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="discountRate" type="xsd:decimal" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">A discount rate, expressed
                                                as a decimal, to be used in the calculation of a
                                                discounted amount. A discount amount of 5% would be
                                                represented as 0.05.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="discountRateDayCountFraction" type="DayCountFractionEnum" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">A discount day count
                                                fraction to be used in the calculation of a
                                                discounted amount.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                </xsd:sequence>
        </xsd:complexType>
        <xsd:complexType name="FloatingRate">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type defining a floating rate.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:element name="floatingRateIndex" type="FloatingRateIndex"/>
                        <xsd:element name="indexTenor" type="Interval" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The ISDA Designated
                                                Maturity, i.e. the tenor of the floating rate.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="floatingRateMultiplierSchedule" type="Schedule" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">A rate multiplier or
                                                multiplier schedule to apply to the floating rate. A
                                                multiplier schedule is expressed as explicit
                                                multipliers and dates. In the case of a schedule,
                                                the step dates may be subject to adjustment in
                                                accordance with any adjustments specified in the
                                                calculationPeriodDatesAdjustments. The multiplier
                                                can be a positive or negative decimal. This element
                                                should only be included if the multiplier is not
                                                equal to 1 (one) for the term of the stream.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="spreadSchedule" type="Schedule" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The ISDA Spread or a Spread
                                                schedule expressed as explicit spreads and dates. In
                                                the case of a schedule, the step dates may be
                                                subject to adjustment in accordance with any
                                                adjustments specified in
                                                calculationPeriodDatesAdjustments. The spread is a
                                                per annum rate, expressed as a decimal. For purposes
                                                of determining a calculation period amount, if
                                                positive the spread will be added to the floating
                                                rate and if negative the spread will be subtracted
                                                from the floating rate. A positive 10 basis point
                                                (0.1%) spread would be represented as 0.001.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="rateTreatment" type="RateTreatmentEnum" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The specification of any
                                                rate conversion which needs to be applied to the
                                                observed rate before being used in any calculations.
                                                The two common conversions are for securities quoted
                                                on a bank discount basis which will need to be
                                                converted to either a Money Market Yield or Bond
                                                Equivalent Yield. See the Annex to the 2000 ISDA
                                                Definitions, Section 7.3. Certain General
                                                Definitions Relating to Floating Rate Options,
                                                paragraphs (g) and (h) for definitions of these terms.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="capRateSchedule" type="StrikeSchedule" minOccurs="0" maxOccurs="unbounded">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The cap rate or cap rate
                                                schedule, if any, which applies to the floating
                                                rate. The cap rate (strike) is only required where
                                                the floating rate on a swap stream is capped at a
                                                certain level. A cap rate schedule is expressed as
                                                explicit cap rates and dates and the step dates may
                                                be subject to adjustment in accordance with any
                                                adjustments specified in
                                                calculationPeriodDatesAdjustments. The cap rate is
                                                assumed to be exclusive of any spread and is a per
                                                annum rate, expressed as a decimal. A cap rate of 5%
                                                would be represented as 0.05.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="floorRateSchedule" type="StrikeSchedule" minOccurs="0" maxOccurs="unbounded">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The floor rate or floor
                                                rate schedule, if any, which applies to the floating
                                                rate. The floor rate (strike) is only required where
                                                the floating rate on a swap stream is floored at a
                                                certain strike level. A floor rate schedule is
                                                expressed as explicit floor rates and dates and the
                                                step dates may be subject to adjustment in
                                                accordance with any adjustments specified in
                                                calculationPeriodDatesAdjustments. The floor rate is
                                                assumed to be exclusive of any spread and is a per
                                                annum rate, expressed as a decimal. A floor rate of
                                                5% would be represented as 0.05.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                </xsd:sequence>
                <xsd:attribute name="id" type="xsd:ID"/>
        </xsd:complexType>
        <xsd:complexType name="FloatingRateCalculation">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type defining the floating rate and
                                definitions relating to the calculation of floating rate amounts.</xsd:documentation>
                </xsd:annotation>
                <xsd:complexContent>
                        <xsd:extension base="FloatingRate">
                                <xsd:sequence>
                                        <xsd:element name="initialRate" type="xsd:decimal" minOccurs="0">
                                                <xsd:annotation>
                                                  <xsd:documentation xml:lang="en">The initial
                                                  floating rate reset agreed between
                                                  the principal parties involved in
                                                  the trade. This is assumed to be the
                                                  first required reset rate for the
                                                  first regular calculation period. It
                                                  should only be included when the
                                                  rate is not equal to the rate
                                                  published on the source implied by
                                                  the floating rate index. An initial
                                                  rate of 5% would be represented as 0.05.</xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                        <xsd:element name="finalRateRounding" type="Rounding" minOccurs="0">
                                                <xsd:annotation>
                                                  <xsd:documentation xml:lang="en">The
                                                  rounding convention to apply to the
                                                  final rate used in determination of
                                                  a calculation period amount.</xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                        <xsd:element name="averagingMethod"
                                                type="AveragingMethodEnum" minOccurs="0">
                                                <xsd:annotation>
                                                  <xsd:documentation xml:lang="en">If
                                                  averaging is applicable, this
                                                  component specifies whether a
                                                  weighted or unweighted average
                                                  method of calculation is to be used.
                                                  The component must only be included
                                                  when averaging applies.</xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                        <xsd:element name="negativeInterestRateTreatment"
                                                type="NegativeInterestRateTreatmentEnum" minOccurs="0">
                                                <xsd:annotation>
                                                  <xsd:documentation xml:lang="en">The
                                                  specification of any provisions for
                                                  calculating payment obligations when
                                                  a floating rate is negative (either
                                                  due to a quoted negative floating
                                                  rate or by operation of a spread
                                                  that is subtracted from the floating rate).</xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                </xsd:sequence>
                        </xsd:extension>
                </xsd:complexContent>
        </xsd:complexType>
        <xsd:complexType name="FloatingRateDefinition">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type defining parameters associated with
                                a floating rate reset. This type forms part of the cashflows
                                representation of a stream.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:element name="calculatedRate" type="xsd:decimal" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The final calculated rate
                                                for a calculation period after any required
                                                averaging of rates A calculated rate of 5% would be
                                                represented as 0.05.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="rateObservation" type="RateObservation" minOccurs="0" maxOccurs="unbounded">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The details of a particular
                                                rate observation, including the fixing date and
                                                observed rate. A list of rate observation elements
                                                may be ordered in the document by ascending adjusted
                                                fixing date. An FpML document containing an
                                                unordered list of rate observations is still
                                                regarded as a conformant document.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="floatingRateMultiplier" type="xsd:decimal" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">A rate multiplier to apply
                                                to the floating rate. The multiplier can be a
                                                positive or negative decimal. This element should
                                                only be included if the multiplier is not equal to 1 (one).</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="spread" type="xsd:decimal" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The ISDA Spread, if any,
                                                which applies for the calculation period. The spread
                                                is a per annum rate, expressed as a decimal. For
                                                purposes of determining a calculation period amount,
                                                if positive the spread will be added to the floating
                                                rate and if negative the spread will be subtracted
                                                from the floating rate. A positive 10 basis point
                                                (0.1%) spread would be represented as 0.001.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="capRate" type="Strike" minOccurs="0" maxOccurs="unbounded">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The cap rate, if any, which
                                                applies to the floating rate for the calculation
                                                period. The cap rate (strike) is only required where
                                                the floating rate on a swap stream is capped at a
                                                certain strike level. The cap rate is assumed to be
                                                exclusive of any spread and is a per annum rate,
                                                expressed as a decimal. A cap rate of 5% would be
                                                represented as 0.05.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="floorRate" type="Strike" minOccurs="0" maxOccurs="unbounded">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The floor rate, if any,
                                                which applies to the floating rate for the
                                                calculation period. The floor rate (strike) is only
                                                required where the floating rate on a swap stream is
                                                floored at a certain strike level. The floor rate is
                                                assumed to be exclusive of any spread and is a per
                                                annum rate, expressed as a decimal. The floor rate
                                                of 5% would be represented as 0.05.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                </xsd:sequence>
        </xsd:complexType>
        <xsd:complexType name="Fra">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type defining a Forward Rate Agreement
                                (FRA) product.</xsd:documentation>
                </xsd:annotation>
                <xsd:complexContent>
                        <xsd:extension base="Product">
                                <xsd:sequence>
                                        <xsd:group ref="BuyerSeller.model"/>
                                        <xsd:element name="adjustedEffectiveDate">
                                                <xsd:annotation>
                                                  <xsd:documentation xml:lang="en">The start
                                                  date of the calculation period. This
                                                  date should already be adjusted for
                                                  any applicable business day
                                                  convention. This is also the date
                                                  when the observed rate is applied,
                                                  the reset date.</xsd:documentation>
                                                </xsd:annotation>
                                                <xsd:complexType>
                                                  <xsd:simpleContent>
                                                  <xsd:extension base="xsd:date">
                                                  <xsd:attribute name="id"
                                                  use="required" type="xsd:ID"/>
                                                  </xsd:extension>
                                                  </xsd:simpleContent>
                                                </xsd:complexType>
                                        </xsd:element>
                                        <xsd:element name="adjustedTerminationDate" type="xsd:date">
                                                <xsd:annotation>
                                                  <xsd:documentation xml:lang="en">The end
                                                  date of the calculation period. This
                                                  date should already be adjusted for
                                                  any applicable business day convention.</xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                        <xsd:element name="paymentDate" type="AdjustableDate">
                                                <xsd:annotation>
                                                  <xsd:documentation xml:lang="en">The payment
                                                  date. This date is subject to
                                                  adjustment in accordance with any
                                                  applicable business day convention.</xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                        <xsd:element name="fixingDateOffset" type="RelativeDateOffset">
                                                <xsd:annotation>
                                                  <xsd:documentation xml:lang="en">Specifies
                                                  the fixing date relative to the
                                                  reset date in terms of a business
                                                  days offset and an associated set of
                                                  financial business centers. Normally
                                                  these offset calculation rules will
                                                  be those specified in the ISDA
                                                  definition for the relevant floating
                                                  rate index (ISDA's Floating Rate
                                                  Option). However, non-standard
                                                  offset calculation rules may apply
                                                  for a trade if mutually agreed by
                                                  the principal parties to the
                                                  transaction. The href attribute on
                                                  the dateRelativeTo element should
                                                  reference the id attribute on the
                                                  adjustedEffectiveDate element.</xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                        <xsd:element name="dayCountFraction" type="DayCountFractionEnum">
                                                <xsd:annotation>
                                                  <xsd:documentation xml:lang="en">The day
                                                  count fraction.</xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                        <xsd:element name="calculationPeriodNumberOfDays" type="xsd:positiveInteger">
                                                <xsd:annotation>
                                                  <xsd:documentation xml:lang="en">The number
                                                  of days from the adjusted effective
                                                  date to the adjusted termination
                                                  date calculated in accordance with
                                                  the applicable day count fraction.</xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                        <xsd:element name="notional" type="Money">
                                                <xsd:annotation>
                                                  <xsd:documentation xml:lang="en">The
                                                  notional amount.</xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                        <xsd:element name="fixedRate" type="xsd:decimal">
                                                <xsd:annotation>
                                                  <xsd:documentation xml:lang="en">The
                                                  calculation period fixed rate. A per
                                                  annum rate, expressed as a decimal.
                                                  A fixed rate of 5% would be
                                                  represented as 0.05.</xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                        <xsd:element name="floatingRateIndex" type="FloatingRateIndex"/>
                                        <xsd:element name="indexTenor" type="Interval" minOccurs="0">
                                                <xsd:annotation>
                                                  <xsd:documentation xml:lang="en">The ISDA
                                                  Designated Maturity, i.e. the tenor
                                                  of the floating rate.</xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                        <xsd:element name="fraDiscounting" type="FraDiscountingEnum">
                                                <xsd:annotation>
                                                  <xsd:documentation xml:lang="en">Specifies
                                                  whether discounting applies and, if
                                                  so, what type.</xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                </xsd:sequence>
                        </xsd:extension>
                </xsd:complexContent>
        </xsd:complexType>
        <xsd:complexType name="InterestRateStream">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type defining the components specifiying
                                an interest rate stream, including both a parametric and cashflow
                                representation for the stream of payments.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:group ref="PayerReceiver.model"/>
                        <xsd:element name="calculationPeriodDates" type="CalculationPeriodDates">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The calculation periods
                                                dates schedule.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="paymentDates" type="PaymentDates">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The payment dates schedule.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="resetDates" type="ResetDates" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The reset dates schedule.
                                                The reset dates schedule only applies for a floating
                                                rate stream.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="calculationPeriodAmount" type="CalculationPeriodAmount">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The calculation period
                                                amount parameters.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="stubCalculationPeriodAmount"
                                type="StubCalculationPeriodAmount" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The stub calculation period
                                                amount parameters. This element must only be
                                                included if there is an initial or final stub
                                                calculation period. Even then, it must only be
                                                included if either the stub references a different
                                                floating rate tenor to the regular calculation
                                                periods, or if the stub is calculated as a linear
                                                interpolation of two different floating rate tenors,
                                                or if a specific stub rate or stub amount has been negotiated.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="principalExchanges" type="PrincipalExchanges" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The true/false flags
                                                indicating whether initial, intermediate or final
                                                exchanges of principal should occur.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="cashflows" type="Cashflows" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The cashflows
                                                representation of the swap stream.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                </xsd:sequence>
                <xsd:attribute name="id" type="xsd:ID"/>
        </xsd:complexType>
        <xsd:complexType name="Notional">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">An type defining the notional amount or
                                notional amount schedule associated with a swap stream. The notional
                                schedule will be captured explicitly, specifying the dates that the
                                notional changes and the outstanding notional amount that applies
                                from that date. A parametric representation of the rules defining
                                the notional step schedule can optionally be included.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:element name="notionalStepSchedule" type="AmountSchedule">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The notional amount or
                                                notional amount schedule expressed as explicit
                                                outstanding notional amounts and dates. In the case
                                                of a schedule, the step dates may be subject to
                                                adjustment in accordance with any adjustments
                                                specified in calculationPeriodDatesAdjustments.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="notionalStepParameters" type="NotionalStepRule" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">A parametric representation
                                                of the notional step schedule, i.e. parameters used
                                                to generate the notional schedule.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                </xsd:sequence>
                <xsd:attribute name="id" type="xsd:ID"/>
        </xsd:complexType>
        <xsd:complexType name="NotionalStepRule">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type defining a parametric representation
                                of the notional step schedule, i.e. parameters used to generate the
                                notional balance on each step date. The step change in notional can
                                be expressed in terms of either a fixed amount or as a percentage of
                                either the initial notional or previous notional amount. This
                                parametric representation is intended to cover the more common amortizing/accreting.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:element name="calculationPeriodDatesReference" type="DateReference">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">A pointer style reference
                                                to the associated calculation period dates component
                                                defined elsewhere in the document.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="stepFrequency" type="Interval">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The frequency at which the
                                                step changes occur. This frequency must be a
                                                multiple of the stream calculation period frequency.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="firstNotionalStepDate" type="xsd:date">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">Effective date of the first
                                                change in notional (i.e. a calculation period start date).</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="lastNotionalStepDate" type="xsd:date">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">Effective date of the last
                                                change in notional (i.e. a calculation period start date).</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:choice>
                                <xsd:element name="notionalStepAmount" type="xsd:decimal">
                                        <xsd:annotation>
                                                <xsd:documentation xml:lang="en">The explicit amount
                                                  that the notional changes on each step date.
                                                  This can be a positive or negative amount.</xsd:documentation>
                                        </xsd:annotation>
                                </xsd:element>
                                <xsd:sequence>
                                        <xsd:element name="notionalStepRate" type="xsd:decimal">
                                                <xsd:annotation>
                                                  <xsd:documentation xml:lang="en">The
                                                  percentage amount by which the
                                                  notional changes on each step date.
                                                  The percentage is either a
                                                  percentage applied to the initial
                                                  notional amount or the previous
                                                  outstanding notional, depending on
                                                  the value of the element
                                                  stepRelativeTo. The percentage can
                                                  be either positive or negative. A
                                                  percentage of 5% would be
                                                  represented as 0.05.</xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                        <xsd:element name="stepRelativeTo" type="StepRelativeToEnum">
                                                <xsd:annotation>
                                                  <xsd:documentation xml:lang="en">Specifies
                                                  whether the notionalStepRate should
                                                  be applied to the initial notional
                                                  or the previous notional in order to
                                                  calculate the notional step change amount.</xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                </xsd:sequence>
                        </xsd:choice>
                </xsd:sequence>
        </xsd:complexType>
        <xsd:complexType name="PaymentCalculationPeriod">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type defining the adjusted payment date
                                and associated calculation period parameters required to calculate
                                the actual or projected payment amount. This type forms part of the
                                cashflow representation of a swap stream.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:element name="unadjustedPaymentDate" type="xsd:date" minOccurs="0"/>
                        <xsd:element name="adjustedPaymentDate" type="xsd:date" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The adjusted payment date.
                                                This date should already be adjusted for any
                                                applicable business day convention. This component
                                                is not intended for use in trade confirmation but my
                                                be specified to allow the fee structure to also
                                                serve as a cashflow type component (all dates the
                                                the Cashflows type are adjusted payment dates).</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:choice>
                                <xsd:element name="calculationPeriod" type="CalculationPeriod" maxOccurs="unbounded">
                                        <xsd:annotation>
                                                <xsd:documentation xml:lang="en">The parameters used
                                                  in the calculation of a fixed or floating
                                                  rate calculation period amount. A list of
                                                  calculation period elements may be ordered
                                                  in the document by ascending start date. An
                                                  FpML document which contains an unordered
                                                  list of calcularion periods is still
                                                  regarded as a conformant document.</xsd:documentation>
                                        </xsd:annotation>
                                </xsd:element>
                                <xsd:element name="fixedPaymentAmount" type="xsd:decimal">
                                        <xsd:annotation>
                                                <xsd:documentation xml:lang="en">A known fixed
                                                  payment amount.</xsd:documentation>
                                        </xsd:annotation>
                                </xsd:element>
                        </xsd:choice>
                </xsd:sequence>
                <xsd:attribute name="id" type="xsd:ID"/>
        </xsd:complexType>
        <xsd:complexType name="PaymentDates">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type defining parameters used to generate
                                the payment dates schedule, including the specification of early or
                                delayed payments. Payment dates are determined relative to the
                                calculation period dates or the reset dates.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:choice>
                                <xsd:element name="calculationPeriodDatesReference" type="DateReference">
                                        <xsd:annotation>
                                                <xsd:documentation xml:lang="en">A pointer style
                                                  reference to the associated calculation
                                                  period dates component defined elsewhere in
                                                  the document.</xsd:documentation>
                                        </xsd:annotation>
                                </xsd:element>
                                <xsd:element name="resetDatesReference" type="DateReference">
                                        <xsd:annotation>
                                                <xsd:documentation xml:lang="en">A pointer style
                                                  reference to the associated reset dates
                                                  component defined elsewhere in the document.</xsd:documentation>
                                        </xsd:annotation>
                                </xsd:element>
                        </xsd:choice>
                        <xsd:element name="paymentFrequency" type="Interval">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The frequency at which
                                                regular payment dates occur. If the payment
                                                frequency is equal to the frequency defined in the
                                                calculation period dates component then one
                                                calculation period contributes to each payment
                                                amount. If the payment frequency is less frequent
                                                than the frequency defined in the calculation period
                                                dates component then more than one calculation
                                                period will contribute to e payment amount. A
                                                payment frequency more frequent than the calculation
                                                period frequency or one that is not a multiple of
                                                the calculation period frequency is invalid.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="firstPaymentDate" type="xsd:date" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The first unadjusted
                                                payment date. This day may be subject to adjustment
                                                in accordance with any business day convention
                                                specified in paymentDatesAdjustments. This element
                                                must only be included if there is an initial stub.
                                                This date will normally correspond to an unadjusted
                                                calculation period start or end date. This is true
                                                even if early or delayed payment is specified to be
                                                applicable since the actual first payment date will
                                                be the specified number of days before or after the
                                                applicable adjusted calculation period start or end
                                                date with the resulting payment date then being
                                                adjusted in accordance with any business day
                                                convention specified in paymentDatesAdjustments.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="lastRegularPaymentDate" type="xsd:date" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The last regular unadjusted
                                                payment date. This day may be subject to adjustment
                                                in accordance with any business day convention
                                                specified in paymentDatesAdjustments. This element
                                                must only be included if there is a final stub. All
                                                calculation periods after this date contribute to
                                                the final payment. The final payment is made
                                                relative to the final set of calculation periods or
                                                the final reset date as the case may be. This date
                                                will normally correspond to an unadjusted
                                                calculation period start or end date. This is true
                                                even if early or delayed payment is specified to be
                                                applicable since the actual last regular payment
                                                date will be the specified number of days before or
                                                after the applicable adjusted calculation period
                                                start or end date with the resulting payment date
                                                then being adjusted in accordance with any business
                                                day convention specified in paymentDatesAdjustments.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="payRelativeTo" type="PayRelativeToEnum">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">Specifies whether the
                                                payments occur relative to each adjusted calculation
                                                period start date, adjusted calculation period end
                                                date or each reset date. The reset date is
                                                applicable in the case of certain euro (former
                                                French Franc) floating rate indices. Calculation
                                                period start date means relative to the start of the
                                                first calculation period contributing to a given
                                                payment. Similarly, calculation period end date
                                                means the end of the last calculation period
                                                contributing to a given payment.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="paymentDaysOffset" type="Offset" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">If early payment or delayed
                                                payment is required, specifies the number of days
                                                offset that the payment occurs relative to what
                                                would otherwise be the unadjusted payment date. The
                                                offset can be specified in terms of either calendar
                                                or business days. Even in the case of a calendar
                                                days offset, the resulting payment date, adjusted
                                                for the specified calendar days offset, will still
                                                be adjusted in accordance with the specified payment
                                                dates adjustments. This element should only be
                                                included if early or delayed payment is applicable,
                                                i.e. if the periodMultiplier element value is not
                                                equal to zero. An early payment would be indicated
                                                by a negative periodMultiplier element value and a
                                                delayed payment (or payment lag) would be indicated
                                                by a positive periodMultiplier element value.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="paymentDatesAdjustments" type="BusinessDayAdjustments">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The business day convention
                                                to apply to each payment date if it would otherwise
                                                fall on a day that is not a business day in the
                                                specified financial business centers.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                </xsd:sequence>
                <xsd:attribute name="id" type="xsd:ID"/>
        </xsd:complexType>
        <xsd:complexType name="PrincipalExchange">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type defining a principal exchange amount
                                and adjusted exchange date. The type forms part of the cashflow
                                representation of a swap stream.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:element name="unadjustedPrincipalExchangeDate" type="xsd:date" minOccurs="0"/>
                        <xsd:element name="adjustedPrincipalExchangeDate" type="xsd:date" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The principal exchange
                                                date. This date should already be adjusted for any
                                                applicable business day convention.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="principalExchangeAmount" type="xsd:decimal" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The principal exchange
                                                amount. This amount should be positive if the stream
                                                payer is paying the exchange amount and signed
                                                negative if they are receiving it.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                </xsd:sequence>
                <xsd:attribute name="id" type="xsd:ID"/>
        </xsd:complexType>
        <xsd:complexType name="PrincipalExchanges">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type defining which principal exchanges
                                occur for the stream.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:element name="initialExchange" type="xsd:boolean">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">A true/false flag to
                                                indicate whether there is an initial exchange of
                                                principal on the effective date.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="finalExchange" type="xsd:boolean">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">A true/false flag to
                                                indicate whether there is a final exchange of
                                                principal on the termination date.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="intermediateExchange" type="xsd:boolean">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">A true/false flag to
                                                indicate whether there are intermediate or interim
                                                exchanges of principal during the term of the swap.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                </xsd:sequence>
        </xsd:complexType>
        <xsd:complexType name="ResetDates">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type defining the parameters used to
                                generate the reset dates schedule and associated fixing dates. The
                                reset dates are determined relative to the calculation periods
                                schedules dates.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:element name="calculationPeriodDatesReference" type="DateReference">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">A pointer style reference
                                                to the associated calculation period dates component
                                                defined elsewhere in the document.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="resetRelativeTo" type="ResetRelativeToEnum" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">Specifies whether the reset
                                                dates are determined with respect to each adjusted
                                                calculation period start date or adjusted
                                                calculation period end date. If the reset frequency
                                                is specified as daily this element must not be included.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="initialFixingDate" type="RelativeDateOffset" minOccurs="0"/>
                        <xsd:element name="fixingDates" type="RelativeDateOffset">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">Specifies the fixing date
                                                relative to the reset date in terms of a business
                                                days offset and an associated set of financial
                                                business centers. Normally these offset calculation
                                                rules will be those specified in the ISDA definition
                                                for the relevant floating rate index (ISDA's
                                                Floating Rate Option). However, non-standard offset
                                                calculation rules may apply for a trade if mutually
                                                agreed by the principal parties to the transaction.
                                                The href attribute on the dateRelativeTo element
                                                should reference the id attribute on the resetDates element.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="rateCutOffDaysOffset" type="Offset" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">Specifies the number of
                                                business days before the period end date when the
                                                rate cut-off date is assumed to apply. The financial
                                                business centers associated with determining the
                                                rate cut-off date are those specified in the reset
                                                dates adjustments. The rate cut-off number of days
                                                must be a negative integer (a value of zero would
                                                imply no rate cut off applies in which case the
                                                rateCutOffDaysOffset element should not be
                                                included). The relevant rate for each reset date in
                                                the period from, and including, a rate cut-off date
                                                to, but excluding, the next applicable period end
                                                date (or, in the case of the last calculation
                                                period, the termination date) will (solely for
                                                purposes of calculating the floating amount payable
                                                on the next applicable payment date) be deemed to be
                                                the relevant rate in effect on that rate cut-off
                                                date. For example, if rate cut-off days for a daily
                                                averaging deal is -2 business days, then the refix
                                                rate applied on (period end date - 2 days) will also
                                                be applied as the reset on (period end date - 1
                                                day), i.e. the actual number of reset dates remains
                                                the same but from the rate cut-off date until the
                                                period end date, the same refix rate is applied.
                                                Note that in the case of several calculation periods
                                                contributing to a single payment, the rate cut-off
                                                is assumed only to apply to the final calculation
                                                period contributing to that payment. The day type
                                                associated with the offset must imply a business
                                                days offset.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="resetFrequency" type="ResetFrequency">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The frequency at which
                                                reset dates occur. In the case of a weekly reset
                                                frequency, also specifies the day of the week that
                                                the reset occurs. If the reset frequency is greater
                                                than the calculation period frequency then this
                                                implies that more than one reset date is established
                                                for each calculation period and some form of rate
                                                averaging is applicable.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="resetDatesAdjustments" type="BusinessDayAdjustments">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The business day convention
                                                to apply to each reset date if it would otherwise
                                                fall on a day that is not a business day in the
                                                specified financial business centers.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                </xsd:sequence>
                <xsd:attribute name="id" use="required" type="xsd:ID"/>
        </xsd:complexType>
        <xsd:complexType name="ResetFrequency">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type defining the reset frequency. In the
                                case of a weekly reset, also specifies the day of the week that the
                                reset occurs. If the reset frequency is greater than the calculation
                                period frequency the this implies that more or more reset dates is
                                established for each calculation period and some form of rate
                                averaginhg is applicable. The specific averaging method of
                                calculation is specified in FloatingRateCalculation.</xsd:documentation>
                </xsd:annotation>
                <xsd:complexContent>
                        <xsd:extension base="Interval">
                                <xsd:sequence>
                                        <xsd:element name="weeklyRollConvention"
                                                type="WeeklyRollConventionEnum" minOccurs="0">
                                                <xsd:annotation>
                                                  <xsd:documentation xml:lang="en">The day of
                                                  the week on which a weekly reset
                                                  date occurs. This element must be
                                                  included if the reset frequency is
                                                  defined as weekly and not otherwise.</xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                </xsd:sequence>
                        </xsd:extension>
                </xsd:complexContent>
        </xsd:complexType>
        <xsd:complexType name="Stub">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type defining how a stub calculation
                                period amount is calculated. A single floating rate tenor different
                                to that used for the regular part of the calculation periods
                                schedule may be specified, or two floating rate tenors many be
                                specified. If two floating rate tenors are specified then Linear
                                Interpolation (in accordance with the 2000 ISDA Definitions, Section
                                8.3 Interpolation) is assumed to apply. Alternatively, an actual
                                known stub rate or stub amount may be specified.</xsd:documentation>
                </xsd:annotation>
                <xsd:choice>
                        <xsd:element name="floatingRate" type="FloatingRate" maxOccurs="unbounded">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The rates to be applied to
                                                the initial or final stub may be the linear
                                                interpolation of two different rates. While the
                                                majority of the time, the rate indices will be the
                                                same as that specified in the stream and only the
                                                tenor itself will be different, it is possible to
                                                specift two different rates. For example, a 2 month
                                                stub period may use the linear interpolation of a 1
                                                month and 3 month rate. The different rates would be
                                                specified in this component. Note that a maximum of
                                                two rates can be specified. If a stub period uses
                                                the same floating rate index, including tenor, as
                                                the regular calculation periods then this should not
                                                be specified again within this component, i.e. the
                                                stub calculation period amount component may not
                                                need to be specified even if there is an initial or
                                                final stub period. If a stub period uses a different
                                                floating rate index compared to the regular
                                                calculation periods then this should be specified
                                                within this component. If specified here, they are
                                                likely to have id attributes, allowing them to be
                                                referenced from within the cashflows component.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="stubRate" type="xsd:decimal">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">An actual rate to apply for
                                                the initial or final stub period may have been
                                                agreed between the principal parties (in a similar
                                                way to how an initial rate may have been agreed for
                                                the first regular period). If an actual stub rate
                                                has been agreed then it would be included in this
                                                component. It will be a per annum rate, expressed as
                                                a decimal. A stub rate of 5% would be represented as 0.05.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="stubAmount" type="Money">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">An actual amount to apply
                                                for the initial or final stub period may have been
                                                agreed between th two parties. If an actual stub
                                                amount has been agreed then it would be included in
                                                this component.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                </xsd:choice>
        </xsd:complexType>
        <xsd:complexType name="StubCalculationPeriodAmount">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type defining how the initial or final
                                stub calculation period amounts is calculated. For example, the rate
                                to be applied to the initial or final stub calculation period may be
                                the linear interpolation of two different tenors for the floating
                                rate index specified in the calculation period amount component,
                                e.g. A two month stub period may used the linear interpolation of a
                                one month and three month floating rate. The different rate tenors
                                would be specified in this component. Note that a maximum of two
                                rate tenors can be specified. If a stub period uses a single index
                                tenor and this is the same as that specified in the calculation
                                period amount component then the initial stub or final stub
                                component, as the case may be, must not be included.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:element name="calculationPeriodDatesReference" type="DateReference">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">A pointer style reference
                                                to the associated calculation period dates component
                                                defined elsewhere in the document.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="initialStub" type="Stub" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">Specifies how the initial
                                                stub amount is calculated. A single floating rate
                                                tenor different to that used for the regular part of
                                                the calculation periods schedule may be specified,
                                                or two floating tenors may be specified. If two
                                                floating rate tenors are specified then Linear
                                                Interpolation (in accordance with the 2000 ISDA
                                                Definitions, Section 8.3. Interpolation) is assumed
                                                to apply. Alternatively, an actual known stub rate
                                                or stub amount may be specified.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="finalStub" type="Stub" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">Specifies how the final
                                                stub amount is calculated. A single floating rate
                                                tenor different to that used for the regular part of
                                                the calculation periods schedule may be specified,
                                                or two floating tenors may be specified. If two
                                                floating rate tenors are specified then Linear
                                                Interpolation (in accordance with the 2000 ISDA
                                                Definitions, Section 8.3. Interpolation) is assumed
                                                to apply. Alternatively, an actual known stub rate
                                                or stub amount may be specified.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                </xsd:sequence>
        </xsd:complexType>
        <xsd:complexType name="Swap">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type defining swap streams and additional
                                payments between the principal parties involved in the swap.</xsd:documentation>
                </xsd:annotation>
                <xsd:complexContent>
                        <xsd:extension base="Product">
                                <xsd:sequence>
                                        <xsd:element name="swapStream" type="InterestRateStream" maxOccurs="unbounded">
                                                <xsd:annotation>
                                                  <xsd:documentation xml:lang="en">The swap streams.</xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                        <xsd:element name="earlyTerminationProvision"
                                                type="EarlyTerminationProvision" minOccurs="0">
                                                <xsd:annotation>
                                                  <xsd:documentation xml:lang="en">Parameters
                                                  specifying provisions relating to
                                                  the optional and mandatory early
                                                  terminarion of a swap transaction.</xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                        <xsd:element name="cancelableProvision"
                                                type="CancelableProvision" minOccurs="0">
                                                <xsd:annotation>
                                                  <xsd:documentation xml:lang="en">A provision
                                                  that allows the specification of an
                                                  embedded option within a swap giving
                                                  the buyer of the option the right to
                                                  terminate the swap, in whole or in
                                                  part, on the early termination date.</xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                        <xsd:element name="extendibleProvision"
                                                type="ExtendibleProvision" minOccurs="0">
                                                <xsd:annotation>
                                                  <xsd:documentation xml:lang="en">A provision
                                                  that allows the specification of an
                                                  embedded option with a swap giving
                                                  the buyer of the option the right to
                                                  extend the swap, in whole or in
                                                  part, to the extended termination date.</xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                        <xsd:element name="additionalPayment" type="Payment"
                                                minOccurs="0" maxOccurs="unbounded">
                                                <xsd:annotation>
                                                  <xsd:documentation xml:lang="en">Additional
                                                  payments between the principal parties.</xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                </xsd:sequence>
                        </xsd:extension>
                </xsd:complexContent>
        </xsd:complexType>
        <xsd:complexType name="CancelableProvision">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type defining the right of a party to
                                cancel a swap transaction on the specified exercise dates. The
                                provision is for 'walkaway' cancellation (i.e. the fair value of the
                                swap is not paid). A fee payable on exercise can be specified.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:group ref="BuyerSeller.model"/>
                        <xsd:element ref="exercise"/>
                        <xsd:element name="exerciseNotice" type="ExerciseNotice" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">Definition of the party to
                                                whom notice of exercise should be given.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="followUpConfirmation" type="xsd:boolean">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">A flag to indicate whether
                                                follow-up confirmation of exercise (written or
                                                electronic) is required following telephonic notice
                                                by the buyer to the seller or seller's agent.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="cancelableProvisionAdjustedDates"
                                type="CancelableProvisionAdjustedDates" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The adjusted dates
                                                associated with a cancelable provision. These dates
                                                have been adjusted for any applicable business day convention.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                </xsd:sequence>
        </xsd:complexType>
        <xsd:complexType name="CancelableProvisionAdjustedDates">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type to define the adjusted dates for a
                                cancelable provision on a swap transaction.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:element name="cancellationEvent" type="CancellationEvent" maxOccurs="unbounded">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The adjusted dates for an
                                                individual cancellation date.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                </xsd:sequence>
        </xsd:complexType>
        <xsd:complexType name="CancellationEvent">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">The adjusted dates for a specific
                                cancellation date, including the adjusted exercise date and adjusted
                                termination date.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:element name="adjustedExerciseDate" type="xsd:date">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The date on which option
                                                exercise takes place. This date should already be
                                                adjusted for any applicable business day convention.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="adjustedEarlyTerminationDate" type="xsd:date">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The early termination date
                                                that is applicable if an early termination provision
                                                is exercised. This date should already be adjusted
                                                for any applicable business day convention.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                </xsd:sequence>
                <xsd:attribute name="id" type="xsd:ID"/>
        </xsd:complexType>
        <xsd:complexType name="BulletPayment">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A product to represent a single cashflow.</xsd:documentation>
                </xsd:annotation>
                <xsd:complexContent>
                        <xsd:extension base="Product">
                                <xsd:sequence>
                                        <xsd:element name="payment" type="Payment">
                                                <xsd:annotation>
                                                  <xsd:documentation xml:lang="en">A known
                                                  payment between two parties.</xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                </xsd:sequence>
                        </xsd:extension>
                </xsd:complexContent>
        </xsd:complexType>
        <xsd:complexType name="CapFloor">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type defining an interest rate cap,
                                floor, or cap/floor strategy (e.g. collar) product.</xsd:documentation>
                </xsd:annotation>
                <xsd:complexContent>
                        <xsd:extension base="Product">
                                <xsd:sequence>
                                        <xsd:element name="capFloorStream" type="InterestRateStream"/>
                                        <xsd:element name="premium" type="Payment" minOccurs="0" maxOccurs="unbounded">
                                                <xsd:annotation>
                                                  <xsd:documentation xml:lang="en">The option
                                                  premium amount payable by buyer to
                                                  seller on the specified payment
                                                  date. </xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                        <xsd:element name="additionalPayment" type="Payment"
                                                minOccurs="0" maxOccurs="unbounded">
                                                <xsd:annotation>
                                                  <xsd:documentation xml:lang="en">Additional
                                                  payments between the principal parties.</xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                </xsd:sequence>
                        </xsd:extension>
                </xsd:complexContent>
        </xsd:complexType>
        <xsd:complexType name="CashPriceMethod">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type defining the parameters necessary
                                for each of the ISDA cash price methods for cash settlement.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:element name="cashSettlementReferenceBanks"
                                type="CashSettlementReferenceBanks" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">A container for a set of
                                                reference institutions. These reference institutions
                                                may be called upon to provide rate quotations as
                                                part of the method to determine the applicable cash
                                                settlement amount. If institutions are not
                                                specified, it is assumed that reference institutions
                                                will be agreed between the parties on the exercise
                                                date, or in the case of swap transaction to which
                                                mandatory early termination is applicable, the cash
                                                settlement valuation date.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="cashSettlementCurrency" type="Currency">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The currency in which the
                                                cash settlement amount will be calculated and settled.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="quotationRateType" type="QuotationRateTypeEnum">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">Which rate quote is to be
                                                observed, either Bid, Mid, Offer or Exercising Party
                                                Pays. The meaning of Exercising Party Pays is
                                                defined in the 2000 ISDA Definitions, Section 17.2.
                                                Certain Definitions Relating to Cash Settlement,
                                                paragraph (j)</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                </xsd:sequence>
        </xsd:complexType>
        <xsd:complexType name="CashSettlement">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type to define the cash settlement terms
                                for a product where cash settlement is applicable.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:element name="cashSettlementValuationTime" type="BusinessCenterTime">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The time of the cash
                                                settlement valuation date when the cash settlement
                                                amount will be determined according to the cash
                                                settlement method if the parties have not otherwise
                                                been able to agree the cash settlement amount.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="cashSettlementValuationDate" type="RelativeDateOffset">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The date on which the cash
                                                settlement amount will be determined according to
                                                the cash settlement method if the parties have not
                                                otherwise been able to agree the cash settlement amount.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="cashSettlementPaymentDate"
                                type="CashSettlementPaymentDate" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The date on which the cash
                                                settlement amount will be paid, subject to
                                                adjustment in accordance with any applicable
                                                business day convention. This component would not be
                                                present for a mandatory early termination provision
                                                where the cash settlement payment date is the
                                                mandatory early termination date.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:choice>
                                <xsd:element name="cashPriceMethod" type="CashPriceMethod">
                                        <xsd:annotation>
                                                <xsd:documentation xml:lang="en">An ISDA defined
                                                  cash settlement method used for the
                                                  determination of the applicable cash
                                                  settlement amount. The method is defined in
                                                  the 2000 ISDA Definitions, Section 17.3.
                                                  Cash Settlement Methods, paragraph (a).</xsd:documentation>
                                        </xsd:annotation>
                                </xsd:element>
                                <xsd:element name="cashPriceAlternateMethod" type="CashPriceMethod">
                                        <xsd:annotation>
                                                <xsd:documentation xml:lang="en">An ISDA defined
                                                  cash settlement method used for the
                                                  determination of the applicable cash
                                                  settlement amount. The method is defined in
                                                  the 2000 ISDA Definitions, Section 17.3.
                                                  Cash Settlement Methods, paragraph (b).</xsd:documentation>
                                        </xsd:annotation>
                                </xsd:element>
                                <xsd:element name="parYieldCurveAdjustedMethod" type="YieldCurveMethod">
                                        <xsd:annotation>
                                                <xsd:documentation xml:lang="en">An ISDA defined
                                                  cash settlement method used for the
                                                  determination of the applicable cash
                                                  settlement amount. The method is defined in
                                                  the 2000 ISDA Definitions, Section 17.3.
                                                  Cash Settlement Methods, paragraph (c).</xsd:documentation>
                                        </xsd:annotation>
                                </xsd:element>
                                <xsd:element name="zeroCouponYieldAdjustedMethod" type="YieldCurveMethod">
                                        <xsd:annotation>
                                                <xsd:documentation xml:lang="en">An ISDA defined
                                                  cash settlement method used for the
                                                  determination of the applicable cash
                                                  settlement amount. The method is defined in
                                                  the 2000 ISDA Definitions, Section 17.3.
                                                  Cash Settlement Methods, paragraph (d).</xsd:documentation>
                                        </xsd:annotation>
                                </xsd:element>
                                <xsd:element name="parYieldCurveUnadjustedMethod" type="YieldCurveMethod">
                                        <xsd:annotation>
                                                <xsd:documentation xml:lang="en">An ISDA defined
                                                  cash settlement method used for the
                                                  determination of the applicable cash
                                                  settlement amount. The method is defined in
                                                  the 2000 ISDA Definitions, Section 17.3.
                                                  Cash Settlement Methods, paragraph (e).</xsd:documentation>
                                        </xsd:annotation>
                                </xsd:element>
                        </xsd:choice>
                </xsd:sequence>
                <xsd:attribute name="id" type="xsd:ID"/>
        </xsd:complexType>
        <xsd:complexType name="CashSettlementPaymentDate">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type defining the cash settlement payment
                                date(s) as either a set of explicit dates, together with applicable
                                adjustments, or as a date relative to some other (anchor) date, or
                                as any date in a range of contiguous business days.</xsd:documentation>
                </xsd:annotation>
                <xsd:choice>
                        <xsd:element name="adjustableDates" type="AdjustableDates">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">A series of dates that
                                                shall be subject to adjustment if they would
                                                otherwise fall on a day that is not a business day
                                                in the specified business centers, together with the
                                                convention for adjusting the date.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="relativeDate" type="RelativeDateOffset">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">A date specified as some
                                                offset to another date (the anchor date).</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="businessDateRange" type="BusinessDateRange">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">A range of contiguous
                                                business days.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                </xsd:choice>
                <xsd:attribute name="id" type="xsd:ID"/>
        </xsd:complexType>
        <xsd:complexType name="CashSettlementReferenceBanks">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type defining the list of reference
                                institutions polled for relevant rates or prices when determining
                                the cash settlement amount for a product where cash settlement is applicable.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:element name="referenceBank" type="ReferenceBank" maxOccurs="unbounded">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">An institution (party)
                                                identified by means of a coding scheme and an
                                                optional name.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                </xsd:sequence>
                <xsd:attribute name="id" type="xsd:ID"/>
        </xsd:complexType>
        <xsd:complexType name="EarlyTerminationEvent">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type to define the adjusted dates
                                associated with an early termination provision.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:element name="adjustedExerciseDate" type="xsd:date">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The date on which option
                                                exercise takes place. This date should already be
                                                adjusted for any applicable business day convention.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="adjustedEarlyTerminationDate" type="xsd:date">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The early termination date
                                                that is applicable if an early termination provision
                                                is exercised. This date should already be adjusted
                                                for any applicable business day convention.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="adjustedCashSettlementValuationDate" type="xsd:date">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The date by which the cash
                                                settlement amount must be agreed. This date should
                                                already be adjusted for any applicable business day convention.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="adjustedCashSettlementPaymentDate" type="xsd:date">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The date on which the cash
                                                settlement amount is paid. This date should already
                                                be adjusted for any applicable business dat convention.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="adjustedExerciseFeePaymentDate" type="xsd:date" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The date on which the
                                                exercise fee amount is paid. This date should
                                                already be adjusted for any applicable business day convention.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                </xsd:sequence>
                <xsd:attribute name="id" type="xsd:ID"/>
        </xsd:complexType>
        <xsd:complexType name="EarlyTerminationProvision">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type defining an early termination
                                provision for a swap. This early termination is at fair value, i.e.
                                on termination the fair value of the product must be settled between
                                the parties.</xsd:documentation>
                </xsd:annotation>
                <xsd:choice>
                        <xsd:element name="mandatoryEarlyTermination" type="MandatoryEarlyTermination">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">A mandatory early
                                                termination provision to terminate the swap at fair value.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="optionalEarlyTermination" type="OptionalEarlyTermination">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">An option for either or
                                                both parties to terminate the swap at fair value.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                </xsd:choice>
                <xsd:attribute name="id" type="xsd:ID"/>
        </xsd:complexType>
        <xsd:complexType name="ExerciseEvent">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type defining the adjusted dates
                                associated with a particular exercise event.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:element name="adjustedExerciseDate" type="xsd:date">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The date on which option
                                                exercise takes place. This date should already be
                                                adjusted for any applicable business day convention.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="adjustedRelevantSwapEffectiveDate" type="xsd:date">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The effective date of the
                                                underlying swap associated with a given exercise
                                                date. This date should already be adjusted for any
                                                applicable business day convention.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="adjustedCashSettlementValuationDate" type="xsd:date" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The date by which the cash
                                                settlement amount must be agreed. This date should
                                                already be adjusted for any applicable business day convention.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="adjustedCashSettlementPaymentDate" type="xsd:date" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The date on which the cash
                                                settlement amount is paid. This date should already
                                                be adjusted for any applicable business dat convention.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="adjustedExerciseFeePaymentDate" type="xsd:date" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The date on which the
                                                exercise fee amount is paid. This date should
                                                already be adjusted for any applicable business day convention.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                </xsd:sequence>
                <xsd:attribute name="id" type="xsd:ID"/>
        </xsd:complexType>
        <xsd:complexType name="ExtendibleProvision">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type defining an option to extend an
                                existing swap transaction on the specified exercise dates for a term
                                ending on the specified new termination date.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:group ref="BuyerSeller.model"/>
                        <xsd:element ref="exercise"/>
                        <xsd:element name="exerciseNotice" type="ExerciseNotice" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">Definition of the party to
                                                whom notice of exercise should be given.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="followUpConfirmation" type="xsd:boolean">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">A flag to indicate whether
                                                follow-up confirmation of exercise (written or
                                                electronic) is required following telephonic notice
                                                by the buyer to the seller or seller's agent.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="extendibleProvisionAdjustedDates"
                                type="ExtendibleProvisionAdjustedDates" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The adjusted dates
                                                associated with an extendible provision. These dates
                                                have been adjusted for any applicable business day convention.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                </xsd:sequence>
        </xsd:complexType>
        <xsd:complexType name="ExtendibleProvisionAdjustedDates">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type defining the adjusted dates
                                associated with a provision to extend a swap.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:element name="extensionEvent" type="ExtensionEvent" maxOccurs="unbounded">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The adjusted dates
                                                associated with a single extendible exercise date.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                </xsd:sequence>
        </xsd:complexType>
        <xsd:complexType name="ExtensionEvent">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type to define the adjusted dates
                                associated with an individual extension event.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:element name="adjustedExerciseDate" type="xsd:date">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The date on which option
                                                exercise takes place. This date should already be
                                                adjusted for any applicable business day convention.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="adjustedExtendedTerminationDate" type="xsd:date">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The termination date if an
                                                extendible provision is exercised. This date should
                                                already be adjusted for any applicable business day convention.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                </xsd:sequence>
                <xsd:attribute name="id" type="xsd:ID"/>
        </xsd:complexType>
        <xsd:complexType name="FxLinkedNotionalAmount">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type to describe the cashflow
                                representation for fx linked notionals.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:element name="resetDate" type="xsd:date" minOccurs="0"/>
                        <xsd:element name="adjustedFxSpotFixingDate" type="xsd:date" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The date on which the fx
                                                spot rate is observed. This date should already be
                                                adjusted for any applicable business day convention.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="observedFxSpotRate" type="xsd:decimal" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The actual observed fx spot rate.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="notionalAmount" type="xsd:decimal" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The calculation period
                                                notional amount.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                </xsd:sequence>
        </xsd:complexType>
        <xsd:complexType name="FxLinkedNotionalSchedule">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type to describe a notional schedule
                                where each notional that applies to a calculation period is
                                calculated with reference to a notional amount or notional amount
                                schedule in a different currency by means of a spot currency
                                exchange rate which is normally observed at the beginning of each period.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:element name="constantNotionalScheduleReference" type="NotionalReference">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">A pointer style reference
                                                to the associated constant notional schedule defined
                                                elsewhere in the document which contains the
                                                currency amounts which will be converted into the
                                                varying notional currency amounts using the spot
                                                currency exchange rate.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="initialValue" type="xsd:decimal" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation>The initial currency amount for the
                                                varying notional.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="varyingNotionalCurrency" type="xsd:string">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The currency of the varying
                                                notional amount, i.e. the notional amount being
                                                determined periodically based on observation of a
                                                spot currency exchange rate.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="varyingNotionalFixingDates" type="RelativeDateOffset">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The dates on which spot
                                                currency exchange rates are observed for purposes of
                                                determining the varying notional currency amount
                                                that will apply to a calculation period.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="fxSpotRateSource" type="FxSpotRateSource">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The information source and
                                                time at which the spot currency exchange rate will
                                                be observed.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="varyingNotionalInterimExchangePaymentDates" type="RelativeDateOffset">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The dates on which interim
                                                exchanges of notional are paid. Interim exchanges
                                                will arise as a result of changes in the spot
                                                currency exchange amount or changes in the constant
                                                notional schedule (e.g. amortization).</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                </xsd:sequence>
        </xsd:complexType>
        <xsd:complexType name="MandatoryEarlyTermination">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type to define an early termination
                                provision for which exercise is mandatory.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:element name="mandatoryEarlyTerminationDate" type="AdjustableDate">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The early termination date
                                                associated with a mandatory early termination of a swap.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="calculationAgent" type="CalculationAgent">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">A pointer style reference
                                                to a party identifier defined elsewhere in the
                                                document. The party referenced is the ISDA
                                                Calculation Agent for the trade. If more than one
                                                party is referenced then the parties are assumed to
                                                be co-calculation agents, i.e. they have joint reponsibility.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="cashSettlement" type="CashSettlement">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">If specified, this means
                                                that cash settlement is applicable to the
                                                transaction and defines the parameters associated
                                                with the cash settlement prodcedure. If not
                                                specified, then physical settlement is applicable.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="mandatoryEarlyTerminationAdjustedDates"
                                type="MandatoryEarlyTerminationAdjustedDates" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The adjusted dates
                                                associated with a mandatory early termination
                                                provision. These dates have been adjusted for any
                                                applicable business day convention.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                </xsd:sequence>
                <xsd:attribute name="id" type="xsd:ID"/>
        </xsd:complexType>
        <xsd:complexType name="MandatoryEarlyTerminationAdjustedDates">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type defining the adjusted dates
                                associated with a mandatory early termination provision.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:element name="adjustedEarlyTerminationDate" type="xsd:date">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The early termination date
                                                that is applicable if an early termination provision
                                                is exercised. This date should already be adjusted
                                                for any applicable business day convention.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="adjustedCashSettlementValuationDate" type="xsd:date">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The date by which the cash
                                                settlement amount must be agreed. This date should
                                                already be adjusted for any applicable business day convention.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="adjustedCashSettlementPaymentDate" type="xsd:date">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The date on which the cash
                                                settlement amount is paid. This date should already
                                                be adjusted for any applicable business dat convention.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                </xsd:sequence>
        </xsd:complexType>
        <xsd:complexType name="OptionalEarlyTermination">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type defining an early termination
                                provision where either or both parties have the right to exercise.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:element name="singlePartyOption" type="SinglePartyOption" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">If optional early
                                                termination is not available to both parties then
                                                this component specifies the buyer and seller of the option.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element ref="exercise"/>
                        <xsd:element name="exerciseNotice" type="ExerciseNotice" minOccurs="0" maxOccurs="unbounded">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">Definition of the party to
                                                whom notice of exercise should be given.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="followUpConfirmation" type="xsd:boolean">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">A flag to indicate whether
                                                follow-up confirmation of exercise (written or
                                                electronic) is required following telephonic notice
                                                by the buyer to the seller or seller's agent.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="calculationAgent" type="CalculationAgent">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The ISDA Calculation Agent
                                                responsible for performing duties associated with an
                                                optional early termination.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="cashSettlement" type="CashSettlement">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">If specified, this means
                                                that cash settlement is applicable to the
                                                transaction and defines the parameters associated
                                                with the cash settlement prodcedure. If not
                                                specified, then physical settlement is applicable.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="optionalEarlyTerminationAdjustedDates"
                                type="OptionalEarlyTerminationAdjustedDates" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">An early termination
                                                provision to terminate the trade at fair value where
                                                one or both parties have the right to decide on termination.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                </xsd:sequence>
        </xsd:complexType>
        <xsd:complexType name="OptionalEarlyTerminationAdjustedDates">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type defining the adjusted dates
                                associated with an optional early termination provision.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:element name="earlyTerminationEvent" type="EarlyTerminationEvent" maxOccurs="unbounded">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The adjusted dates
                                                associated with an individual earley termination date.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                </xsd:sequence>
        </xsd:complexType>
        <xsd:complexType name="SettlementRateSource">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type describing the method for obtaining
                                a settlement rate.</xsd:documentation>
                </xsd:annotation>
                <xsd:choice>
                        <xsd:element name="informationSource" type="InformationSource">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The information source
                                                where a published or displayed market rate will be
                                                obtained, e.g. Telerate Page 3750.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="cashSettlementReferenceBanks" type="CashSettlementReferenceBanks">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">A container for a set of
                                                reference institutions. These reference institutions
                                                may be called upon to provide rate quotations as
                                                part of the method to determine the applicable cash
                                                settlement amount. If institutions are not
                                                specified, it is assumed that reference institutions
                                                will be agreed between the parties on the exercise
                                                date, or in the case of swap transaction to which
                                                mandatory early termination is applicable, the cash
                                                settlement valuation date.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                </xsd:choice>
        </xsd:complexType>
        <xsd:complexType name="SinglePartyOption">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type describing the buyer and seller of
                                an option.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:group ref="BuyerSeller.model"/>
                </xsd:sequence>
        </xsd:complexType>
        <xsd:complexType name="Swaption">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type to define an option on a swap.</xsd:documentation>
                </xsd:annotation>
                <xsd:complexContent>
                        <xsd:extension base="Product">
                                <xsd:sequence>
                                        <xsd:group ref="BuyerSeller.model"/>
                                        <xsd:element name="premium" type="Payment" minOccurs="0" maxOccurs="unbounded">
                                                <xsd:annotation>
                                                  <xsd:documentation xml:lang="en">The option
                                                  premium amount payable by buyer to
                                                  seller on the specified payment date.</xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                        <xsd:element ref="exercise"/>
                                        <xsd:element name="exerciseProcedure" type="ExerciseProcedure">
                                                <xsd:annotation>
                                                  <xsd:documentation xml:lang="en">A set of
                                                  parameters defining procedures
                                                  associated with the exercise.</xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                        <xsd:element name="calculationAgentPartyReference"
                                                type="PartyReference" maxOccurs="unbounded">
                                                <xsd:annotation>
                                                  <xsd:documentation xml:lang="en">A pointer
                                                  style reference to a party
                                                  identifier defined elsewhere in the
                                                  document. The party referenced is
                                                  the ISDA Calculation Agent for the
                                                  trade. If more than one party is
                                                  referenced then the parties are
                                                  assumed to be co-calculation agents,
                                                  i.e. they have joint reponsibility.</xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                        <xsd:element name="cashSettlement" type="CashSettlement" minOccurs="0">
                                                <xsd:annotation>
                                                  <xsd:documentation xml:lang="en">If
                                                  specified, this means that cash
                                                  settlement is applicable to the
                                                  transaction and defines the
                                                  parameters associated with the cash
                                                  settlement prodcedure. If not
                                                  specified, then physical settlement
                                                  is applicable.</xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                        <xsd:element name="swaptionStraddle" type="xsd:boolean">
                                                <xsd:annotation>
                                                  <xsd:documentation xml:lang="en">Whether the
                                                  option is a swaption or a swaption straddle.</xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                        <xsd:element name="swaptionAdjustedDates"
                                                type="SwaptionAdjustedDates" minOccurs="0">
                                                <xsd:annotation>
                                                  <xsd:documentation xml:lang="en">The
                                                  adjusted dates associated with
                                                  swaption exercise. These dates have
                                                  been adjusted for any applicable
                                                  business day convention.</xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                        <xsd:element ref="swap"/>
                                </xsd:sequence>
                        </xsd:extension>
                </xsd:complexContent>
        </xsd:complexType>
        <xsd:complexType name="SwaptionAdjustedDates">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type describing the adjusted dates
                                associated with swaption exercise and settlement.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:element name="exerciseEvent" type="ExerciseEvent" maxOccurs="unbounded">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The adjusted dates
                                                associated with an individual swaption exercise date.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                </xsd:sequence>
        </xsd:complexType>
        <xsd:complexType name="YieldCurveMethod">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type defining the parameters required for
                                each of the ISDA defined yield curve methods for cash settlement.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:sequence>
                                <xsd:element name="settlementRateSource" type="SettlementRateSource" minOccurs="0">
                                        <xsd:annotation>
                                                <xsd:documentation xml:lang="en">The method for
                                                  obtaining a settlement rate. This may be
                                                  from some information source (e.g. Reuters)
                                                  or from a set of reference banks.</xsd:documentation>
                                        </xsd:annotation>
                                </xsd:element>
                                <xsd:element name="quotationRateType" type="QuotationRateTypeEnum">
                                        <xsd:annotation>
                                                <xsd:documentation xml:lang="en">Which rate quote is
                                                  to be observed, either Bid, Mid, Offer or
                                                  Exercising Party Pays. The meaning of
                                                  Exercising Party Pays is defined in the 2000
                                                  ISDA Definitions, Section 17.2. Certain
                                                  Definitions Relating to Cash Settlement,
                                                  paragraph (j)</xsd:documentation>
                                        </xsd:annotation>
                                </xsd:element>
                        </xsd:sequence>
                </xsd:sequence>
        </xsd:complexType>
        <xsd:element name="bulletPayment" type="BulletPayment" substitutionGroup="product">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A product to represent one or more known payments.</xsd:documentation>
                </xsd:annotation>
        </xsd:element>
        <xsd:element name="capFloor" type="CapFloor" substitutionGroup="product">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A cap, floor or cap floor structures
                                product definition.</xsd:documentation>
                </xsd:annotation>
        </xsd:element>
        <xsd:element name="fra" type="Fra" substitutionGroup="product">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A forward rate agreement product definition.</xsd:documentation>
                </xsd:annotation>
        </xsd:element>
        <xsd:element name="swap" type="Swap" substitutionGroup="product">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A swap product definition.</xsd:documentation>
                </xsd:annotation>
        </xsd:element>
        <xsd:element name="swaption" type="Swaption" substitutionGroup="product">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A swaption product definition.</xsd:documentation>
                </xsd:annotation>
        </xsd:element>
        <xsd:complexType name="Calculation">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">A type definining the parameters used in
                                the calculation of fixed or floating calculation period amounts.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:choice>
                                <xsd:element name="notionalSchedule" type="Notional">
                                        <xsd:annotation>
                                                <xsd:documentation xml:lang="en">The notional amount
                                                  or notional amount schedule.</xsd:documentation>
                                        </xsd:annotation>
                                </xsd:element>
                                <xsd:element name="fxLinkedNotionalSchedule" type="FxLinkedNotionalSchedule">
                                        <xsd:annotation>
                                                <xsd:documentation xml:lang="en">A notional amount
                                                  schedule where each notional that applied to
                                                  a calculation period is calculated with
                                                  reference to a notional amount or notional
                                                  amount schedule in a different currency by
                                                  means of a spot currency exchange rate which
                                                  is normally observed at the beginning of
                                                  each period.</xsd:documentation>
                                        </xsd:annotation>
                                </xsd:element>
                        </xsd:choice>
                        <xsd:choice>
                                <xsd:element name="fixedRateSchedule" type="Schedule">
                                        <xsd:annotation>
                                                <xsd:documentation xml:lang="en">The fixed rate or
                                                  fixed rate schedule expressed as explicit
                                                  fixed rates and dates. In the case of a
                                                  schedule, the step dates may be subject to
                                                  adjustment in accordance with any
                                                  adjustments specified in calculationPeriodDatesAdjustments.</xsd:documentation>
                                        </xsd:annotation>
                                </xsd:element>
                                <xsd:element name="floatingRateCalculation" type="FloatingRateCalculation">
                                        <xsd:annotation>
                                                <xsd:documentation xml:lang="en">The floating rate
                                                  calculation definitions</xsd:documentation>
                                        </xsd:annotation>
                                </xsd:element>
                        </xsd:choice>
                        <xsd:element name="dayCountFraction" type="DayCountFractionEnum">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The day count fraction.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="discounting" type="Discounting" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">The parameters specifying
                                                any discounting conventions that may apply. This
                                                element must only be included if discounting applies.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="compoundingMethod" type="CompoundingMethodEnum" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation xml:lang="en">If more that one
                                                calculation period contributes to a single payment
                                                amount this element specifies whether compounding is
                                                applicable, and if so, what compounding method is to
                                                be used. This element must only be included when
                                                more that one calculation period contributes to a
                                                single payment amount.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                </xsd:sequence>
        </xsd:complexType>
        <xsd:complexType name="FloatingRateIndex">
                <xsd:annotation>
                        <xsd:documentation xml:lang="en">The ISDA Floating Rate Option, i.e. the
                                floating rate index.</xsd:documentation>
                </xsd:annotation>
                <xsd:simpleContent>
                        <xsd:extension base="xsd:string">
                                <xsd:attribute name="floatingRateIndexScheme"
                                        default="http://www.fpml.org/ext/isda-2000-definitions" type="xsd:anyURI"/>
                        </xsd:extension>
                </xsd:simpleContent>
        </xsd:complexType>
</xsd:schema>
