FpML Financial product Markup Language
Working Draft 17 April 2002

Interest Rate Derivative Component Definitions

Version: 3.0

This version: http://www.fpml.org/spec/2002/wd-fpml-3-0-2002-04-17

Latest version: http://www.fpml.org/spec/fpml-3-0

Previous version: http://www.fpml.org/spec/2002/wd-fpml-3-0-2002-01-30





Copyright 1999 - 2002. All rights reserved.

Financial Products Markup Language is subject to the FpML Public License.

A copy of this license is available at http://www.fpml.org/documents/license





DTD:wd-fpml-dtd-ird-3-0-2002-04-17.dtd

Entity Definitions

FpML_BulletPayment


Description:

An entity for defining a single known payment between two parties.


Figure:



Contents:


inherited element(s) (this entity inherits the element(s) defined by exactly one occurrence of the entity FpML_Product)
payment (exactly one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_Payment)


Used by:


bulletPayment


DTD Fragment:


<!ENTITY % FpML_BulletPayment "%FpML_Product;, payment">



FpML_Calculation


Description:

An entity for defining the parameters used in the calculation of fixed or floating calculation period amounts.


Figure:



Contents:


Either
Or
Either
Or
dayCountFraction (exactly one occurrence; of type string, an enumerated domain value defined by dayCountFractionScheme)
discounting (zero or one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_Discounting)
compoundingMethod (zero or one occurrence; of type string, an enumerated domain value defined by compoundingMethodScheme)

  • If more than one calculation period contributes to a single payment amount this element specifies whether compounding is applicable, and if so, what compounding method is to be used. This element must only be included when more than one calculation period contributes to a single payment amount.


Used by:


calculation


DTD Fragment:


<!ENTITY % FpML_Calculation "((notionalSchedule | fxLinkedNotionalSchedule) , (fixedRateSchedule | floatingRateCalculation) , dayCountFraction , discounting? , compoundingMethod?)">



FpML_CalculationPeriod


Description:

An entity for defining the parameters used in the calculation of a fixed or floating rate calculation period amount. This entity forms part of the cashflows representation of a swap stream.


Figure:



Contents:


adjustedStartDate (exactly one occurrence; of type date)
adjustedEndDate (exactly one occurrence; of type date)
Either
Or
Either
Or


Used by:


calculationPeriod


DTD Fragment:


<!ENTITY % FpML_CalculationPeriod "adjustedStartDate , adjustedEndDate , (notionalAmount | fxLinkedNotionalAmount) , (floatingRateDefinition | fixedRate)">



FpML_CalculationPeriodAmount


Description:

An entity for defining the parameters used in the calculation of fixed or floating rate calculation period amounts or for specifying a known calculation period amount or known amount schedule.


Figure:



Contents:


Either
Or


Used by:


calculationPeriodAmount


DTD Fragment:


<!ENTITY % FpML_CalculationPeriodAmount "calculation | knownAmountSchedule">



FpML_CalculationPeriodDates


Description:

An entity for defining the parameters used to generate the calculation periods dates schedule, including the specification of any initial or final stub calculation periods. A calculation period schedule consists of an optional initial stub calculation period, one or more regular calculation periods and an optional final stub calculation period. In the absence of any initial or final stub calculation periods, the regular part of the calculation period schedule is assumed to be between the effective date and the termination date. No implicit stubs are allowed, i.e. stubs must be explicitly specified using an appropriate combination of firstPeriodStartDate, firstRegularPeriodStartDate and lastRegularPeriodEndDate.


Figure:



Contents:


effectiveDate (exactly one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_AdjustableDate)
terminationDate (exactly one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_AdjustableDate)
calculationPeriodDatesAdjustments (exactly one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_BusinessDayAdjustments)
firstPeriodStartDate (zero or one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_AdjustableDate)
firstRegularPeriodStartDate (zero or one occurrence; of type date)
lastRegularPeriodEndDate (zero or one occurrence; of type date)
calculationPeriodFrequency (exactly one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_CalculationPeriodFrequency)


Used by:


calculationPeriodDates


DTD Fragment:


<!ENTITY % FpML_CalculationPeriodDates "effectiveDate , terminationDate , calculationPeriodDatesAdjustments , firstPeriodStartDate? , firstRegularPeriodStartDate? , lastRegularPeriodEndDate? , calculationPeriodFrequency">



FpML_CancelableProvision


Description:

An entity to define the the right for a party to cancel a swap transaction on the specified exercise dates. This provision is for 'walkaway' cancellation (ie the fair value of the swap is not paid). A fee on to be paid on exercise can be specified.


Figure:



Contents:


buyerPartyReference (exactly one occurrence; an empty element containing an href attribute)
sellerPartyReference (exactly one occurrence; an empty element containing an href attribute)
inherited element(s) (this entity inherits the element(s) defined by exactly one occurrence of the entity FpML_ExerciseSelection)
exerciseNotice (zero or one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_ExerciseNotice)
followUpConfirmation (exactly one occurrence; of type boolean)
cancelableProvisionAdjustedDates (zero or one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_CancelableProvisionAdjustedDates)


Used by:


cancelableProvision


DTD Fragment:


<!ENTITY % FpML_CancelableProvision "buyerPartyReference , sellerPartyReference , (%FpML_ExerciseSelection;) , exerciseNotice? , followUpConfirmation , cancelableProvisionAdjustedDates?">



FpML_CancelableProvisionAdjustedDates


Description:

An entity to define the adjusted dates for a cancellable provision on a swap transaction.


Figure:



Contents:


cancellationEvent (one or more occurrences; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_CancellationEvent)


Used by:


cancelableProvisionAdjustedDates


DTD Fragment:


<!ENTITY % FpML_CancelableProvisionAdjustedDates "cancellationEvent+">



FpML_CancellationEvent


Description:

The adjusted dates for a specific cancellation date - this includes the adjusted exercise date and adjusted termination date


Figure:



Contents:


adjustedExerciseDate (exactly one occurrence; of type date)
adjustedEarlyTerminationDate (exactly one occurrence; of type date)


Used by:


cancellationEvent


DTD Fragment:


<!ENTITY % FpML_CancellationEvent "adjustedExerciseDate , adjustedEarlyTerminationDate">



FpML_CapFloor


Description:

An entity for defining an interest rate cap, floor or cap/floor strategy (eg collar) product. This entity inherits from the base entity, FpML_Product.


Figure:



Contents:


inherited element(s) (this entity inherits the element(s) defined by exactly one occurrence of the entity FpML_Product)
capFloorStream (exactly one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_InterestRateStream)
additionalPayment (zero or more occurrences; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_Fee)


Used by:


capFloor


DTD Fragment:


<!ENTITY % FpML_CapFloor "%FpML_Product;, capFloorStream , additionalPayment*">



FpML_Cashflows


Description:

An entity for defining the cashflow representation of a swap trade.


Figure:



Contents:


cashflowsMatchParameters (exactly one occurrence; of type boolean)
principalExchange (zero or more occurrences; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_PrincipalExchange)
paymentCalculationPeriod (zero or more occurrences; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_PaymentCalculationPeriod)


Used by:


cashflows


DTD Fragment:


<!ENTITY % FpML_Cashflows "cashflowsMatchParameters , principalExchange* , paymentCalculationPeriod*">



FpML_CashPriceMethod


Description:

An entity to define the parameters necessary for each of the ISDA defined cash price methods for cash settlement.


Figure:



Contents:


cashSettlementReferenceBanks (zero or one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_CashSettlementReferenceBanks)
cashSettlementCurrency (exactly one occurrence; of type string, an enumerated domain value defined by currencyScheme)
quotationRateType (exactly one occurrence; of type string, an enumerated domain value defined by quotationRateTypeScheme)

  • Which rate quote is to be observed, either Bid, Mid, Offer or Exercising Party Pays. The meaning of Exercising Party Pays is defined in the 2000 ISDA Definitions, Section 17.2. Certain Definitions Relating to Cash Settlement, paragraph (j)


Used by:


cashPriceAlternateMethod
cashPriceMethod


DTD Fragment:


<!ENTITY % FpML_CashPriceMethod "cashSettlementReferenceBanks? , cashSettlementCurrency , quotationRateType">



FpML_CashSettlement


Description:

An entity to define the cash settlement terms for a product where cash settlement is applicable.


Figure:



Contents:


cashSettlementValuationTime (exactly one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_BusinessCenterTime)
cashSettlementValuationDate (exactly one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_RelativeDateOffset)
cashSettlementPaymentDate (zero or one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_CashSettlementPaymentDate)
Either
Or
Or
Or
Or


Used by:


cashSettlement


DTD Fragment:


<!ENTITY % FpML_CashSettlement "cashSettlementValuationTime , cashSettlementValuationDate , cashSettlementPaymentDate? , (cashPriceMethod | cashPriceAlternateMethod | parYieldCurveAdjustedMethod | zeroCouponYieldAdjustedMethod | parYieldCurveUnadjustedMethod)">



FpML_CashSettlementPaymentDate


Description:

An entity for defining the cash settlement payment date(s) as either a set of explicit dates, together with applicable adjustments, or as a date relative to some other (anchor) date, or as any date in a range of contiguous business days.


Figure:



Contents:


Either
Or
Or


Used by:


cashSettlementPaymentDate


DTD Fragment:


<!ENTITY % FpML_CashSettlementPaymentDate "adjustableDates | relativeDate | businessDateRange">



FpML_CashSettlementReferenceBanks


Description:

An entity for defining the list of reference institutions polled for relevant rates or prices when determining the cash settlement amount for a product where cash settlement is applicable.


Figure:



Contents:


referenceBank (one or more occurrences; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_ReferenceBank)


Used by:


cashSettlementReferenceBanks


DTD Fragment:


<!ENTITY % FpML_CashSettlementReferenceBanks "referenceBank+">



FpML_Discounting


Description:

An entity for defining discounting information. The 2000 ISDA Definitions, Section 8.4. Discounting (related to the calculation of a discounted fixed amount or floating amount) apply. This entity must only be included if discounting applies.


Figure:



Contents:


discountingType (exactly one occurrence; of type string, an enumerated domain value defined by discountingTypeScheme)
discountRate (zero or one occurrence; of type decimal)
discountRateDayCountFraction (zero or one occurrence; of type string, an enumerated domain value defined by dayCountFractionScheme)

  • A discount day count fraction to be used in the calculation of a discounted amount.


Used by:


discounting


DTD Fragment:


<!ENTITY % FpML_Discounting "discountingType , discountRate? , discountRateDayCountFraction?">



FpML_EarlyTerminationEvent


Description:

An entity to define the adjusted dates associated with an early termination provision.


Figure:



Contents:


adjustedExerciseDate (exactly one occurrence; of type date)
adjustedEarlyTerminationDate (exactly one occurrence; of type date)
adjustedCashSettlementValuationDate (exactly one occurrence; of type date)
adjustedCashSettlementPaymentDate (exactly one occurrence; of type date)
adjustedExerciseFeePaymentDate (zero or one occurrence; of type date)


Used by:


earlyTerminationEvent


DTD Fragment:


<!ENTITY % FpML_EarlyTerminationEvent "adjustedExerciseDate , adjustedEarlyTerminationDate , adjustedCashSettlementValuationDate , adjustedCashSettlementPaymentDate , adjustedExerciseFeePaymentDate?">



FpML_EarlyTerminationProvision


Description:

An entity to define an early termination provision for a swap. This early termination is at fair value, ie on termination the fair value of the product must be settled between the parties.


Figure:



Contents:


Either
Or


Used by:


earlyTerminationProvision


DTD Fragment:


<!ENTITY % FpML_EarlyTerminationProvision "mandatoryEarlyTermination | optionalEarlyTermination">



FpML_ExerciseEvent


Description:

An entity to define the adjusted dates associated with a particular exercise event. This entity was defined by the Interest Rate Derivatives Working Group.


Figure:



Contents:


adjustedExerciseDate (exactly one occurrence; of type date)
adjustedRelevantSwapEffectiveDate (exactly one occurrence; of type date)
adjustedCashSettlementValuationDate (zero or one occurrence; of type date)
adjustedCashSettlementPaymentDate (zero or one occurrence; of type date)
adjustedExerciseFeePaymentDate (zero or one occurrence; of type date)


Used by:


exerciseEvent


DTD Fragment:


<!ENTITY % FpML_ExerciseEvent "adjustedExerciseDate , adjustedRelevantSwapEffectiveDate , adjustedCashSettlementValuationDate? , adjustedCashSettlementPaymentDate? , adjustedExerciseFeePaymentDate?">



FpML_ExerciseSelection


Description:

Entity to defined the types of exercise. The choice is european, bermudan or american exercise.


Figure:



Contents:


Either
Or
Or


Used by:


FpML_CancelableProvision
FpML_ExtendibleProvision
FpML_OptionalEarlyTermination
FpML_Swaption


DTD Fragment:


<!ENTITY % FpML_ExerciseSelection "europeanExercise | bermudanExercise | americanExercise">



FpML_ExtendibleProvision


Description:

An entity to define an option to extend an existing swap transaction on the specified exercise dates for a term ending on a specified new termination date.


Figure:



Contents:


buyerPartyReference (exactly one occurrence; an empty element containing an href attribute)
sellerPartyReference (exactly one occurrence; an empty element containing an href attribute)
inherited element(s) (this entity inherits the element(s) defined by exactly one occurrence of the entity FpML_ExerciseSelection)
exerciseNotice (zero or one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_ExerciseNotice)
followUpConfirmation (exactly one occurrence; of type boolean)
extendibleProvisionAdjustedDates (zero or one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_ExtendibleProvisionAdjustedDates)


Used by:


extendibleProvision


DTD Fragment:


<!ENTITY % FpML_ExtendibleProvision "buyerPartyReference , sellerPartyReference , (%FpML_ExerciseSelection;) , exerciseNotice? , followUpConfirmation , extendibleProvisionAdjustedDates?">



FpML_ExtendibleProvisionAdjustedDates


Description:

An entity to define the adjusted dates associated with a provision to extend a swap.


Figure:



Contents:


extensionEvent (one or more occurrences; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_ExtensionEvent)


Used by:


extendibleProvisionAdjustedDates


DTD Fragment:


<!ENTITY % FpML_ExtendibleProvisionAdjustedDates "extensionEvent+">



FpML_ExtensionEvent


Description:

An entity to define the adjusted dates associated with an individual extension event.


Figure:



Contents:


adjustedExerciseDate (exactly one occurrence; of type date)
adjustedExtendedTerminationDate (exactly one occurrence; of type date)


Used by:


extensionEvent


DTD Fragment:


<!ENTITY % FpML_ExtensionEvent "adjustedExerciseDate , adjustedExtendedTerminationDate">



FpML_FloatingRate


Description:

An entity for defining the floating rate definitions.


Figure:



Contents:


floatingRateIndex (exactly one occurrence; of type string, an enumerated domain value defined by floatingRateIndexScheme)
indexTenor (zero or one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_Interval)
floatingRateMultiplierSchedule (zero or one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_Schedule)
spreadSchedule (zero or one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_Schedule)
rateTreatment (zero or one occurrence; of type string, an enumerated domain value defined by rateTreatmentScheme)

  • The specification of any rate conversion which needs to be applied to the observed rate before being used in any calculations. The two common conversions are for securities quoted on a bank discount basis which will need to be converted to either a Money Market Yield or Bond Equivalent Yield. See the Annex to the 2000 ISDA Definitions, Section 7.3. Certain General Definitions Relating to Floating Rate Options, paragraphs (g) and (h) for definitions of these terms.


capRateSchedule (zero or more occurrences; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_StrikeSchedule)

  • The cap rate or cap rate schedule, if any, which applies to the floating rate. The cap rate (strike) is only required where the floating rate on a swap stream is capped at a certain strike level. A cap rate schedule is expressed as explicit cap rates and dates and the step dates may be subject to adjustment in accordance with any adjustments specified in calculationPeriodDatesAdjustments. The cap rate is assumed to be exclusive of any spread and is a per annum rate, expressed as a decimal. A cap rate of 5% would be represented as 0.05.


floorRateSchedule (zero or more occurrences; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_StrikeSchedule)

  • The floor rate or floor rate schedule, if any, which applies to the floating rate. The floor rate (strike) is only required where the floating rate on a swap stream is floored at a certain strike level. A floor rate schedule is expressed as explicit floor rates and dates and the step dates may be subject to adjustment in accordance with any adjustments specified in calculationPeriodDatesAdjustments. The floor rate is assumed to be exclusive of any spread and is a per annum rate, expressed as a decimal. A floor rate of 5% would be represented as 0.05.


Used by:


FpML_FloatingRateCalculation
floatingRate


DTD Fragment:


<!ENTITY % FpML_FloatingRate "floatingRateIndex , indexTenor? , floatingRateMultiplierSchedule? , spreadSchedule? , rateTreatment? , capRateSchedule* , floorRateSchedule*">



FpML_FloatingRateCalculation


Description:

An entity for defining the floating rate definitions and definitions relating to the calculation of floating rate amounts. This entity inherits from a base entity, FpML_FloatingRate.


Figure:



Contents:


inherited element(s) (this entity inherits the element(s) defined by exactly one occurrence of the entity FpML_FloatingRate)
initialRate (zero or one occurrence; of type decimal)
finalRateRounding (zero or one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_Rounding)
averagingMethod (zero or one occurrence; of type string, an enumerated domain value defined by averagingMethodScheme)
negativeInterestRateTreatment (zero or one occurrence; of type string, an enumerated domain value defined by negativeInterestRateTreatmentScheme)

  • The specification of any provisions for calculating payment obligations when a floating rate is negative (either due to a quoted negative floating rate or by operation of a spread that is subtracted from the floating rate).


Used by:


floatingRateCalculation


DTD Fragment:


<!ENTITY % FpML_FloatingRateCalculation "(%FpML_FloatingRate; , initialRate? , finalRateRounding? , averagingMethod? , negativeInterestRateTreatment?)">



FpML_FloatingRateDefinition


Description:

An entity defining parameters associated with a floating rate reset. This entity forms part of the cashflows representation of a stream.


Figure:



Contents:


calculatedRate (zero or one occurrence; of type decimal)
rateObservation (zero or more occurrences; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_RateObservation)
floatingRateMultiplier (zero or one occurrence; of type decimal)
spread (zero or one occurrence; of type decimal)
capRate (zero or more occurrences; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_Strike)
floorRate (zero or more occurrences; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_Strike)


Used by:


floatingRateDefinition


DTD Fragment:


<!ENTITY % FpML_FloatingRateDefinition "calculatedRate? , rateObservation* , floatingRateMultiplier? , spread? , capRate* , floorRate*">



FpML_Fra


Description:

An entity for defining the forward rate agreement (FRA) product.


Figure:



Contents:


inherited element(s) (this entity inherits the element(s) defined by exactly one occurrence of the entity FpML_Product)
buyerPartyReference (exactly one occurrence; an empty element containing an href attribute)
sellerPartyReference (exactly one occurrence; an empty element containing an href attribute)
adjustedEffectiveDate (exactly one occurrence; of type date)
adjustedTerminationDate (exactly one occurrence; of type date)
paymentDate (exactly one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_AdjustableDate)
fixingDateOffset (exactly one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_RelativeDateOffset)
dayCountFraction (exactly one occurrence; of type string, an enumerated domain value defined by dayCountFractionScheme)
calculationPeriodNumberOfDays (exactly one occurrence; of type positiveInteger)
notional (exactly one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_Money)
fixedRate (exactly one occurrence; of type decimal)
floatingRateIndex (exactly one occurrence; of type string, an enumerated domain value defined by floatingRateIndexScheme)

  • The ISDA Floating Rate Option, i.e. the floating rate index.


indexTenor (one or more occurrences; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_Interval)

  • The ISDA Designated Maturity, i.e. the tenor of the floating rate.


fraDiscounting (exactly one occurrence; of type boolean)

  • A true/false flag to indicate whether ISDA FRA Discounting applies. If false, then the calculation will be based on a par value and no discounting will apply.


Used by:


fra


DTD Fragment:


<!ENTITY % FpML_Fra "%FpML_Product; , buyerPartyReference , sellerPartyReference , adjustedEffectiveDate , adjustedTerminationDate , paymentDate , fixingDateOffset , dayCountFraction , calculationPeriodNumberOfDays , notional , fixedRate , floatingRateIndex , indexTenor+ , fraDiscounting">



FpML_FxLinkedNotionalAmount


Description:

An entity to describe the cashflow representation for fx linked notionals.


Figure:



Contents:


adjustedFxSpotFixingDate (exactly one occurrence; of type date)
observedFxSpotRate (zero or one occurrence; of type decimal)
notionalAmount (zero or one occurrence; of type decimal)


Used by:


fxLinkedNotionalAmount


DTD Fragment:


<!ENTITY % FpML_FxLinkedNotionalAmount "adjustedFxSpotFixingDate , observedFxSpotRate? , notionalAmount?">



FpML_FxLinkedNotionalSchedule


Description:

An entity to describe a notional amount schedule where each notional that applies to a calculation period is calculated with reference to a notional amount or notional amount schedule in a different currency by means of a spot currency exchange rate which is normally observed at the beginning of each period.


Figure:



Contents:


constantNotionalScheduleReference (exactly one occurrence; an empty element containing an href attribute)
varyingNotionalCurrency (exactly one occurrence; of type string, an enumerated domain value defined by currencyScheme)
varyingNotionalFixingDates (exactly one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_RelativeDateOffset)
fxSpotRateSource (exactly one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_FxSpotRateSource)
varyingNotionalInterimExchangePaymentDates (exactly one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_RelativeDateOffset)


Used by:


fxLinkedNotionalSchedule


DTD Fragment:


<!ENTITY % FpML_FxLinkedNotionalSchedule "constantNotionalScheduleReference , varyingNotionalCurrency , varyingNotionalFixingDates , fxSpotRateSource , varyingNotionalInterimExchangePaymentDates">



FpML_InterestRateStream


Description:

An entity for defining the components specifying an interest rate payments stream, including both a parametric and cashflows representation for the stream of payments.


Figure:



Contents:


payerPartyReference (exactly one occurrence; an empty element containing an href attribute)
receiverPartyReference (exactly one occurrence; an empty element containing an href attribute)
calculationPeriodDates (exactly one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_CalculationPeriodDates)
paymentDates (exactly one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_PaymentDates)
resetDates (zero or one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_ResetDates)
calculationPeriodAmount (exactly one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_CalculationPeriodAmount)
stubCalculationPeriodAmount (zero or one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_StubCalculationPeriodAmount)
principalExchanges (zero or one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_PrincipalExchanges)
cashflows (zero or one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_Cashflows)


Used by:


capFloorStream
swapStream


DTD Fragment:


<!ENTITY % FpML_InterestRateStream "payerPartyReference , receiverPartyReference , calculationPeriodDates , paymentDates , resetDates? , calculationPeriodAmount , stubCalculationPeriodAmount? , principalExchanges? , cashflows?">



FpML_MandatoryEarlyTermination


Description:

An entity to define the an early termination provision for which exercise is mandatory.


Figure:



Contents:


mandatoryEarlyTerminationDate (exactly one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_AdjustableDate)
calculationAgentPartyReference (one or more occurrences; an empty element containing an href attribute)
cashSettlement (exactly one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_CashSettlement)
mandatoryEarlyTerminationAdjustedDates (zero or one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_MandatoryEarlyTerminationAdjustedDates)


Used by:


mandatoryEarlyTermination


DTD Fragment:


<!ENTITY % FpML_MandatoryEarlyTermination "mandatoryEarlyTerminationDate , calculationAgentPartyReference+ , cashSettlement , mandatoryEarlyTerminationAdjustedDates?">



FpML_MandatoryEarlyTerminationAdjustedDates


Description:

An entity to define the adjusted dates associated with a mandatory early termination provision.


Figure:



Contents:


adjustedEarlyTerminationDate (exactly one occurrence; of type date)
adjustedCashSettlementValuationDate (exactly one occurrence; of type date)
adjustedCashSettlementPaymentDate (exactly one occurrence; of type date)


Used by:


mandatoryEarlyTerminationAdjustedDates


DTD Fragment:


<!ENTITY % FpML_MandatoryEarlyTerminationAdjustedDates "adjustedEarlyTerminationDate , adjustedCashSettlementValuationDate , adjustedCashSettlementPaymentDate">



FpML_Notional


Description:

An entity for defining the notional amount or notional amount schedule associated with a swap stream. The notional schedule will be captured by explicitly specifying the dates that the notional changes and the outstanding notional amount that applies from that date. A parametric representation of the rules defining the notional step schedule can optionally be included.


Figure:



Contents:


notionalStepSchedule (exactly one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_AmountSchedule)
notionalStepParameters (zero or one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_NotionalStepRule)


Used by:


notionalSchedule


DTD Fragment:


<!ENTITY % FpML_Notional "notionalStepSchedule , notionalStepParameters?">



FpML_NotionalStepRule


Description:

An entity for defining a parametric representation of the notional step schedule, i.e. parameters used to generate the notional balance on each step date. The step change in notional can be expressed in terms of either a fixed amount or as a percentage of either the initial notional or previous notional amount. This parametric representation is intended to cover the more common amortizing/accreting.


Figure:



Contents:


calculationPeriodDatesReference (exactly one occurrence; an empty element containing an href attribute)
stepFrequency (exactly one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_Interval)
firstNotionalStepDate (exactly one occurrence; of type date)
lastNotionalStepDate (exactly one occurrence; of type date)
Either
Or
Or


Used by:


notionalStepParameters


DTD Fragment:


<!ENTITY % FpML_NotionalStepRule "calculationPeriodDatesReference , stepFrequency , firstNotionalStepDate , lastNotionalStepDate , (notionalStepAmount | (notionalStepRate , stepRelativeTo))">



FpML_OptionalEarlyTermination


Description:

An entity to define an early termination provision where either or both parties have the right to exercise.


Figure:



Contents:


singlePartyOption (zero or one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_SinglePartyOption)
inherited element(s) (this entity inherits the element(s) defined by exactly one occurrence of the entity FpML_ExerciseSelection)
exerciseNotice (zero or more occurrences; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_ExerciseNotice)
followUpConfirmation (exactly one occurrence; of type boolean)
calculationAgent (exactly one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_CalculationAgent)
cashSettlement (exactly one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_CashSettlement)
optionalEarlyTerminationAdjustedDates (zero or one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_OptionalEarlyTerminationAdjustedDates)


Used by:


optionalEarlyTermination


DTD Fragment:


<!ENTITY % FpML_OptionalEarlyTermination "singlePartyOption? , (%FpML_ExerciseSelection;) , exerciseNotice* , followUpConfirmation , calculationAgent , cashSettlement , optionalEarlyTerminationAdjustedDates?">



FpML_OptionalEarlyTerminationAdjustedDates


Description:

An entity to define the adjusted dates associated with an optional early termination provision.


Figure:



Contents:


earlyTerminationEvent (one or more occurrences; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_EarlyTerminationEvent)


Used by:


optionalEarlyTerminationAdjustedDates


DTD Fragment:


<!ENTITY % FpML_OptionalEarlyTerminationAdjustedDates "earlyTerminationEvent+">



FpML_PaymentCalculationPeriod


Description:

An entity defining the adjusted payment date and associated calculation period parameters required to calculate the actual or projected payment amount. This entity forms part of the cashflows representation of a swap stream.


Figure:



Contents:


adjustedPaymentDate (exactly one occurrence; of type date)
Either
Or


Used by:


paymentCalculationPeriod


DTD Fragment:


<!ENTITY % FpML_PaymentCalculationPeriod "adjustedPaymentDate , (calculationPeriod+ | fixedPaymentAmount)">



FpML_PaymentDates


Description:

An entity for defining the parameters used to generate the payment dates schedule, including the specification of early or delayed payments. Payment dates are determined relative to the calculation periods dates or the reset dates.


Figure:



Contents:


Either
Or
paymentFrequency (exactly one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_Interval)
firstPaymentDate (zero or one occurrence; of type date)
lastRegularPaymentDate (zero or one occurrence; of type date)
payRelativeTo (exactly one occurrence; of type string, an enumerated domain value defined by payRelativeToScheme)
paymentDaysOffset (zero or one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_Offset)
paymentDatesAdjustments (exactly one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_BusinessDayAdjustments)


Used by:


paymentDates


DTD Fragment:


<!ENTITY % FpML_PaymentDates "((calculationPeriodDatesReference | resetDatesReference) , paymentFrequency , firstPaymentDate? , lastRegularPaymentDate? , payRelativeTo , paymentDaysOffset? , paymentDatesAdjustments)">



FpML_PrincipalExchange


Description:

An entity for defining a principal exchange amount and adjusted exchange date. This entity forms part of the cashflows representation of a swap stream.


Figure:



Contents:


adjustedPrincipalExchangeDate (exactly one occurrence; of type date)
principalExchangeAmount (zero or one occurrence; of type decimal)


Used by:


principalExchange


DTD Fragment:


<!ENTITY % FpML_PrincipalExchange "adjustedPrincipalExchangeDate , principalExchangeAmount?">



FpML_PrincipalExchanges


Description:

An entity for defining which principal exchanges occur for the stream.


Figure:



Contents:


initialExchange (exactly one occurrence; of type boolean)
finalExchange (exactly one occurrence; of type boolean)
intermediateExchange (exactly one occurrence; of type boolean)


Used by:


principalExchanges


DTD Fragment:


<!ENTITY % FpML_PrincipalExchanges "initialExchange , finalExchange , intermediateExchange">



FpML_ResetDates


Description:

An entity for defining the parameters used to generate the reset dates schedule and associated fixing dates. The reset dates are determined relative to the calculation periods schedule dates.


Figure:



Contents:


calculationPeriodDatesReference (exactly one occurrence; an empty element containing an href attribute)
resetRelativeTo (zero or one occurrence; of type string, an enumerated domain value defined by resetRelativeToScheme)
fixingDates (exactly one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_RelativeDateOffset)
rateCutOffDaysOffset (zero or one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_Offset)
resetFrequency (exactly one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_ResetFrequency)
resetDatesAdjustments (exactly one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_BusinessDayAdjustments)


Used by:


resetDates


DTD Fragment:


<!ENTITY % FpML_ResetDates "calculationPeriodDatesReference , resetRelativeTo? , fixingDates , rateCutOffDaysOffset? , resetFrequency , resetDatesAdjustments">



FpML_ResetFrequency


Description:

An entity for defining the reset frequency. In the case of a weekly reset, also specifies the day of the week that the reset occurs. This entity inherits from a base entity, FpML_Interval. If the reset frequency is greater than the calculation period frequency then this implies that more than one reset date is established for each calculation period and some form of rate averaging is applicable. The specific averaging method of calculation is specified in the entity FpML_FloatingRateCalculation.


Figure:



Contents:


inherited element(s) (this entity inherits the element(s) defined by exactly one occurrence of the entity FpML_Interval)
weeklyRollConvention (zero or one occurrence; of type string, an enumerated domain value defined by weeklyRollConventionScheme)


Used by:


resetFrequency


DTD Fragment:


<!ENTITY % FpML_ResetFrequency "(%FpML_Interval; , weeklyRollConvention?)">



FpML_SettlementRateSource


Description:

An entity to describe the method for obtaining a settlement rate.


Figure:



Contents:


Either
Or


Used by:


settlementRateSource


DTD Fragment:


<!ENTITY % FpML_SettlementRateSource "informationSource | cashSettlementReferenceBanks">



FpML_SinglePartyOption


Description:

An entity to describe the buyer and seller of a n option.


Figure:



Contents:


buyerPartyReference (exactly one occurrence; an empty element containing an href attribute)
sellerPartyReference (exactly one occurrence; an empty element containing an href attribute)


Used by:


singlePartyOption


DTD Fragment:


<!ENTITY % FpML_SinglePartyOption "buyerPartyReference , sellerPartyReference">



FpML_Stub


Description:

An entity for defining how a stub calculation period amount is calculated. A single floating rate tenor different to that used for the regular part of the calculation periods schedule may be specified, or two floating rate tenors may be specified. If two floating rate tenors are specified then Linear Interpolation (in accordance with the 2000 ISDA Definitions, Section 8.3. Interpolation) is assumed to apply. Alternatively, an actual known stub rate or stub amount may be specified.


Figure:



Contents:


Either
Or
Or


Used by:


finalStub
initialStub


DTD Fragment:


<!ENTITY % FpML_Stub "(floatingRate+ | stubRate | stubAmount)">



FpML_StubCalculationPeriodAmount


Description:

An entity for defining how the initial or final stub calculation period amounts is calculated. For example, the rate to be applied to the initial or final stub calculation period may be the linear interpolation of two different tenors for the floating rate index specified in the calculation period amount component, e.g. A two month stub period may use the linear interpolation of a one month and three month floating rate. The different rate tenors would be specified in this component. Note that a maximum of two rate tenors can be specified. If a stub period uses a single index tenor and this is the same as that specified in the calculation period amount component then the initial stub or final stub element, as the case may be, must not be included.


Figure:



Contents:


calculationPeriodDatesReference (exactly one occurrence; an empty element containing an href attribute)
initialStub (zero or one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_Stub)
finalStub (zero or one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_Stub)


Used by:


stubCalculationPeriodAmount


DTD Fragment:


<!ENTITY % FpML_StubCalculationPeriodAmount "calculationPeriodDatesReference , initialStub? , finalStub?">



FpML_Swap


Description:

An entity for defining swap streams and additional payments between the principal parties involved in the swap.


Figure:



Contents:


inherited element(s) (this entity inherits the element(s) defined by exactly one occurrence of the entity FpML_Product)
swapStream (one or more occurrences; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_InterestRateStream)
earlyTerminationProvision (zero or one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_EarlyTerminationProvision)
cancelableProvision (zero or one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_CancelableProvision)
extendibleProvision (zero or one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_ExtendibleProvision)
additionalPayment (zero or more occurrences; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_Fee)


Used by:


swap


DTD Fragment:


<!ENTITY % FpML_Swap "%FpML_Product; , swapStream+ , earlyTerminationProvision? , cancelableProvision? , extendibleProvision? , additionalPayment*">



FpML_Swaption


Description:

An entity to define a option on a swap.


Figure:



Contents:


inherited element(s) (this entity inherits the element(s) defined by exactly one occurrence of the entity FpML_Product)
buyerPartyReference (exactly one occurrence; an empty element containing an href attribute)
sellerPartyReference (exactly one occurrence; an empty element containing an href attribute)
premium (zero or more occurrences; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_Payment)
inherited element(s) (this entity inherits the element(s) defined by exactly one occurrence of the entity FpML_ExerciseSelection)
exerciseProcedure (exactly one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_ExerciseProcedure)
calculationAgentPartyReference (one or more occurrences; an empty element containing an href attribute)
cashSettlement (zero or one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_CashSettlement)
swaptionStraddle (exactly one occurrence; of type boolean)
swaptionAdjustedDates (zero or one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_SwaptionAdjustedDates)
swap (exactly one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_Swap)


Used by:


swaption


DTD Fragment:


<!ENTITY % FpML_Swaption "%FpML_Product; , buyerPartyReference , sellerPartyReference , premium* , (%FpML_ExerciseSelection;) , exerciseProcedure , calculationAgentPartyReference+ , cashSettlement? , swaptionStraddle , swaptionAdjustedDates? , swap">



FpML_SwaptionAdjustedDates


Description:

An entity to describe the adjusted dates associated with swaption exercise and settlement.


Figure:



Contents:


exerciseEvent (one or more occurrences; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_ExerciseEvent)


Used by:


swaptionAdjustedDates


DTD Fragment:


<!ENTITY % FpML_SwaptionAdjustedDates "exerciseEvent+">



FpML_YieldCurveMethod


Description:

An entity to define the parameters required for each of the ISDA defined yield curve methods for cash settlement.


Figure:



Contents:


settlementRateSource (zero or one occurrence; contains the sub-element(s) defined by exactly one occurrence of the entity FpML_SettlementRateSource)
quotationRateType (exactly one occurrence; of type string, an enumerated domain value defined by quotationRateTypeScheme)


Used by:


parYieldCurveAdjustedMethod
parYieldCurveUnadjustedMethod
zeroCouponYieldAdjustedMethod


DTD Fragment:


<!ENTITY % FpML_YieldCurveMethod "settlementRateSource? , quotationRateType">