FpML 4.2 Trial Recommendation

10 September 2021

Asset Component Definitions

Version: 4.2

This Version:

http://www.fpml.org/spec/fpml-4-2-13-tr-6

Latest Version:

http://www.fpml.org/spec/fpml-4-2-13-tr-6

Previous Version:

https://www.fpml.org/spec/fpml-4-2-12-rec-2/

Errata for this Version:

http://www.fpml.org/spec/errata/fpml-4-2-13-tr-6-errata.html

Document built: Thu 09/09/2021 16:55:41.05


Copyright (c) 1999 - 2006 by INTERNATIONAL SWAPS AND DERIVATIVES ASSOCIATION, INC.
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.html



The FpML specifications provided are without warranty of any kind, either expressed or implied, including, without limitation, warranties that FpML, or the FpML specifications are free of defects, merchantable, fit for a particular purpose or non-infringing. The entire risk as to the quality and performance of the specifications is with you. Should any of the FpML specifications prove defective in any respect, you assume the cost of any necessary servicing or repair. Under no circumstances and under no legal theory, whether tort (including negligence), contract, or otherwise, shall ISDA, any of its members, or any distributor of documents or software containing any of the FpML specifications, or any supplier of any of such parties, be liable to you or any other person for any indirect, special, incidental, or consequential damages of any character including, without limitation, damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses, even if such party shall have been informed of the possibility of such damages.


Contents

Global Simple Types

Global Complex Types
ActualPrice
Asset
Basket
BasketConstituent
BasketId
BasketName
Bond
Cash
Commission
ConstituentWeight
ConvertibleBond
CouponType
Deposit
DividendPayout
EquityAsset
ExchangeTraded
ExchangeTradedContract
ExchangeTradedFund
Future
FutureId
FxConversion
FxRateAsset
Index
MutualFund
PendingPayment
Price
RateIndex
SimpleCreditDefaultSwap
SimpleFra
SimpleIRSwap
SingleUnderlyer
Underlyer
UnderlyingAsset

Global Elements
bond
cash
convertibleBond
deposit
equity
exchangeTradedFund
future
fxRate
index
mutualFund
rateIndex
simpleCreditDefaultSwap
simpleFra
simpleIrSwap
underlyingAsset

Groups
BasketIdentifier.model
CreditEntity.model
ExchangeIdentifier.model

Schema Listing

Global Simple Types

The schema does not contain any global simple types.


Global Complex Types

ActualPrice

Description:

Figure:

Contents:

currency (zero or one occurrence; of the type Currency)

amount (exactly one occurrence; of the type xsd:decimal)

priceExpression (exactly one occurrence; of the type PriceExpressionEnum)

Used by:

Schema Fragment:

<xsd:complexType name="ActualPrice">
  <xsd:sequence>
    <xsd:element name="currency" type="Currency" minOccurs="0">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          Specifies the currency associated with the net price. This
          element is not present if the price is expressed in
          percentage terms (as specified through the priceExpression
          element).
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    <xsd:element name="amount" type="xsd:decimal">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          Specifies the net price amount. In the case of a fixed income
          security or a convertible bond, this price includes the
          accrued interests.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    <xsd:element name="priceExpression" type="PriceExpressionEnum">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          Specifies whether the price is expressed in absolute or
          relative terms.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
  </xsd:sequence>
</xsd:complexType>

Asset

Description:

A generic type describing the basic components of an asset.

Figure:

Contents:

instrumentId (one or more occurrences; of the type InstrumentId)

description (zero or one occurrence; of the type xsd:string)

Attribute: id (xsd:ID)

Used by:

Derived Types:

Schema Fragment:

<xsd:complexType name="Asset" abstract="true">
  <xsd:annotation>
    <xsd:documentation xml:lang="en">
      A generic type describing the basic components of an asset.
    </xsd:documentation>
  </xsd:annotation>
  <xsd:sequence>
    <xsd:element name="instrumentId" type="InstrumentId" maxOccurs="unbounded"/>
    <xsd:element name="description" type="xsd:string" minOccurs="0">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          The long name of a security.
        </xsd:documentation>
        <xsd:documentation xml:lang="de">
          Vollständige Wertpapierbezeichnung.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
  </xsd:sequence>
  <xsd:attribute name="id" type="xsd:ID"/>
</xsd:complexType>

Basket

Description:

A type describing the underlyer features of a basket swap. Each of the basket constituents are described through an embedded component, the basketConstituentsType.

Figure:

Contents:

openUnits (zero or one occurrence; of the type xsd:decimal)

basketConstituent (one or more occurrences; of the type BasketConstituent)

basketDivisor (zero or one occurrence; of the type xsd:decimal)


There can be one occurance of the following structure;

basketCurrency (zero or one occurrence; of the type Currency)

Attribute: id (xsd:ID) - optional

Used by:

Schema Fragment:

<xsd:complexType name="Basket">
  <xsd:annotation>
    <xsd:documentation xml:lang="en">
      A type describing the underlyer features of a basket swap. Each
      of the basket constituents are described through an embedded
      component, the basketConstituentsType.
    </xsd:documentation>
  </xsd:annotation>
  <xsd:sequence>
    <xsd:element name="openUnits" type="xsd:decimal" minOccurs="0">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          The number of units (index or securities) that constitute the
          underlyer of the swap. In the case of a basket swap, this
          element is used to reference both the number of basket units,
          and the number of each asset components of the basket when
          these are expressed in absolute terms.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    <xsd:element name="basketConstituent" type="BasketConstituent" maxOccurs="unbounded">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          Describes each of the components of the basket.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    <xsd:element name="basketDivisor" type="xsd:decimal" minOccurs="0">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          Specifies the basket divisor amount. This value is normally
          used to adjust the constituent weight for pricing or to
          adjust for dividends, or other corporate actions.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    <xsd:group ref="BasketIdentifier.model" minOccurs="0">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          Reuses the group that specifies a name and an identifier for
          a given basket.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:group>
    <xsd:element name="basketCurrency" type="Currency" minOccurs="0">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          Specifies the currency for this basket.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
  </xsd:sequence>
  <xsd:attribute name="id" type="xsd:ID" use="optional"/>
</xsd:complexType>

BasketConstituent

Description:

A type describing each of the constituents of a basket swap.

Figure:

Contents:

underlyingAsset (exactly one occurrence; of the type Asset)

constituentWeight (zero or one occurrence; of the type ConstituentWeight)

dividendPayout (zero or one occurrence; of the type DividendPayout)

underlyerPrice (zero or one occurrence; of the type Price)

underlyerNotional (zero or one occurrence; of the type Money)

underlyerSpread (zero or one occurrence; of the type SpreadScheduleReference)

couponPayment (zero or one occurrence; of the type PendingPayment)

Attribute: id (xsd:ID) - optional

Used by:

Schema Fragment:

<xsd:complexType name="BasketConstituent">
  <xsd:annotation>
    <xsd:documentation xml:lang="en">
      A type describing each of the constituents of a basket swap.
    </xsd:documentation>
  </xsd:annotation>
  <xsd:sequence>
    <xsd:element ref="underlyingAsset"/>
    <xsd:element name="constituentWeight" type="ConstituentWeight" minOccurs="0">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          Specifies the weight of each of the underlyer constituent
          within the basket, either in absolute or relative terms. This
          is an optional component, as certain swaps do not specify a
          specific weight for each of their basket constituents.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    <xsd:element name="dividendPayout" type="DividendPayout" minOccurs="0">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          Specifies the dividend payout ratio associated with an equity
          underlyer. A basket swap can have different payout ratios
          across the various underlying constituents. In certain cases
          the actual ratio is not known on trade inception, and only
          general conditions are then specified.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    <xsd:element name="underlyerPrice" type="Price" minOccurs="0">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          Specifies the price that is associated with each of the
          basket constituents. This component is optional, as it is not
          absolutely required to accurately describe the economics of
          the trade, considering the price that characterizes the
          equity swap is associated to the leg of the trade.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    <xsd:element name="underlyerNotional" type="Money" minOccurs="0">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          Specifies the notional (i.e. price * quantity) that is
          associated with each of the basket constituents. This
          component is optional, as it is not absolutely required to
          accurately describe the economics of the trade, considering
          the notional that characterizes the equity swap is associated
          to the leg of the trade.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    <xsd:element name="underlyerSpread" type="SpreadScheduleReference" minOccurs="0">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          Provides a link to the spread schedule used for this
          underlyer.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    <xsd:element name="couponPayment" type="PendingPayment" minOccurs="0">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          The next upcoming coupon payment.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
  </xsd:sequence>
  <xsd:attribute name="id" type="xsd:ID" use="optional"/>
</xsd:complexType>

BasketId

Description:

Figure:

Contents:

Inherited element(s): (This definition inherits the content defined by the type xsd:normalizedString)

Attribute: basketIdScheme (xsd:anyURI)

Used by:

Schema Fragment:

<xsd:complexType name="BasketId">
  <xsd:simpleContent>
    <xsd:extension base="xsd:normalizedString">
      <xsd:attribute name="basketIdScheme" type="xsd:anyURI"/>
    </xsd:extension>
  </xsd:simpleContent>
</xsd:complexType>

BasketName

Description:

Figure:

Contents:

Inherited element(s): (This definition inherits the content defined by the type xsd:normalizedString)

Attribute: basketNameScheme (xsd:anyURI)

Used by:

Schema Fragment:

<xsd:complexType name="BasketName">
  <xsd:simpleContent>
    <xsd:extension base="xsd:normalizedString">
      <xsd:attribute name="basketNameScheme" type="xsd:anyURI"/>
    </xsd:extension>
  </xsd:simpleContent>
</xsd:complexType>

Bond

Description:

Figure:

Contents:

Inherited element(s): (This definition inherits the content defined by the type ExchangeTraded)

issuerName (zero or one occurrence; of the type xsd:string)

seniority (zero or one occurrence; of the type CreditSeniority)

couponType (zero or one occurrence; of the type CouponType)

couponRate (zero or one occurrence; of the type xsd:decimal)

maturity (zero or one occurrence; of the type xsd:date)

parValue (zero or one occurrence; of the type xsd:decimal)

faceAmount (zero or one occurrence; of the type xsd:decimal)

paymentFrequency (zero or one occurrence; of the type Interval)

dayCountFraction (zero or one occurrence; of the type DayCountFraction)

Used by:

Extension of:

Derived Types:

Schema Fragment:

<xsd:complexType name="Bond">
  <xsd:complexContent>
    <xsd:extension base="ExchangeTraded">
      <xsd:sequence>
        <xsd:element name="issuerName" type="xsd:string" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              Specifies the issuer name of a fixed income security or
              convertible bond.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="seniority" type="CreditSeniority" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              The repayment precedence of a debt instrument.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="couponType" type="CouponType" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              Specifies if the bond has a variable coupon, step-up/down
              coupon or a zero-coupon.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="couponRate" type="xsd:decimal" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              Specifies the coupon rate (expressed in percentage) of a
              fixed income security or convertible bond.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="maturity" type="xsd:date" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              The date when the principal amount of a security becomes
              due and payable.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="parValue" type="xsd:decimal" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              Specifies the nominal amount of a fixed income security
              or convertible bond.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="faceAmount" type="xsd:decimal" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              Specifies the total amount of the issue. Corresponds to
              the par value multiplied by the number of issued
              security.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="paymentFrequency" type="Interval" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              Specifies the frequency at which the bond pays, e.g. 6M.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="dayCountFraction" type="DayCountFraction" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              The day count basis for the bond.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
      </xsd:sequence>
    </xsd:extension>
  </xsd:complexContent>
</xsd:complexType>

Cash

Description:

Figure:

Contents:

Inherited element(s): (This definition inherits the content defined by the type Asset)

currency (exactly one occurrence; of the type Currency)

Used by:

Extension of:

Schema Fragment:

<xsd:complexType name="Cash">
  <xsd:complexContent>
    <xsd:extension base="Asset">
      <xsd:sequence>
        <xsd:element name="currency" type="Currency">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              The currency in which an amount is denominated.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
      </xsd:sequence>
    </xsd:extension>
  </xsd:complexContent>
</xsd:complexType>

Commission

Description:

A type describing the commission that will be charged for each of the hedge transactions.

Figure:

Contents:

commissionDenomination (exactly one occurrence; of the type CommissionDenominationEnum)

commissionAmount (exactly one occurrence; of the type xsd:decimal)

currency (zero or one occurrence; of the type Currency)

commissionPerTrade (zero or one occurrence; of the type xsd:decimal)

fxRate (zero or more occurrences; of the type FxRate)

Used by:

Schema Fragment:

<xsd:complexType name="Commission">
  <xsd:annotation>
    <xsd:documentation xml:lang="en">
      A type describing the commission that will be charged for each of
      the hedge transactions.
    </xsd:documentation>
  </xsd:annotation>
  <xsd:sequence>
    <xsd:element name="commissionDenomination" type="CommissionDenominationEnum">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          The type of units used to express a commission.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    <xsd:element name="commissionAmount" type="xsd:decimal">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          The commission amount, expressed in the way indicated by the
          commissionType element.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    <xsd:element name="currency" type="Currency" minOccurs="0">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          The currency in which an amount is denominated.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    <xsd:element name="commissionPerTrade" type="xsd:decimal" minOccurs="0">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          The total commission per trade.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    <xsd:element name="fxRate" type="FxRate" minOccurs="0" maxOccurs="unbounded">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          FX Rates that have been used to convert commissions to a
          single currency.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
  </xsd:sequence>
</xsd:complexType>

ConstituentWeight

Description:

A type describing the weight of each of the underlyer constituent within the basket, either in absolute or relative terms.

Figure:

Contents:


There can be one occurance of the following structure; Choice of either

Or

Or


Used by:

Schema Fragment:

<xsd:complexType name="ConstituentWeight">
  <xsd:annotation>
    <xsd:documentation xml:lang="en">
      A type describing the weight of each of the underlyer constituent
      within the basket, either in absolute or relative terms.
    </xsd:documentation>
  </xsd:annotation>
  <xsd:choice>
    <xsd:element name="openUnits" type="xsd:decimal">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          The number of units (index or securities) that constitute the
          underlyer of the swap. In the case of a basket swap, this
          element is used to reference both the number of basket units,
          and the number of each asset components of the basket when
          these are expressed in absolute terms.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    <xsd:element name="basketPercentage" type="RestrictedPercentage">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          The relative weight of each respective basket constituent,
          expressed in percentage. A basket percentage of 5% would be
          represented as 0.05.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    <xsd:element name="basketAmount" type="Money">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          The relative weight of each respective basket constituent,
          expressed as a monetary amount.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
  </xsd:choice>
</xsd:complexType>

ConvertibleBond

Description:

Figure:

Contents:

Inherited element(s): (This definition inherits the content defined by the type Bond)

underlyingEquity (exactly one occurrence; of the type EquityAsset)

Used by:

Extension of:

Schema Fragment:

<xsd:complexType name="ConvertibleBond">
  <xsd:complexContent>
    <xsd:extension base="Bond">
      <xsd:sequence>
        <xsd:element name="underlyingEquity" type="EquityAsset">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              Specifies the equity in which the convertible bond can be
              converted.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
      </xsd:sequence>
    </xsd:extension>
  </xsd:complexContent>
</xsd:complexType>

CouponType

Description:

Defines a scheme of values for specifiying if the bond has a variable coupon, step-up/down coupon or a zero-coupon.

Figure:

Contents:

Inherited element(s): (This definition inherits the content defined by the type xsd:normalizedString)

Attribute: couponTypeScheme (xsd:anyURI)

Used by:

Schema Fragment:

<xsd:complexType name="CouponType">
  <xsd:annotation>
    <xsd:documentation xml:lang="en">
      Defines a scheme of values for specifiying if the bond has a
      variable coupon, step-up/down coupon or a zero-coupon.
    </xsd:documentation>
  </xsd:annotation>
  <xsd:simpleContent>
    <xsd:extension base="xsd:normalizedString">
      <xsd:attribute name="couponTypeScheme" type="xsd:anyURI" default="http://www.fpml.org/coding-scheme/coupon-type-1-0"/>
    </xsd:extension>
  </xsd:simpleContent>
</xsd:complexType>

Deposit

Description:

Figure:

Contents:

Inherited element(s): (This definition inherits the content defined by the type UnderlyingAsset)

term (exactly one occurrence; of the type Interval)

paymentFrequency (zero or one occurrence; of the type Interval)

dayCountFraction (zero or one occurrence; of the type DayCountFraction)

Used by:

Extension of:

Schema Fragment:

<xsd:complexType name="Deposit">
  <xsd:complexContent>
    <xsd:extension base="UnderlyingAsset">
      <xsd:sequence>
        <xsd:element name="term" type="Interval">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              Specifies the term of the deposit, e.g. 5Y.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="paymentFrequency" type="Interval" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              Specifies the frequency at which the deposit pays, e.g.
              6M.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="dayCountFraction" type="DayCountFraction" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              The day count basis for the deposit.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
      </xsd:sequence>
    </xsd:extension>
  </xsd:complexContent>
</xsd:complexType>

DividendPayout

Description:

A type describing the dividend payout ratio associated with an equity underlyer. In certain cases the actual ratio is not known on trade inception, and only general conditions are then specified.

Figure:

Contents:


There can be one occurance of the following structure; Choice of either

Or


dividendPayment (zero or more occurrences; of the type PendingPayment)

Used by:

Schema Fragment:

<xsd:complexType name="DividendPayout">
  <xsd:annotation>
    <xsd:documentation xml:lang="en">
      A type describing the dividend payout ratio associated with an
      equity underlyer. In certain cases the actual ratio is not known
      on trade inception, and only general conditions are then
      specified.
    </xsd:documentation>
  </xsd:annotation>
  <xsd:sequence>
    <xsd:choice>
      <xsd:element name="dividendPayoutRatio" type="xsd:decimal">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            Specifies the actual dividend payout ratio associated with
            the equity underlyer.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="dividendPayoutConditions" type="xsd:string">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            Specifies the dividend payout conditions that will be
            applied in the case where the actual ratio is not known,
            typically because of regulatory or legal uncertainties.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:choice>
    <xsd:element name="dividendPayment" type="PendingPayment" minOccurs="0" maxOccurs="unbounded">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          The next upcoming dividend payment or payments.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
  </xsd:sequence>
</xsd:complexType>

EquityAsset

Description:

Figure:

Contents:

Inherited element(s): (This definition inherits the content defined by the type ExchangeTraded)

Used by:

Extension of:

Schema Fragment:

<xsd:complexType name="EquityAsset">
  <xsd:complexContent>
    <xsd:extension base="ExchangeTraded"/>
  </xsd:complexContent>
</xsd:complexType>

ExchangeTraded

Description:

Figure:

Contents:

Inherited element(s): (This definition inherits the content defined by the type UnderlyingAsset)

relatedExchangeId (zero or more occurrences; of the type ExchangeId)

optionsExchangeId (zero or more occurrences; of the type ExchangeId)

Used by:

Extension of:

Derived Types:

Schema Fragment:

<xsd:complexType name="ExchangeTraded" abstract="true">
  <xsd:complexContent>
    <xsd:extension base="UnderlyingAsset">
      <xsd:sequence>
        <xsd:group ref="ExchangeIdentifier.model"/>
      </xsd:sequence>
    </xsd:extension>
  </xsd:complexContent>
</xsd:complexType>

ExchangeTradedContract

Description:

A type an Exchange Traded Contract

Figure:

Contents:

Inherited element(s): (This definition inherits the content defined by the type ExchangeTraded)

multiplier (zero or one occurrence; of the type xsd:integer)

contractReference (zero or one occurrence; of the type xsd:string)

expirationDate (zero or one occurrence; of the type AdjustableOrRelativeDate)

Used by:

Extension of:

Schema Fragment:

<xsd:complexType name="ExchangeTradedContract">
  <xsd:annotation>
    <xsd:documentation xml:lang="en">
      A type an Exchange Traded Contract
    </xsd:documentation>
  </xsd:annotation>
  <xsd:complexContent>
    <xsd:extension base="ExchangeTraded">
      <xsd:sequence>
        <xsd:element name="multiplier" type="xsd:integer" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              Specifies the contract multiplier that can be associated
              with the number of units.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="contractReference" type="xsd:string" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              Specifies the contract that can be referenced, besides
              the undelyer type.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="expirationDate" type="AdjustableOrRelativeDate" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              The date when the contract expires.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
      </xsd:sequence>
    </xsd:extension>
  </xsd:complexContent>
</xsd:complexType>

ExchangeTradedFund

Description:

Figure:

Contents:

Inherited element(s): (This definition inherits the content defined by the type ExchangeTraded)

fundManager (zero or one occurrence; of the type xsd:string)

Used by:

Extension of:

Schema Fragment:

<xsd:complexType name="ExchangeTradedFund">
  <xsd:complexContent>
    <xsd:extension base="ExchangeTraded">
      <xsd:sequence>
        <xsd:element name="fundManager" type="xsd:string" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              Specifies the fund manager that is in charge of the fund.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
      </xsd:sequence>
    </xsd:extension>
  </xsd:complexContent>
</xsd:complexType>

Future

Description:

Figure:

Contents:

Inherited element(s): (This definition inherits the content defined by the type ExchangeTraded)

multiplier (zero or one occurrence; of the type xsd:integer)

futureContractReference (zero or one occurrence; of the type xsd:string)

maturity (zero or one occurrence; of the type xsd:date)

Used by:

Extension of:

Schema Fragment:

<xsd:complexType name="Future">
  <xsd:complexContent>
    <xsd:extension base="ExchangeTraded">
      <xsd:sequence>
        <xsd:element name="multiplier" type="xsd:integer" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              Specifies the contract multiplier that can be associated
              with the number of units.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="futureContractReference" type="xsd:string" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              Specifies the future contract that can be referenced,
              besides the equity or index reference defined as part of
              the UnderlyerAsset type.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="maturity" type="xsd:date" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              The date when the future contract expires.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
      </xsd:sequence>
    </xsd:extension>
  </xsd:complexContent>
</xsd:complexType>

FutureId

Description:

A type defining a short form unique identifier for a future contract.

Figure:

Contents:

Inherited element(s): (This definition inherits the content defined by the type xsd:normalizedString)

Attribute: futureIdScheme (xsd:anyURI)

Used by:

Schema Fragment:

<xsd:complexType name="FutureId">
  <xsd:annotation>
    <xsd:documentation xml:lang="en">
      A type defining a short form unique identifier for a future
      contract.
    </xsd:documentation>
  </xsd:annotation>
  <xsd:simpleContent>
    <xsd:extension base="xsd:normalizedString">
      <xsd:attribute name="futureIdScheme" type="xsd:anyURI"/>
    </xsd:extension>
  </xsd:simpleContent>
</xsd:complexType>

FxConversion

Description:

Figure:

Contents:


There can be one occurance of the following structure; Choice of either

Or


Used by:

Schema Fragment:

<xsd:complexType name="FxConversion">
  <xsd:choice>
    <xsd:element name="amountRelativeTo" type="AmountReference"/>
    <xsd:element name="fxRate" type="FxRate" maxOccurs="unbounded">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          Specifies a currency conversion rate.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
  </xsd:choice>
</xsd:complexType>

FxRateAsset

Description:

Figure:

Contents:

Inherited element(s): (This definition inherits the content defined by the type UnderlyingAsset)

quotedCurrencyPair (exactly one occurrence; of the type QuotedCurrencyPair)

rateSource (zero or one occurrence; of the type FxSpotRateSource)

Used by:

Extension of:

Schema Fragment:

<xsd:complexType name="FxRateAsset">
  <xsd:complexContent>
    <xsd:extension base="UnderlyingAsset">
      <xsd:sequence>
        <xsd:element name="quotedCurrencyPair" type="QuotedCurrencyPair">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              Defines the two currencies for an FX trade and the
              quotation relationship between the two currencies.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="rateSource" type="FxSpotRateSource" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              Defines the source of the FX rate.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
      </xsd:sequence>
    </xsd:extension>
  </xsd:complexContent>
</xsd:complexType>

Index

Description:

Figure:

Contents:

Inherited element(s): (This definition inherits the content defined by the type ExchangeTraded)

futureId (zero or one occurrence; of the type FutureId)

Used by:

Extension of:

Schema Fragment:

<xsd:complexType name="Index">
  <xsd:complexContent>
    <xsd:extension base="ExchangeTraded">
      <xsd:sequence>
        <xsd:element name="futureId" type="FutureId" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              A short form unique identifier for the reference future
              contract in the case of an index underlyer.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
      </xsd:sequence>
    </xsd:extension>
  </xsd:complexContent>
</xsd:complexType>

MutualFund

Description:

Figure:

Contents:

Inherited element(s): (This definition inherits the content defined by the type UnderlyingAsset)

openEndedFund (zero or one occurrence; of the type xsd:boolean)

fundManager (zero or one occurrence; of the type xsd:string)

Used by:

Extension of:

Schema Fragment:

<xsd:complexType name="MutualFund">
  <xsd:complexContent>
    <xsd:extension base="UnderlyingAsset">
      <xsd:sequence>
        <xsd:element name="openEndedFund" type="xsd:boolean" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              Boolean indicator to specify whether the mutual fund is
              an open-ended mutual fund.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="fundManager" type="xsd:string" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              Specifies the fund manager that is in charge of the fund.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
      </xsd:sequence>
    </xsd:extension>
  </xsd:complexContent>
</xsd:complexType>

PendingPayment

Description:

Figure:

Contents:

paymentDate (exactly one occurrence; of the type xsd:date)

amount (exactly one occurrence; of the type Money)

accruedInterest (zero or one occurrence; of the type Money)

Used by:

Schema Fragment:

<xsd:complexType name="PendingPayment">
  <xsd:annotation>
    <xsd:documentation>
      A structure representing a pending dividend or coupon payment.
    </xsd:documentation>
  </xsd:annotation>
  <xsd:sequence>
    <xsd:element name="paymentDate" type="xsd:date">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          The date that the dividend or coupon is due.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    <xsd:element name="amount" type="Money">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          The amount of the dividend or coupon payment. Value of
          dividends or coupon between ex and pay date. Stock: if we are
          between ex-date and pay-date and the dividend is payable
          under the swap, then this should be the ex-div amount * # of
          securities. Bond: regardless of where we are vis-a-vis
          resets: (coupon % * face of bonds on swap * (bond day count
          fraction using days last coupon pay date of the bond through
          today).
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    <xsd:element name="accruedInterest" type="Money" minOccurs="0">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          Accrued interest on the dividend or coupon payment. When the
          TRS is structured to pay a dividend or coupon on reset after
          payable date, you may earn interest on these amounts. This
          field indicates the interest accrued on dividend/coupon from
          pay date to statement date. This will only apply to a handful
          of agreements where dividendss are held to the next reset AND
          you receive/pay interest on unpaid amounts.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
  </xsd:sequence>
</xsd:complexType>

Price

Description:

A type describing the strike price.

Figure:

Contents:

commission (zero or one occurrence; of the type Commission)


There can be one occurance of the following structure; Choice of either

Or


cleanNetPrice (zero or one occurrence; of the type xsd:decimal)

quotationCharacteristics (zero or one occurrence; of the type QuotationCharacteristics)

Used by:

Derived Types:

Schema Fragment:

<xsd:complexType name="Price">
  <xsd:annotation>
    <xsd:documentation xml:lang="en">
      A type describing the strike price.
    </xsd:documentation>
  </xsd:annotation>
  <xsd:sequence>
    <xsd:element name="commission" type="Commission" minOccurs="0">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          This optional component specifies the commission to be
          charged for executing the hedge transactions.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    <xsd:choice>
      <xsd:element name="determinationMethod" type="DeterminationMethod">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            Specifies the method according to which an amount or a date
            is determined.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="amountRelativeTo" type="AmountReference">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            The href attribute value will be a pointer style reference
            to the element or component elsewhere in the document where
            the anchor amount is defined.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:sequence>
        <xsd:element name="grossPrice" type="ActualPrice" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              Specifies the price of the underlyer, before commissions.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="netPrice" type="ActualPrice">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              Specifies the price of the underlyer, net of commissions.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="accruedInterestPrice" type="xsd:decimal" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              Specifies the accrued interest that are part of the dirty
              price in the case of a fixed income security or a
              convertible bond. Expressed in percentage of the
              notional.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="fxConversion" type="FxConversion" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              Specifies the currency conversion rate that applies to an
              amount. This rate can either be defined elsewhere in the
              document (case of a quanto swap), or explicitly described
              through this component.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
      </xsd:sequence>
    </xsd:choice>
    <xsd:element name="cleanNetPrice" type="xsd:decimal" minOccurs="0">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          The net price excluding accrued interest. The "Dirty Price"
          for bonds is put in the "netPrice" element, which includes
          accrued interest. Thus netPrice - cleanNetPrice =
          accruedInterest. The currency and price expression for this
          field are the same as those for the (dirty) netPrice.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    <xsd:element name="quotationCharacteristics" type="QuotationCharacteristics" minOccurs="0">
      <xsd:annotation>
        <xsd:documentation>
          Allows information about how the price was quoted to be
          provided.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
  </xsd:sequence>
</xsd:complexType>

RateIndex

Description:

Figure:

Contents:

Inherited element(s): (This definition inherits the content defined by the type UnderlyingAsset)

floatingRateIndex (exactly one occurrence; of the type FloatingRateIndex)

term (exactly one occurrence; of the type Interval)

paymentFrequency (zero or one occurrence; of the type Interval)

dayCountFraction (zero or one occurrence; of the type DayCountFraction)

Used by:

Extension of:

Schema Fragment:

<xsd:complexType name="RateIndex">
  <xsd:complexContent>
    <xsd:extension base="UnderlyingAsset">
      <xsd:sequence>
        <xsd:element name="floatingRateIndex" type="FloatingRateIndex"/>
        <xsd:element name="term" type="Interval">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              Specifies the term of the simple swap, e.g. 5Y.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="paymentFrequency" type="Interval" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              Specifies the frequency at which the index pays, e.g. 6M.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="dayCountFraction" type="DayCountFraction" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              The day count basis for the index.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
      </xsd:sequence>
    </xsd:extension>
  </xsd:complexContent>
</xsd:complexType>

SimpleCreditDefaultSwap

Description:

Figure:

Contents:

Inherited element(s): (This definition inherits the content defined by the type UnderlyingAsset)


There can be one occurance of the following structure; Choice of either

Or


term (exactly one occurrence; of the type Interval)

paymentFrequency (zero or one occurrence; of the type Interval)

Used by:

Extension of:

Schema Fragment:

<xsd:complexType name="SimpleCreditDefaultSwap">
  <xsd:complexContent>
    <xsd:extension base="UnderlyingAsset">
      <xsd:sequence>
        <xsd:group ref="CreditEntity.model">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              The reference entity, index, etc. upon which the CDS is
              based.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:group>
        <xsd:element name="term" type="Interval">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              Specifies the term of the simple CD swap, e.g. 5Y.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="paymentFrequency" type="Interval" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              Specifies the frequency at which the swap pays, e.g. 6M.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
      </xsd:sequence>
    </xsd:extension>
  </xsd:complexContent>
</xsd:complexType>

SimpleFra

Description:

Figure:

Contents:

Inherited element(s): (This definition inherits the content defined by the type UnderlyingAsset)

startTerm (exactly one occurrence; of the type Interval)

endTerm (exactly one occurrence; of the type Interval)

dayCountFraction (zero or one occurrence; of the type DayCountFraction)

Used by:

Extension of:

Schema Fragment:

<xsd:complexType name="SimpleFra">
  <xsd:complexContent>
    <xsd:extension base="UnderlyingAsset">
      <xsd:sequence>
        <xsd:element name="startTerm" type="Interval">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              Specifies the start term of the simple fra, e.g. 3M.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="endTerm" type="Interval">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              Specifies the end term of the simple fra, e.g. 9M.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="dayCountFraction" type="DayCountFraction" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              The day count basis for the FRA.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
      </xsd:sequence>
    </xsd:extension>
  </xsd:complexContent>
</xsd:complexType>

SimpleIRSwap

Description:

Figure:

Contents:

Inherited element(s): (This definition inherits the content defined by the type UnderlyingAsset)

term (exactly one occurrence; of the type Interval)

paymentFrequency (zero or one occurrence; of the type Interval)

dayCountFraction (zero or one occurrence; of the type DayCountFraction)

Used by:

Extension of:

Schema Fragment:

<xsd:complexType name="SimpleIRSwap">
  <xsd:complexContent>
    <xsd:extension base="UnderlyingAsset">
      <xsd:sequence>
        <xsd:element name="term" type="Interval">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              Specifies the term of the simple swap, e.g. 5Y.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="paymentFrequency" type="Interval" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              Specifies the frequency at which the swap pays, e.g. 6M.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="dayCountFraction" type="DayCountFraction" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              The day count basis for the swap.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
      </xsd:sequence>
    </xsd:extension>
  </xsd:complexContent>
</xsd:complexType>

SingleUnderlyer

Description:

A type describing the single underlyer of a swap.

Figure:

Contents:

underlyingAsset (exactly one occurrence; of the type Asset)

openUnits (zero or one occurrence; of the type xsd:decimal)

dividendPayout (zero or one occurrence; of the type DividendPayout)

couponPayment (zero or one occurrence; of the type PendingPayment)

Used by:

Schema Fragment:

<xsd:complexType name="SingleUnderlyer">
  <xsd:annotation>
    <xsd:documentation xml:lang="en">
      A type describing the single underlyer of a swap.
    </xsd:documentation>
  </xsd:annotation>
  <xsd:sequence>
    <xsd:element ref="underlyingAsset"/>
    <xsd:element name="openUnits" type="xsd:decimal" minOccurs="0">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          The number of units (index or securities) that constitute the
          underlyer of the swap. In the case of a basket swap, this
          element is used to reference both the number of basket units,
          and the number of each asset components of the basket when
          these are expressed in absolute terms.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    <xsd:element name="dividendPayout" type="DividendPayout" minOccurs="0">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          Specifies the dividend payout ratio associated with an equity
          underlyer. A basket swap can have different payout ratios
          across the various underlying constituents. In certain cases
          the actual ratio is not known on trade inception, and only
          general conditions are then specified.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    <xsd:element name="couponPayment" type="PendingPayment" minOccurs="0">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          The next upcoming coupon payment.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
  </xsd:sequence>
</xsd:complexType>

Underlyer

Description:

A type describing the whole set of possible underlyers: single underlyers or multiple underlyers, each of these having either security or index components.

Figure:

Contents:


There can be one occurance of the following structure; Choice of either

Or


Used by:

Schema Fragment:

<xsd:complexType name="Underlyer">
  <xsd:annotation>
    <xsd:documentation xml:lang="en">
      A type describing the whole set of possible underlyers: single
      underlyers or multiple underlyers, each of these having either
      security or index components.
    </xsd:documentation>
  </xsd:annotation>
  <xsd:choice>
    <xsd:element name="singleUnderlyer" type="SingleUnderlyer">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          Describes the swap's underlyer when it has only one asset
          component.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    <xsd:element name="basket" type="Basket">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          Describes the swap's underlyer when it has multiple asset
          components.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
  </xsd:choice>
</xsd:complexType>

UnderlyingAsset

Description:

A type describing the basic components of a security of index underlyer.

Figure:

Contents:

Inherited element(s): (This definition inherits the content defined by the type Asset)

currency (zero or one occurrence; of the type Currency)

exchangeId (zero or one occurrence; of the type ExchangeId)

clearanceSystem (zero or one occurrence; of the type ClearanceSystem)

definition (zero or one occurrence; of the type ProductReference)

Used by:

Extension of:

Derived Types:

Schema Fragment:

<xsd:complexType name="UnderlyingAsset" abstract="true">
  <xsd:annotation>
    <xsd:documentation xml:lang="en">
      A type describing the basic components of a security of index
      underlyer.
    </xsd:documentation>
  </xsd:annotation>
  <xsd:complexContent>
    <xsd:extension base="Asset">
      <xsd:sequence>
        <xsd:element name="currency" type="Currency" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              The currency in which an amount is denominated.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="exchangeId" type="ExchangeId" minOccurs="0"/>
        <xsd:element name="clearanceSystem" type="ClearanceSystem" minOccurs="0"/>
        <xsd:element name="definition" type="ProductReference" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              An optional reference to a full FpML product that defines
              the simple product in greater detail. In case of
              inconsistency between the terms of the simple product and
              those of the detailed definition, the values in the
              simple product override those in the detailed definition.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
      </xsd:sequence>
    </xsd:extension>
  </xsd:complexContent>
</xsd:complexType>

Global Elements

bond

Description:

Defines the underlying asset when it is a bond.

Figure:

Contents:

Element bond is defined by the complex type Bond

Used by:

Schema Fragment:

<xsd:element name="bond" type="Bond" substitutionGroup="underlyingAsset">
  <xsd:annotation>
    <xsd:documentation xml:lang="en">
      Defines the underlying asset when it is a bond.
    </xsd:documentation>
  </xsd:annotation>
</xsd:element>

cash

Description:

Defines a simple underlying asset type that is a cash payment. Used for specifying discounting factors for future cash flows in the pricing and risk model.

Figure:

Contents:

Element cash is defined by the complex type Cash

Used by:

Schema Fragment:

<xsd:element name="cash" type="Cash" substitutionGroup="underlyingAsset">
  <xsd:annotation>
    <xsd:documentation xml:lang="en">
      Defines a simple underlying asset type that is a cash payment.
      Used for specifying discounting factors for future cash flows in
      the pricing and risk model.
    </xsd:documentation>
  </xsd:annotation>
</xsd:element>

convertibleBond

Description:

Defines the underlying asset when it is a convertible bond.

Figure:

Contents:

Element convertibleBond is defined by the complex type ConvertibleBond

Used by:

Schema Fragment:

<xsd:element name="convertibleBond" type="ConvertibleBond" substitutionGroup="underlyingAsset">
  <xsd:annotation>
    <xsd:documentation xml:lang="en">
      Defines the underlying asset when it is a convertible bond.
    </xsd:documentation>
  </xsd:annotation>
</xsd:element>

deposit

Description:

Defines a simple underlying asset that is a term deposit.

Figure:

Contents:

Element deposit is defined by the complex type Deposit

Used by:

Schema Fragment:

<xsd:element name="deposit" type="Deposit" substitutionGroup="underlyingAsset">
  <xsd:annotation>
    <xsd:documentation xml:lang="en">
      Defines a simple underlying asset that is a term deposit.
    </xsd:documentation>
  </xsd:annotation>
</xsd:element>

equity

Description:

Defines the underlying asset when it is a listed equity.

Figure:

Contents:

Element equity is defined by the complex type EquityAsset

Used by:

Schema Fragment:

<xsd:element name="equity" type="EquityAsset" substitutionGroup="underlyingAsset">
  <xsd:annotation>
    <xsd:documentation xml:lang="en">
      Defines the underlying asset when it is a listed equity.
    </xsd:documentation>
  </xsd:annotation>
</xsd:element>

exchangeTradedFund

Description:

Defines the underlying asset when it is an exchange-traded fund.

Figure:

Contents:

Element exchangeTradedFund is defined by the complex type ExchangeTradedFund

Used by:

Schema Fragment:

<xsd:element name="exchangeTradedFund" type="ExchangeTradedFund" substitutionGroup="underlyingAsset">
  <xsd:annotation>
    <xsd:documentation xml:lang="en">
      Defines the underlying asset when it is an exchange-traded fund.
    </xsd:documentation>
  </xsd:annotation>
</xsd:element>

future

Description:

Defines the underlying asset when it is a listed future contract.

Figure:

Contents:

Element future is defined by the complex type Future

Used by:

Schema Fragment:

<xsd:element name="future" type="Future" substitutionGroup="underlyingAsset">
  <xsd:annotation>
    <xsd:documentation xml:lang="en">
      Defines the underlying asset when it is a listed future contract.
    </xsd:documentation>
  </xsd:annotation>
</xsd:element>

fxRate

Description:

Defines a simple underlying asset type that is an FX rate. Used for specifying FX rates in the pricing and risk model.

Figure:

Contents:

Element fxRate is defined by the complex type FxRateAsset

Used by:

Schema Fragment:

<xsd:element name="fxRate" type="FxRateAsset" substitutionGroup="underlyingAsset">
  <xsd:annotation>
    <xsd:documentation xml:lang="en">
      Defines a simple underlying asset type that is an FX rate. Used
      for specifying FX rates in the pricing and risk model.
    </xsd:documentation>
  </xsd:annotation>
</xsd:element>

index

Description:

Defines the underlying asset when it is a financial index.

Figure:

Contents:

Element index is defined by the complex type Index

Used by:

Schema Fragment:

<xsd:element name="index" type="Index" substitutionGroup="underlyingAsset">
  <xsd:annotation>
    <xsd:documentation xml:lang="en">
      Defines the underlying asset when it is a financial index.
    </xsd:documentation>
  </xsd:annotation>
</xsd:element>

mutualFund

Description:

Defines the underlying asset when it is a mutual fund.

Figure:

Contents:

Element mutualFund is defined by the complex type MutualFund

Used by:

Schema Fragment:

<xsd:element name="mutualFund" type="MutualFund" substitutionGroup="underlyingAsset">
  <xsd:annotation>
    <xsd:documentation xml:lang="en">
      Defines the underlying asset when it is a mutual fund.
    </xsd:documentation>
  </xsd:annotation>
</xsd:element>

rateIndex

Description:

Defines a simple underlying asset that is an interest rate index. Used for specifying benchmark assets in the market environment in the pricing and risk model.

Figure:

Contents:

Element rateIndex is defined by the complex type RateIndex

Used by:

Schema Fragment:

<xsd:element name="rateIndex" type="RateIndex" substitutionGroup="underlyingAsset">
  <xsd:annotation>
    <xsd:documentation xml:lang="en">
      Defines a simple underlying asset that is an interest rate index.
      Used for specifying benchmark assets in the market environment in
      the pricing and risk model.
    </xsd:documentation>
  </xsd:annotation>
</xsd:element>

simpleCreditDefaultSwap

Description:

Defines a simple underlying asset that is a credit default swap.

Figure:

Contents:

Element simpleCreditDefaultSwap is defined by the complex type SimpleCreditDefaultSwap

Used by:

Schema Fragment:

<xsd:element name="simpleCreditDefaultSwap" type="SimpleCreditDefaultSwap" substitutionGroup="underlyingAsset">
  <xsd:annotation>
    <xsd:documentation xml:lang="en">
      Defines a simple underlying asset that is a credit default swap.
    </xsd:documentation>
  </xsd:annotation>
</xsd:element>

simpleFra

Description:

Defines a simple underlying asset that is a forward rate agreement.

Figure:

Contents:

Element simpleFra is defined by the complex type SimpleFra

Used by:

Schema Fragment:

<xsd:element name="simpleFra" type="SimpleFra" substitutionGroup="underlyingAsset">
  <xsd:annotation>
    <xsd:documentation xml:lang="en">
      Defines a simple underlying asset that is a forward rate
      agreement.
    </xsd:documentation>
  </xsd:annotation>
</xsd:element>

simpleIrSwap

Description:

Defines a simple underlying asset that is a swap.

Figure:

Contents:

Element simpleIrSwap is defined by the complex type SimpleIRSwap

Used by:

Schema Fragment:

<xsd:element name="simpleIrSwap" type="SimpleIRSwap" substitutionGroup="underlyingAsset">
  <xsd:annotation>
    <xsd:documentation xml:lang="en">
      Defines a simple underlying asset that is a swap.
    </xsd:documentation>
  </xsd:annotation>
</xsd:element>

underlyingAsset

Description:

Define the underlying asset when it is a listed security.

Figure:

Contents:

Element underlyingAsset is defined by the complex type Asset

Used by:

Substituted by:

Schema Fragment:

<xsd:element name="underlyingAsset" type="Asset" abstract="true">
  <xsd:annotation>
    <xsd:documentation xml:lang="en">
      Define the underlying asset when it is a listed security.
    </xsd:documentation>
  </xsd:annotation>
</xsd:element>

Groups

BasketIdentifier.model

Description:

A group that specifies a name and an identifier for a given basket.

Figure:

Contents:


There can be one occurance of the following structure;

Used by:

Schema Fragment:

<xsd:group name="BasketIdentifier.model">
  <xsd:annotation>
    <xsd:documentation xml:lang="en">
      A group that specifies a name and an identifier for a given
      basket.
    </xsd:documentation>
  </xsd:annotation>
  <xsd:choice>
    <xsd:sequence>
      <xsd:element name="basketName" type="BasketName">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            The name of the basket expressed as a free format string.
            FpML does not define usage rules for this element.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="basketId" type="BasketId" minOccurs="0" maxOccurs="unbounded">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            A CDS basket identifier
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
    <xsd:sequence>
      <xsd:element name="basketId" type="BasketId" maxOccurs="unbounded">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            A CDS basket identifier
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
  </xsd:choice>
</xsd:group>

CreditEntity.model

Description:

An item which has credit characteristics that can be modeled, e.g. a firm, index, or region

Figure:

Contents:


There can be one occurance of the following structure; Choice of either

Or


Used by:

Schema Fragment:

<xsd:group name="CreditEntity.model">
  <xsd:annotation>
    <xsd:documentation xml:lang="en">
      An item which has credit characteristics that can be modeled,
      e.g. a firm, index, or region
    </xsd:documentation>
  </xsd:annotation>
  <xsd:choice>
    <xsd:element name="referenceEntity" type="LegalEntity">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          The entity for which this is defined.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    <xsd:element name="creditEntityReference" type="LegalEntityReference">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          An XML reference a credit entity defined elsewhere in the
          document.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
  </xsd:choice>
</xsd:group>

ExchangeIdentifier.model

Description:

Figure:

Contents:

relatedExchangeId (zero or more occurrences; of the type ExchangeId)

optionsExchangeId (zero or more occurrences; of the type ExchangeId)

Used by:

Schema Fragment:

<xsd:group name="ExchangeIdentifier.model">
  <xsd:sequence>
    <xsd:element name="relatedExchangeId" type="ExchangeId" minOccurs="0" maxOccurs="unbounded">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          A short form unique identifier for a related exchange. If the
          element is not present then the exchange shall be the primary
          exchange on which listed futures and options on the
          underlying are listed. The term "Exchange" is assumed to have
          the meaning as defined in the ISDA 2002 Equity Derivatives
          Definitions.
        </xsd:documentation>
        <xsd:documentation xml:lang="de">
          Eindeutiges Kürzel einer relevanten Börse. Fehlt dieses
          Element, gilt die Hauptbörse, an der börsengehandelte
          Futures- und Optionskontrakte auf den Basiswert notiert sind,
          als "Börse" im Sinne der ISDA-Definitionen zu Aktienderivaten
          von 2002.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    <xsd:element name="optionsExchangeId" type="ExchangeId" minOccurs="0" maxOccurs="unbounded">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          A short form unique identifier for an exchange on which the
          reference option contract is listed. This is to address the
          case where the reference exchange for the future is different
          than the one for the option. The options Exchange is
          referenced on share options when Merger Elections are
          selected as Options Exchange Adjustment.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
  </xsd:sequence>
</xsd:group>

Full XML Schema

<xsd:schema targetNamespace="http://www.fpml.org/2005/FpML-4-2" elementFormDefault="qualified" attributeFormDefault="unqualified" version="$Revision: 1478 $">
  <xsd:include schemaLocation="fpml-shared-4-2.xsd"/>
  <xsd:include schemaLocation="fpml-valuation-base-4-2.xsd"/>
  <xsd:complexType name="ActualPrice">
    <xsd:sequence>
      <xsd:element name="currency" type="Currency" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            Specifies the currency associated with the net price. This
            element is not present if the price is expressed in
            percentage terms (as specified through the priceExpression
            element).
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="amount" type="xsd:decimal">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            Specifies the net price amount. In the case of a fixed
            income security or a convertible bond, this price includes
            the accrued interests.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="priceExpression" type="PriceExpressionEnum">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            Specifies whether the price is expressed in absolute or
            relative terms.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="Asset" abstract="true">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">
        A generic type describing the basic components of an asset.
      </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element name="instrumentId" type="InstrumentId" maxOccurs="unbounded"/>
      <xsd:element name="description" type="xsd:string" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            The long name of a security.
          </xsd:documentation>
          <xsd:documentation xml:lang="de">
            Vollständige Wertpapierbezeichnung.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
    <xsd:attribute name="id" type="xsd:ID"/>
  </xsd:complexType>
  <xsd:complexType name="Basket">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">
        A type describing the underlyer features of a basket swap. Each
        of the basket constituents are described through an embedded
        component, the basketConstituentsType.
      </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element name="openUnits" type="xsd:decimal" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            The number of units (index or securities) that constitute
            the underlyer of the swap. In the case of a basket swap,
            this element is used to reference both the number of basket
            units, and the number of each asset components of the
            basket when these are expressed in absolute terms.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="basketConstituent" type="BasketConstituent" maxOccurs="unbounded">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            Describes each of the components of the basket.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="basketDivisor" type="xsd:decimal" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            Specifies the basket divisor amount. This value is normally
            used to adjust the constituent weight for pricing or to
            adjust for dividends, or other corporate actions.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:group ref="BasketIdentifier.model" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            Reuses the group that specifies a name and an identifier
            for a given basket.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:group>
      <xsd:element name="basketCurrency" type="Currency" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            Specifies the currency for this basket.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
    <xsd:attribute name="id" type="xsd:ID" use="optional"/>
  </xsd:complexType>
  <xsd:complexType name="BasketConstituent">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">
        A type describing each of the constituents of a basket swap.
      </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element ref="underlyingAsset"/>
      <xsd:element name="constituentWeight" type="ConstituentWeight" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            Specifies the weight of each of the underlyer constituent
            within the basket, either in absolute or relative terms.
            This is an optional component, as certain swaps do not
            specify a specific weight for each of their basket
            constituents.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="dividendPayout" type="DividendPayout" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            Specifies the dividend payout ratio associated with an
            equity underlyer. A basket swap can have different payout
            ratios across the various underlying constituents. In
            certain cases the actual ratio is not known on trade
            inception, and only general conditions are then specified.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="underlyerPrice" type="Price" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            Specifies the price that is associated with each of the
            basket constituents. This component is optional, as it is
            not absolutely required to accurately describe the
            economics of the trade, considering the price that
            characterizes the equity swap is associated to the leg of
            the trade.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="underlyerNotional" type="Money" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            Specifies the notional (i.e. price * quantity) that is
            associated with each of the basket constituents. This
            component is optional, as it is not absolutely required to
            accurately describe the economics of the trade, considering
            the notional that characterizes the equity swap is
            associated to the leg of the trade.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="underlyerSpread" type="SpreadScheduleReference" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            Provides a link to the spread schedule used for this
            underlyer.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="couponPayment" type="PendingPayment" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            The next upcoming coupon payment.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
    <xsd:attribute name="id" type="xsd:ID" use="optional"/>
  </xsd:complexType>
  <xsd:complexType name="BasketId">
    <xsd:simpleContent>
      <xsd:extension base="xsd:normalizedString">
        <xsd:attribute name="basketIdScheme" type="xsd:anyURI"/>
      </xsd:extension>
    </xsd:simpleContent>
  </xsd:complexType>
  <xsd:complexType name="BasketName">
    <xsd:simpleContent>
      <xsd:extension base="xsd:normalizedString">
        <xsd:attribute name="basketNameScheme" type="xsd:anyURI"/>
      </xsd:extension>
    </xsd:simpleContent>
  </xsd:complexType>
  <xsd:complexType name="Bond">
    <xsd:complexContent>
      <xsd:extension base="ExchangeTraded">
        <xsd:sequence>
          <xsd:element name="issuerName" type="xsd:string" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                Specifies the issuer name of a fixed income security or
                convertible bond.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="seniority" type="CreditSeniority" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                The repayment precedence of a debt instrument.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="couponType" type="CouponType" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                Specifies if the bond has a variable coupon,
                step-up/down coupon or a zero-coupon.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="couponRate" type="xsd:decimal" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                Specifies the coupon rate (expressed in percentage) of
                a fixed income security or convertible bond.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="maturity" type="xsd:date" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                The date when the principal amount of a security
                becomes due and payable.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="parValue" type="xsd:decimal" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                Specifies the nominal amount of a fixed income security
                or convertible bond.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="faceAmount" type="xsd:decimal" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                Specifies the total amount of the issue. Corresponds to
                the par value multiplied by the number of issued
                security.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="paymentFrequency" type="Interval" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                Specifies the frequency at which the bond pays, e.g.
                6M.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="dayCountFraction" type="DayCountFraction" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                The day count basis for the bond.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="Cash">
    <xsd:complexContent>
      <xsd:extension base="Asset">
        <xsd:sequence>
          <xsd:element name="currency" type="Currency">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                The currency in which an amount is denominated.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="Commission">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">
        A type describing the commission that will be charged for each
        of the hedge transactions.
      </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element name="commissionDenomination" type="CommissionDenominationEnum">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            The type of units used to express a commission.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="commissionAmount" type="xsd:decimal">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            The commission amount, expressed in the way indicated by
            the commissionType element.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="currency" type="Currency" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            The currency in which an amount is denominated.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="commissionPerTrade" type="xsd:decimal" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            The total commission per trade.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="fxRate" type="FxRate" minOccurs="0" maxOccurs="unbounded">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            FX Rates that have been used to convert commissions to a
            single currency.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="ConstituentWeight">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">
        A type describing the weight of each of the underlyer
        constituent within the basket, either in absolute or relative
        terms.
      </xsd:documentation>
    </xsd:annotation>
    <xsd:choice>
      <xsd:element name="openUnits" type="xsd:decimal">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            The number of units (index or securities) that constitute
            the underlyer of the swap. In the case of a basket swap,
            this element is used to reference both the number of basket
            units, and the number of each asset components of the
            basket when these are expressed in absolute terms.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="basketPercentage" type="RestrictedPercentage">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            The relative weight of each respective basket constituent,
            expressed in percentage. A basket percentage of 5% would be
            represented as 0.05.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="basketAmount" type="Money">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            The relative weight of each respective basket constituent,
            expressed as a monetary amount.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:choice>
  </xsd:complexType>
  <xsd:complexType name="ConvertibleBond">
    <xsd:complexContent>
      <xsd:extension base="Bond">
        <xsd:sequence>
          <xsd:element name="underlyingEquity" type="EquityAsset">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                Specifies the equity in which the convertible bond can
                be converted.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="CouponType">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">
        Defines a scheme of values for specifiying if the bond has a
        variable coupon, step-up/down coupon or a zero-coupon.
      </xsd:documentation>
    </xsd:annotation>
    <xsd:simpleContent>
      <xsd:extension base="xsd:normalizedString">
        <xsd:attribute name="couponTypeScheme" type="xsd:anyURI" default="http://www.fpml.org/coding-scheme/coupon-type-1-0"/>
      </xsd:extension>
    </xsd:simpleContent>
  </xsd:complexType>
  <xsd:complexType name="Deposit">
    <xsd:complexContent>
      <xsd:extension base="UnderlyingAsset">
        <xsd:sequence>
          <xsd:element name="term" type="Interval">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                Specifies the term of the deposit, e.g. 5Y.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="paymentFrequency" type="Interval" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                Specifies the frequency at which the deposit pays, e.g.
                6M.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="dayCountFraction" type="DayCountFraction" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                The day count basis for the deposit.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="DividendPayout">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">
        A type describing the dividend payout ratio associated with an
        equity underlyer. In certain cases the actual ratio is not
        known on trade inception, and only general conditions are then
        specified.
      </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:choice>
        <xsd:element name="dividendPayoutRatio" type="xsd:decimal">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              Specifies the actual dividend payout ratio associated
              with the equity underlyer.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="dividendPayoutConditions" type="xsd:string">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              Specifies the dividend payout conditions that will be
              applied in the case where the actual ratio is not known,
              typically because of regulatory or legal uncertainties.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
      </xsd:choice>
      <xsd:element name="dividendPayment" type="PendingPayment" minOccurs="0" maxOccurs="unbounded">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            The next upcoming dividend payment or payments.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="EquityAsset">
    <xsd:complexContent>
      <xsd:extension base="ExchangeTraded"/>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="ExchangeTraded" abstract="true">
    <xsd:complexContent>
      <xsd:extension base="UnderlyingAsset">
        <xsd:sequence>
          <xsd:group ref="ExchangeIdentifier.model"/>
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="ExchangeTradedContract">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">
        A type an Exchange Traded Contract
      </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="ExchangeTraded">
        <xsd:sequence>
          <xsd:element name="multiplier" type="xsd:integer" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                Specifies the contract multiplier that can be
                associated with the number of units.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="contractReference" type="xsd:string" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                Specifies the contract that can be referenced, besides
                the undelyer type.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="expirationDate" type="AdjustableOrRelativeDate" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                The date when the contract expires.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="ExchangeTradedFund">
    <xsd:complexContent>
      <xsd:extension base="ExchangeTraded">
        <xsd:sequence>
          <xsd:element name="fundManager" type="xsd:string" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                Specifies the fund manager that is in charge of the
                fund.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="Future">
    <xsd:complexContent>
      <xsd:extension base="ExchangeTraded">
        <xsd:sequence>
          <xsd:element name="multiplier" type="xsd:integer" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                Specifies the contract multiplier that can be
                associated with the number of units.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="futureContractReference" type="xsd:string" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                Specifies the future contract that can be referenced,
                besides the equity or index reference defined as part
                of the UnderlyerAsset type.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="maturity" type="xsd:date" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                The date when the future contract expires.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="FutureId">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">
        A type defining a short form unique identifier for a future
        contract.
      </xsd:documentation>
    </xsd:annotation>
    <xsd:simpleContent>
      <xsd:extension base="xsd:normalizedString">
        <xsd:attribute name="futureIdScheme" type="xsd:anyURI"/>
      </xsd:extension>
    </xsd:simpleContent>
  </xsd:complexType>
  <xsd:complexType name="FxConversion">
    <xsd:choice>
      <xsd:element name="amountRelativeTo" type="AmountReference"/>
      <xsd:element name="fxRate" type="FxRate" maxOccurs="unbounded">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            Specifies a currency conversion rate.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:choice>
  </xsd:complexType>
  <xsd:complexType name="FxRateAsset">
    <xsd:complexContent>
      <xsd:extension base="UnderlyingAsset">
        <xsd:sequence>
          <xsd:element name="quotedCurrencyPair" type="QuotedCurrencyPair">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                Defines the two currencies for an FX trade and the
                quotation relationship between the two currencies.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="rateSource" type="FxSpotRateSource" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                Defines the source of the FX rate.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="Index">
    <xsd:complexContent>
      <xsd:extension base="ExchangeTraded">
        <xsd:sequence>
          <xsd:element name="futureId" type="FutureId" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                A short form unique identifier for the reference future
                contract in the case of an index underlyer.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="MutualFund">
    <xsd:complexContent>
      <xsd:extension base="UnderlyingAsset">
        <xsd:sequence>
          <xsd:element name="openEndedFund" type="xsd:boolean" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                Boolean indicator to specify whether the mutual fund is
                an open-ended mutual fund.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="fundManager" type="xsd:string" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                Specifies the fund manager that is in charge of the
                fund.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="PendingPayment">
    <xsd:annotation>
      <xsd:documentation>
        A structure representing a pending dividend or coupon payment.
      </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element name="paymentDate" type="xsd:date">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            The date that the dividend or coupon is due.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="amount" type="Money">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            The amount of the dividend or coupon payment. Value of
            dividends or coupon between ex and pay date. Stock: if we
            are between ex-date and pay-date and the dividend is
            payable under the swap, then this should be the ex-div
            amount * # of securities. Bond: regardless of where we are
            vis-a-vis resets: (coupon % * face of bonds on swap * (bond
            day count fraction using days last coupon pay date of the
            bond through today).
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="accruedInterest" type="Money" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            Accrued interest on the dividend or coupon payment. When
            the TRS is structured to pay a dividend or coupon on reset
            after payable date, you may earn interest on these amounts.
            This field indicates the interest accrued on
            dividend/coupon from pay date to statement date. This will
            only apply to a handful of agreements where dividendss are
            held to the next reset AND you receive/pay interest on
            unpaid amounts.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="Price">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">
        A type describing the strike price.
      </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element name="commission" type="Commission" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            This optional component specifies the commission to be
            charged for executing the hedge transactions.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:choice>
        <xsd:element name="determinationMethod" type="DeterminationMethod">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              Specifies the method according to which an amount or a
              date is determined.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="amountRelativeTo" type="AmountReference">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              The href attribute value will be a pointer style
              reference to the element or component elsewhere in the
              document where the anchor amount is defined.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:sequence>
          <xsd:element name="grossPrice" type="ActualPrice" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                Specifies the price of the underlyer, before
                commissions.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="netPrice" type="ActualPrice">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                Specifies the price of the underlyer, net of
                commissions.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="accruedInterestPrice" type="xsd:decimal" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                Specifies the accrued interest that are part of the
                dirty price in the case of a fixed income security or a
                convertible bond. Expressed in percentage of the
                notional.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="fxConversion" type="FxConversion" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                Specifies the currency conversion rate that applies to
                an amount. This rate can either be defined elsewhere in
                the document (case of a quanto swap), or explicitly
                described through this component.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:choice>
      <xsd:element name="cleanNetPrice" type="xsd:decimal" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            The net price excluding accrued interest. The "Dirty Price"
            for bonds is put in the "netPrice" element, which includes
            accrued interest. Thus netPrice - cleanNetPrice =
            accruedInterest. The currency and price expression for this
            field are the same as those for the (dirty) netPrice.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="quotationCharacteristics" type="QuotationCharacteristics" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation>
            Allows information about how the price was quoted to be
            provided.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="RateIndex">
    <xsd:complexContent>
      <xsd:extension base="UnderlyingAsset">
        <xsd:sequence>
          <xsd:element name="floatingRateIndex" type="FloatingRateIndex"/>
          <xsd:element name="term" type="Interval">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                Specifies the term of the simple swap, e.g. 5Y.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="paymentFrequency" type="Interval" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                Specifies the frequency at which the index pays, e.g.
                6M.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="dayCountFraction" type="DayCountFraction" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                The day count basis for the index.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="SimpleCreditDefaultSwap">
    <xsd:complexContent>
      <xsd:extension base="UnderlyingAsset">
        <xsd:sequence>
          <xsd:group ref="CreditEntity.model">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                The reference entity, index, etc. upon which the CDS is
                based.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:group>
          <xsd:element name="term" type="Interval">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                Specifies the term of the simple CD swap, e.g. 5Y.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="paymentFrequency" type="Interval" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                Specifies the frequency at which the swap pays, e.g.
                6M.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="SimpleFra">
    <xsd:complexContent>
      <xsd:extension base="UnderlyingAsset">
        <xsd:sequence>
          <xsd:element name="startTerm" type="Interval">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                Specifies the start term of the simple fra, e.g. 3M.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="endTerm" type="Interval">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                Specifies the end term of the simple fra, e.g. 9M.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="dayCountFraction" type="DayCountFraction" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                The day count basis for the FRA.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="SimpleIRSwap">
    <xsd:complexContent>
      <xsd:extension base="UnderlyingAsset">
        <xsd:sequence>
          <xsd:element name="term" type="Interval">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                Specifies the term of the simple swap, e.g. 5Y.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="paymentFrequency" type="Interval" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                Specifies the frequency at which the swap pays, e.g.
                6M.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="dayCountFraction" type="DayCountFraction" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                The day count basis for the swap.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="SingleUnderlyer">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">
        A type describing the single underlyer of a swap.
      </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element ref="underlyingAsset"/>
      <xsd:element name="openUnits" type="xsd:decimal" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            The number of units (index or securities) that constitute
            the underlyer of the swap. In the case of a basket swap,
            this element is used to reference both the number of basket
            units, and the number of each asset components of the
            basket when these are expressed in absolute terms.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="dividendPayout" type="DividendPayout" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            Specifies the dividend payout ratio associated with an
            equity underlyer. A basket swap can have different payout
            ratios across the various underlying constituents. In
            certain cases the actual ratio is not known on trade
            inception, and only general conditions are then specified.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="couponPayment" type="PendingPayment" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            The next upcoming coupon payment.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="Underlyer">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">
        A type describing the whole set of possible underlyers: single
        underlyers or multiple underlyers, each of these having either
        security or index components.
      </xsd:documentation>
    </xsd:annotation>
    <xsd:choice>
      <xsd:element name="singleUnderlyer" type="SingleUnderlyer">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            Describes the swap's underlyer when it has only one asset
            component.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="basket" type="Basket">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            Describes the swap's underlyer when it has multiple asset
            components.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:choice>
  </xsd:complexType>
  <xsd:complexType name="UnderlyingAsset" abstract="true">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">
        A type describing the basic components of a security of index
        underlyer.
      </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="Asset">
        <xsd:sequence>
          <xsd:element name="currency" type="Currency" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                The currency in which an amount is denominated.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="exchangeId" type="ExchangeId" minOccurs="0"/>
          <xsd:element name="clearanceSystem" type="ClearanceSystem" minOccurs="0"/>
          <xsd:element name="definition" type="ProductReference" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">
                An optional reference to a full FpML product that
                defines the simple product in greater detail. In case
                of inconsistency between the terms of the simple
                product and those of the detailed definition, the
                values in the simple product override those in the
                detailed definition.
              </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:element name="bond" type="Bond" substitutionGroup="underlyingAsset">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">
        Defines the underlying asset when it is a bond.
      </xsd:documentation>
    </xsd:annotation>
  </xsd:element>
  <xsd:element name="cash" type="Cash" substitutionGroup="underlyingAsset">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">
        Defines a simple underlying asset type that is a cash payment.
        Used for specifying discounting factors for future cash flows
        in the pricing and risk model.
      </xsd:documentation>
    </xsd:annotation>
  </xsd:element>
  <xsd:element name="convertibleBond" type="ConvertibleBond" substitutionGroup="underlyingAsset">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">
        Defines the underlying asset when it is a convertible bond.
      </xsd:documentation>
    </xsd:annotation>
  </xsd:element>
  <xsd:element name="deposit" type="Deposit" substitutionGroup="underlyingAsset">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">
        Defines a simple underlying asset that is a term deposit.
      </xsd:documentation>
    </xsd:annotation>
  </xsd:element>
  <xsd:element name="equity" type="EquityAsset" substitutionGroup="underlyingAsset">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">
        Defines the underlying asset when it is a listed equity.
      </xsd:documentation>
    </xsd:annotation>
  </xsd:element>
  <xsd:element name="exchangeTradedFund" type="ExchangeTradedFund" substitutionGroup="underlyingAsset">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">
        Defines the underlying asset when it is an exchange-traded
        fund.
      </xsd:documentation>
    </xsd:annotation>
  </xsd:element>
  <xsd:element name="future" type="Future" substitutionGroup="underlyingAsset">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">
        Defines the underlying asset when it is a listed future
        contract.
      </xsd:documentation>
    </xsd:annotation>
  </xsd:element>
  <xsd:element name="fxRate" type="FxRateAsset" substitutionGroup="underlyingAsset">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">
        Defines a simple underlying asset type that is an FX rate. Used
        for specifying FX rates in the pricing and risk model.
      </xsd:documentation>
    </xsd:annotation>
  </xsd:element>
  <xsd:element name="index" type="Index" substitutionGroup="underlyingAsset">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">
        Defines the underlying asset when it is a financial index.
      </xsd:documentation>
    </xsd:annotation>
  </xsd:element>
  <xsd:element name="mutualFund" type="MutualFund" substitutionGroup="underlyingAsset">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">
        Defines the underlying asset when it is a mutual fund.
      </xsd:documentation>
    </xsd:annotation>
  </xsd:element>
  <xsd:element name="rateIndex" type="RateIndex" substitutionGroup="underlyingAsset">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">
        Defines a simple underlying asset that is an interest rate
        index. Used for specifying benchmark assets in the market
        environment in the pricing and risk model.
      </xsd:documentation>
    </xsd:annotation>
  </xsd:element>
  <xsd:element name="simpleCreditDefaultSwap" type="SimpleCreditDefaultSwap" substitutionGroup="underlyingAsset">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">
        Defines a simple underlying asset that is a credit default
        swap.
      </xsd:documentation>
    </xsd:annotation>
  </xsd:element>
  <xsd:element name="simpleFra" type="SimpleFra" substitutionGroup="underlyingAsset">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">
        Defines a simple underlying asset that is a forward rate
        agreement.
      </xsd:documentation>
    </xsd:annotation>
  </xsd:element>
  <xsd:element name="simpleIrSwap" type="SimpleIRSwap" substitutionGroup="underlyingAsset">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">
        Defines a simple underlying asset that is a swap.
      </xsd:documentation>
    </xsd:annotation>
  </xsd:element>
  <xsd:element name="underlyingAsset" type="Asset" abstract="true">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">
        Define the underlying asset when it is a listed security.
      </xsd:documentation>
    </xsd:annotation>
  </xsd:element>
  <xsd:group name="BasketIdentifier.model">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">
        A group that specifies a name and an identifier for a given
        basket.
      </xsd:documentation>
    </xsd:annotation>
    <xsd:choice>
      <xsd:sequence>
        <xsd:element name="basketName" type="BasketName">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              The name of the basket expressed as a free format string.
              FpML does not define usage rules for this element.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="basketId" type="BasketId" minOccurs="0" maxOccurs="unbounded">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              A CDS basket identifier
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
      </xsd:sequence>
      <xsd:sequence>
        <xsd:element name="basketId" type="BasketId" maxOccurs="unbounded">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              A CDS basket identifier
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
      </xsd:sequence>
    </xsd:choice>
  </xsd:group>
  <xsd:group name="CreditEntity.model">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">
        An item which has credit characteristics that can be modeled,
        e.g. a firm, index, or region
      </xsd:documentation>
    </xsd:annotation>
    <xsd:choice>
      <xsd:element name="referenceEntity" type="LegalEntity">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            The entity for which this is defined.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="creditEntityReference" type="LegalEntityReference">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            An XML reference a credit entity defined elsewhere in the
            document.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:choice>
  </xsd:group>
  <xsd:group name="ExchangeIdentifier.model">
    <xsd:sequence>
      <xsd:element name="relatedExchangeId" type="ExchangeId" minOccurs="0" maxOccurs="unbounded">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            A short form unique identifier for a related exchange. If
            the element is not present then the exchange shall be the
            primary exchange on which listed futures and options on the
            underlying are listed. The term "Exchange" is assumed to
            have the meaning as defined in the ISDA 2002 Equity
            Derivatives Definitions.
          </xsd:documentation>
          <xsd:documentation xml:lang="de">
            Eindeutiges Kürzel einer relevanten Börse. Fehlt dieses
            Element, gilt die Hauptbörse, an der börsengehandelte
            Futures- und Optionskontrakte auf den Basiswert notiert
            sind, als "Börse" im Sinne der ISDA-Definitionen zu
            Aktienderivaten von 2002.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="optionsExchangeId" type="ExchangeId" minOccurs="0" maxOccurs="unbounded">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">
            A short form unique identifier for an exchange on which the
            reference option contract is listed. This is to address the
            case where the reference exchange for the future is
            different than the one for the option. The options Exchange
            is referenced on share options when Merger Elections are
            selected as Options Exchange Adjustment.
          </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
  </xsd:group>
</xsd:schema>