Schema Name: fpml-ird-5-9.xsd
Target Namespace: http://www.fpml.org/FpML-5/transparency
Collapse XSD Schema Code:

<!-- 
  == Copyright (c) 2002-2017 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/license/license.html
-->
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns="http://www.fpml.org/FpML-5/transparency" xmlns:fpml-annotation="http://www.fpml.org/annotation" targetNamespace="http://www.fpml.org/FpML-5/transparency" ecore:documentRoot="FpML" ecore:nsPrefix="trnsp" ecore:package="org.fpml.transparency" version="$Revision: 12910 $" elementFormDefault="qualified" attributeFormDefault="unqualified">
  <xsd:include schemaLocation="fpml-asset-5-9.xsd" />
  <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:sequence>
          <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:sequence>
        <xsd:element ref="rateCalculation">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">This element is the head of a substitution group. It is substituted by the floatingRateCalculation element for standard Floating Rate legs, or the inflationRateCalculation element for inflation swaps.</xsd:documentation>
          </xsd:annotation>
        </xsd:element>
      </xsd:choice>
      <xsd:element name="dayCountFraction" type="DayCountFraction">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">The day count fraction.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
  </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:sequence>
    <xsd:attribute name="id" use="optional" type="xsd:ID"></xsd:attribute>
  </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:element ref="exercise" minOccurs="0" />
      <xsd:element name="initialFee" type="SimplePayment" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">An initial fee for the cancelable option.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
  </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:annotation>
              <xsd:documentation xml:lang="en">Reference to the leg, where date adjustments may apply.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <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: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 CapFloor transaction.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </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:sequence>
        <xsd:group ref="MandatoryEarlyTermination.model" />
        <xsd:group ref="OptionalEarlyTermination.model" minOccurs="0" />
      </xsd:sequence>
    </xsd:choice>
    <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:element ref="exercise" minOccurs="0" />
      <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" minOccurs="0">
        <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" minOccurs="0" 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" minOccurs="0">
        <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" minOccurs="0">
        <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="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:sequence>
            <xsd:element name="adjustedEffectiveDate" type="RequiredIdentifierDate">
              <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: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:sequence>
          <xsd:element name="dayCountFraction" type="DayCountFraction">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">The 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="IdentifiedRate">
            <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="Period" maxOccurs="unbounded">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">The ISDA Designated Maturity, i.e. the tenor of the floating rate. A FRA can contain either one or two indexTenor instances.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="fraDiscounting" type="FraDiscountingEnum" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">Specifies whether discounting applies and, if so, what type.</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 (i.e. the parties referenced as the FRA buyer and seller).</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </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="initialValue" type="xsd:decimal" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">The initial currency amount for the varying notional. This may be omitted for a forward starting swap if the FX-linked notional value is not known at deal inception.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="varyingNotionalCurrency" type="Currency">
        <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:sequence>
  </xsd:complexType>
  <xsd:complexType name="InflationRateCalculation">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A type defining the components specifiying an Inflation Rate Calculation</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="FloatingRateCalculation">
        <xsd:sequence>
          <xsd:element name="inflationLag" type="Offset" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">an offsetting period from the payment date which determines the reference period for which the inflation index is onserved.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="indexSource" type="RateSourcePage" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">The reference source such as Reuters or Bloomberg.</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:complexContent>
      <xsd:extension base="Leg">
        <xsd:sequence>
          <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="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="settlementProvision" type="SettlementProvision" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">A provision that allows the specification of settlement terms, occuring when the settlement currency is different to the notional currency of the trade.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </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: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="NonNegativeAmountSchedule">
        <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:sequence>
    <xsd:attribute name="id" type="xsd:ID" />
  </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:sequence>
  </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:element name="paymentFrequency" type="Frequency">
        <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 the 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. If the payment frequency is of value T (term), the period is defined by the swap\swapStream\calculationPerioDates\effectiveDate and the swap\swapStream\calculationPerioDates\terminationDate.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
    <xsd:attribute name="id" type="xsd:ID" />
  </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="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:sequence>
    <xsd:attribute name="id" type="xsd:ID" use="optional"></xsd:attribute>
  </xsd:complexType>
  <xsd:complexType name="SettlementProvision">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A type defining the specification of settlement terms, occuring when the settlement currency is different to the notional currency of the trade.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element name="settlementCurrency" type="Currency">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">The currency that stream settles in (to support swaps that settle in a currency different from the notional currency).</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" minOccurs="2" maxOccurs="2">
            <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="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: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="optionType" type="SwaptionTypeEnum" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">The type of option transaction. From a usage standpoint, put/call is the default option type, while payer/receiver indicator is used for options index credit default swaps, consistently with the industry practice. Straddle is used for the case of straddle strategy, that combine a call and a put with the same strike. This element is needed for transparency reporting because the counterparties are not available, and is made available in other views for convenience; it is not intended to be used for confirmation processing. If the swaption straddle indicator is provided, this must not be in conflict with that indicator.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element ref="exercise" />
          <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="swap" type="Swap" />
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <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="floatingRateCalculation" type="FloatingRateCalculation" substitutionGroup="rateCalculation">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A floating rate calculation 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="inflationRateCalculation" type="InflationRateCalculation" substitutionGroup="rateCalculation">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">An inflation rate calculation definition.</xsd:documentation>
    </xsd:annotation>
  </xsd:element>
  <xsd:element name="rateCalculation" type="Rate" abstract="true">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">The base element for the floating rate calculation definitions.</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:group name="MandatoryEarlyTermination.model">
    <xsd:choice>
      <xsd:sequence>
        <xsd:element name="mandatoryEarlyTerminationDateTenor" type="Period" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">Period after trade date of the mandatory early termination date.</xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="mandatoryEarlyTermination" type="MandatoryEarlyTermination" minOccurs="0">
          <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:sequence>
    </xsd:choice>
  </xsd:group>
  <xsd:group name="OptionalEarlyTermination.model">
    <xsd:choice>
      <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:group>
</xsd:schema>

Collapse ComplexTypes:
Collapse Elements:
Collapse Groups:
Collapse Comments:
blog comments powered by Disqus