/* * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ namespace fpml5.confirmation /** * The type of automatic adjustment that a Letter of Credit can exhibit. */ enum AccrualReferenceAmountTypeEnum { o Commitment o Funded o Other o Unfunded o Unutilized o Utilized} /** * */ enum AccrualReferenceAmountTypeEnumObject { } /** * The type of adjustment applied to any amount. */ enum AmountAdjustmentEnum { o Decrease o Increase} /** * */ enum AmountAdjustmentEnumObject { } /** * The type of averaging used in an Asian option. */ enum AveragingInOutEnum { o In o Out o Both} /** * */ enum AveragingInOutEnumObject { } /** * The method of calculation to be used when averaging rates. Per ISDA 2000 Definitions, Section 6.2. Certain Definitions Relating to Floating Amounts. */ enum AveragingMethodEnum { o Unweighted o Weighted} /** * */ enum AveragingMethodEnumObject { } /** * When breakage cost is applicable, this defines who is calculating it. */ enum BreakageCalculatedByEnum { o AgentBank o Lender} /** * */ enum BreakageCalculatedByEnumObject { } /** * Defines which type of bullion is applicable for a Bullion Transaction. */ enum BullionTypeEnum { o Gold o Palladium o Platinum o Silver o Rhodium o RhodiumSponge o Iridium o Ruthenium o Osmium} /** * */ enum BullionTypeEnumObject { } /** * The convention for adjusting any relevant date if it would otherwise fall on a day that is not a valid business day. Note that FRN is included here as a type of business day convention although it does not strictly fall within ISDA's definition of a Business Day Convention and does not conform to the simple definition given above. */ enum BusinessDayConventionEnum { o FOLLOWING o FRN o MODFOLLOWING o PRECEDING o MODPRECEDING o NEAREST o NONE o NotApplicable} /** * */ enum BusinessDayConventionEnumObject { } /** * */ enum BuySellEnum { o Buyer o Seller} /** * */ enum BuySellEnumObject { } /** * The specification of how a calculation agent will be determined. */ enum CalculationAgentPartyEnum { o ExercisingParty o NonExercisingParty o AsSpecifiedInMasterAgreement o AsSpecifiedInStandardTermsSupplement o Both} /** * */ enum CalculationAgentPartyEnumObject { } /** * Describes the date source calendar for a contract whereby the prices are from the underlying commodity price source (e.g. exchange traded futures contract), but the dates are based off another calendar (e.g. the listed option on the futures contract). */ enum CalendarSourceEnum { o ListedOption o Future} /** * */ enum CalendarSourceEnumObject { } /** * Identifies a party to the on-demand repo transaction that has a right to demand for termination of the repo transaction. */ enum CallingPartyEnum { o InitialBuyer o InitialSeller o Either o AsDefinedInMasterAgreement} /** * */ enum CallingPartyEnumObject { } /** * Denotes the method of collateral value allocation */ enum CollateralValueAllocationEnum { o Buffer o Full o ExcessOverMargin o Margin} /** * */ enum CollateralValueAllocationEnumObject { } /** * The unit in which a commission is denominated. */ enum CommissionDenominationEnum { o BPS o Percentage o CentsPerShare o FixedAmount} /** * */ enum CommissionDenominationEnumObject { } /** * The consequences of Bullion Settlement Disruption Events. */ enum CommodityBullionSettlementDisruptionEnum { o Negotiation o CancellationAndPayment} /** * */ enum CommodityBullionSettlementDisruptionEnumObject { } /** * A day type classification used in counting the number of days between two dates for a commodity transaction. */ enum CommodityDayTypeEnum { } /** * */ enum CommodityDayTypeEnumMember1 { o GasFlow o NearbyContractDay} /** * */ enum CommodityDayTypeEnumMember1Object { } /** * Barrier Knock In or Out. */ enum CommodityKnockEnum { o In o Out} /** * */ enum CommodityKnockEnumObject { } /** * The Commodity specification of whether payments occur relative e.g. to the Trade Date, or the end of the month, etc. */ enum CommodityPayRelativeToEnum { } /** * */ enum CommodityPayRelativeToEnumMember1 { o CalculationDate o CalculationPeriodMonthEnd o CalculationPeriodMonthStart o EffectiveDate o PricingPeriodMonthEnd o TerminationOrExpirationDate o TradeDate o PricingPeriodEndOfWeek o FirstPricingDate} /** * */ enum CommodityPayRelativeToEnumMember1Object { } /** * Defines the value of the commodity return calculation formula as simple or compound. The simple return formula is: [ [P sub t - P sub (t-1)] / [P sub (t-1)] ] - 1 where: P sub t is the price or index level at time period t and P sub t-1 is the price or index level in time period t-1. The compound return formula is the geometric average return for the period: PI from d=1 to d=n [ [ [ [P sub t - P sub (t-1)] / [P sub (t-1)] ] + 1] sup (1 / n) ] - 1 where: PI is the product operator, p sub t is the price or index level at time period t, p sub t -1 is the price or index level at time period t-1 */ enum CommodityReturnCalculationFormulaEnum { o SimpleFormula o CompoundFormula} /** * */ enum CommodityReturnCalculationFormulaEnumObject { } /** * The compounding calculation method */ enum CompoundingMethodEnum { o Flat o None o Straight o SpreadExclusive} /** * */ enum CompoundingMethodEnumObject { } /** * Defines a condition when an event applies. */ enum ConditionEnum { o AtOrAbove o AtOrBelow o Above o Below} /** * */ enum ConditionEnumObject { } /** * Defines whether conditions precedent have been met in a given syndicated loan deal. */ enum ConditionsPrecedentMetEnum { o No o Waived o Yes} /** * */ enum ConditionsPrecedentMetEnumObject { } /** * A type defining a number specified as a decimal between -1 and 1 inclusive. */ enum CorrelationValue { } /** * A day of the seven-day week. */ enum DayOfWeekEnum { o MON o TUE o WED o THU o FRI o SAT o SUN} /** * */ enum DayOfWeekEnumObject { } /** * A day of the seven-day week, plus codes for weekends and weekdays. */ enum DayOfWeekExtEnum { } /** * */ enum DayOfWeekExtEnumMember1 { o WD o WN} /** * */ enum DayOfWeekExtEnumMember1Object { } /** * A day type classification used in counting the number of days between two dates. */ enum DayTypeEnum { o Business o Calendar o CommodityBusiness o CurrencyBusiness o ExchangeBusiness o ScheduledTradingDay} /** * */ enum DayTypeEnumObject { } /** * */ enum DealtCurrencyEnum { o ExchangedCurrency1 o ExchangedCurrency2} /** * */ enum DealtCurrencyEnumObject { } /** * Deprecated: In respect of a Transaction and a Commodity Reference Price, the relevant date or month for delivery of the underlying Commodity. */ enum DeliveryDatesEnum { o CalculationPeriod o FirstNearby o SecondNearby o ThirdNearby o FourthNearby o FifthNearby o SixthNearby o SeventhNearby o EighthNearby o NinthNearby o TenthNearby o EleventhNearby o TwelfthNearby o ThirteenthNearby o FourteenthNearby o FifteenthNearby o SixteenthNearby o SeventeenthNearby o EighteenthNearby o NineteenthNearby o TwentiethNearby o TwentyFirstNearby o TwentySecondNearby o TwentyThirdNearby o TwentyFourthNearby o TwentyFifthNearby o TwentySixthNearby o TwentySeventhNearby o TwentyEighthNearby o TwentyNinthNearby o ThirtiethNearby o ThirtyFirstNearby o ThirtySecondNearby o ThirtyThirdNearby o ThirtyFourthNearby o ThirtyFifthNearby o ThirtySixthNearby o ThirtySeventhNearby o ThirtyEighthNearby o ThirtyNinthNearby o FortiethNearby o FortyFirstNearby o FortySecondNearby o FortyThirdNearby o FortyFourthNearby o FortyFifthNearby o FortySixthNearby o FortySeventhNearby o FortyEighthNearby o FortyNinthNearby o FiftiethNearby o FiftyFirstNearby o FiftySecondNearby o FiftyThirdNearby o FiftyFourthNearby o FiftyFifthNearby o FiftySixthNearby o FiftySeventhNearby o FiftyEighthNearby o FiftyNinthNearby o Spot o FirstNearbyWeek o SecondNearbyWeek o ThirdNearbyWeek o FourthNearbyWeek o FifthNearbyWeek o SixthNearbyWeek o SeventhNearbyWeek o EighthNearbyWeek o NinthNearbyWeek o TenthNearbyWeek o EleventhNearbyWeek o TwelfthNearbyWeek o ThirteenthNearbyWeek o FourteenthNearbyWeek o FifteenthNearbyWeek o SixteenthNearbyWeek o SeventeenthNearbyWeek o EighteenthNearbyWeek o NineteenthNearbyWeek o TwentiethNearbyWeek o TwentyFirstNearbyWeek o TwentySecondNearbyWeek o TwentyThirdNearbyWeek o TwentyFourthearbyWeek o TwentyFifthNearbyWeek o TwentySixthNearbyWeek o TwentySeventhNearbyWeek o TwentyEighthNearbyWeek o TwentyNinthNearbyWeek o ThirtiethNearbyWeek o ThirtyFirstNearbyWeek o ThirtySecondNearbyWeek o ThirtyThirdNearbyWeek o ThirtyFourthNearbyWeek o ThirtyFifthNearbyWeek o ThirtySixthNearbyWeek o ThirtySeventhNearbyWeek o ThirtyEighthNearbyWeek o ThirtyNinthNearbyWeek o FortiethNearbyWeek o FortyFirstNearbyWeek o FortySecondNearbyWeek o FortyThirdNearbyWeek o FortyFourthNearbyWeek o FortyFifthNearbyWeek o FortySixthNearbyWeek o FortySeventhNearbyWeek o FortyEighthNearbyWeek o FortyNinthNearbyWeek o FiftiethNearbyWeek o FiftyFirstNearbyWeek o FiftySecondNearbyWeek} /** * */ enum DeliveryDatesEnumObject { } /** * The type of nearby qualifier, expect to be used in conjunction with a nearby count. */ enum DeliveryNearbyTypeEnum { o CalculationPeriod o NearbyMonth o NearbyWeek} /** * */ enum DeliveryNearbyTypeEnumObject { } /** * */ enum DeliveryTypeEnum { o Firm o Interruptible} /** * */ enum DeliveryTypeEnumObject { } /** * The ISDA defined value indicating the severity of a difference. */ enum DifferenceSeverityEnum { o Warning o Error} /** * */ enum DifferenceSeverityEnumObject { } /** * The ISDA defined value indicating the nature of a difference. */ enum DifferenceTypeEnum { o Value o Reference o Structure o Scheme} /** * */ enum DifferenceTypeEnumObject { } /** * The method of calculating discounted payment amounts. */ enum DiscountingTypeEnum { o Standard o FRA o FRAYield} /** * */ enum DiscountingTypeEnumObject { } /** * The specification of how disruption fallbacks will be represented. */ enum DisruptionFallbacksEnum { o AsSpecifiedInMasterAgreement o AsSpecifiedInConfirmation} /** * */ enum DisruptionFallbacksEnumObject { } /** * Refers to one on the 3 Amounts */ enum DividendAmountTypeEnum { o RecordAmount o ExAmount o PaidAmount o AsSpecifiedInMasterConfirmation} /** * */ enum DividendAmountTypeEnumObject { } /** * Defines how the composition of dividends is to be determined. */ enum DividendCompositionEnum { o EquityAmountReceiverElection o CalculationAgentElection} /** * */ enum DividendCompositionEnumObject { } /** * The reference to a dividend date. */ enum DividendDateReferenceEnum { o ExDate o DividendPaymentDate o DividendValuationDate o RecordDate o TerminationDate o EquityPaymentDate o FollowingPaymentDate o AdHocDate o CumulativeEquityPaid o CumulativeLiborPaid o CumulativeEquityExDiv o CumulativeLiborExDiv o SharePayment o CashSettlementPaymentDate o FloatingAmountPaymentDate o CashSettlePaymentDateExDiv o CashSettlePaymentDateIssuerPayment o ExDividendPaymentDate} /** * */ enum DividendDateReferenceEnumObject { } /** * The date on which the receiver of the equity return is entitled to the dividend. */ enum DividendEntitlementEnum { o ExDate o RecordDate} /** * */ enum DividendEntitlementEnumObject { } /** * Defines the First Period or the Second Period, as specified in the 2002 ISDA Equity Derivatives Definitions. */ enum DividendPeriodEnum { o FirstPeriod o SecondPeriod} /** * */ enum DividendPeriodEnumObject { } /** * A type which permits the Dual Currency strike quote basis to be expressed in terms of the deposit and alternate currencies. */ enum DualCurrencyStrikeQuoteBasisEnum { o DepositCurrencyPerAlternateCurrency o AlternateCurrencyPerDepositCurrency} /** * */ enum DualCurrencyStrikeQuoteBasisEnumObject { } /** * Symbolic specification of early termination date. */ enum EarlyTerminationDateEnum { o AnyDay o ValuationDate o ResetDate o AfterFirstResetDate o AsSpecifiedInMCA} /** * */ enum EarlyTerminationDateEnumObject { } /** * The type of electricity product. */ enum ElectricityProductTypeEnum { o Electricity} /** * */ enum ElectricityProductTypeEnumObject { } /** * Upon the occurrence of an Abandonment of Scheme, as defined in clause (h)(iv) of the Emissions Annex, one of the following elections, the specific terms of which are set forth in clause (b)(iii) of the Emissions Annex, will govern the parties’ rights and obligations with respect to this Emissions Transaction. If none of the above options is selected, Option A(1) will apply. */ enum EnvironmentalAbandonmentOfSchemeEnum { o OptionA1 o OptionA2 o OptionB o OptionC} /** * */ enum EnvironmentalAbandonmentOfSchemeEnumObject { } /** * Environmental Product (e.g. allowance, certificate or unit). */ enum EnvironmentalProductTypeEnum { o EUAllowance o EUCredit o AlternativeAllowance o NOXEmissionsProduct o RegionalEmissionsProduct o RGGIEmissionsProduct o SO2EmissionsProduct o StateEmissionProduct o VoluntaryEmissionProduct o RenewableEnergyCertificate o AUSCarbonCreditUnit o AUSCarbonUnit o AUSEnergySavingCertificate o AUSLargeScaleGenerationCertificate o AUSSmallScaleTechnologyCertificate o AUSVictorianEnergyEfficiencyCertificate o MXCCFECRTINTLODS o NZEmissionsUnits o UKRenewableObligationCertificate} /** * */ enum EnvironmentalProductTypeEnumObject { } /** * Specifies an additional Forward type. */ enum EquityOptionTypeEnum { } /** * */ enum EquityOptionTypeEnumMember1 { o Forward} /** * */ enum EquityOptionTypeEnumMember1Object { } /** * The specification of whether an OTC option will be exercised. */ enum ExerciseActionEnum { o FullExercise o PartialExercise o Abandon} /** * */ enum ExerciseActionEnumObject { } /** * The specification of which of the pay-side or the receive-side should be exercised when a straddle is exercised. */ enum ExerciseSideEnum { } /** * */ enum ExerciseSideEnumMember1 { o Payer o Receiver} /** * */ enum ExerciseSideEnumMember1Object { } /** * */ enum ExerciseStyleEnum { o American o Bermuda o European} /** * */ enum ExerciseStyleEnumObject { } /** * When a requested option exercise event is desired to be performed. */ enum ExerciseTimingEnum { o Immediate o OnExpiration} /** * */ enum ExerciseTimingEnumObject { } /** * Defines the fee type. */ enum FeeElectionEnum { o FlatFee o AmortizedFee o FundingFee o FlatFeeAndFundingFee o AmortizedFeeAndFundingFee} /** * */ enum FeeElectionEnumObject { } /** * The method by which the Flat Rate is calculated for a commodity freight transaction. */ enum FlatRateEnum { o Fixed o Floating} /** * */ enum FlatRateEnumObject { } /** * */ enum FpmlVersionType { } /** * Specifies the fallback provisions in respect to the applicable Futures Price Valuation. */ enum FPVFinalPriceElectionFallbackEnum { o FPVClose o FPVHedgeExecution} /** * */ enum FPVFinalPriceElectionFallbackEnumObject { } /** * The method of FRA discounting, if any, that will apply. */ enum FraDiscountingEnum { o ISDA o AFMA o NONE o ISDAYield} /** * */ enum FraDiscountingEnumObject { } /** * The type of a knockout barrier used in an accrual product (e.g. American or European) */ enum FxAccrualKnockoutBarrierRetentionEnum { o Keep o Lose} /** * */ enum FxAccrualKnockoutBarrierRetentionEnumObject { } /** * Average calculation method e.g. Arithmetic, Harmonic) */ enum FxAveragingMethodEnum { o Arithmetic o Harmonic} /** * */ enum FxAveragingMethodEnumObject { } /** * The specification of whether the direction of a barrier within an FX OTC option is Down or Up. */ enum FxBarrierDirectionEnum { o Down o Up} /** * */ enum FxBarrierDirectionEnumObject { } /** * The specification of whether a barrier has effect for the current expiry period, or globally to the whole product. */ enum FxBarrierScopeEnum { o Global o PerExpiry} /** * */ enum FxBarrierScopeEnumObject { } /** * Defines the barrier observation style i.e. continuous (American) or discrete (Euriopean). */ enum FxBarrierStyleEnum { o American o European} /** * */ enum FxBarrierStyleEnumObject { } /** * The specification of whether a barrier within an FX OTC option is a knockin or knockout. */ enum FxBarrierTypeEnum { o Knockin o Knockout o ReverseKnockin o ReverseKnockout} /** * */ enum FxBarrierTypeEnumObject { } /** * Defines the outcome in the event that the barrier is triggered i.e. whether the product becomes active (Knockin) or is extinguished (Knockout). Omitting superseded values ReverseKnock[in|out]. */ enum FxBarrierTypeSimpleEnum { o Knockin o Knockout} /** * */ enum FxBarrierTypeSimpleEnumObject { } /** * Standard FX Spot and Forward offset conventions. */ enum FxOffsetConventionEnum { o FxSpot o FxForward} /** * */ enum FxOffsetConventionEnumObject { } /** * The Lower Bound Direction. It only contains the AtOrAbove and Above values. */ enum FxRegionLowerBoundDirectionEnum { o AtOrAbove o Above} /** * */ enum FxRegionLowerBoundDirectionEnumObject { } /** * The Upper Bound Direction. It only contains the AtOrBelow and Below values. */ enum FxRegionUpperBoundDirectionEnum { o AtOrBelow o Below} /** * */ enum FxRegionUpperBoundDirectionEnumObject { } /** * Target specific settlement adjustment method. */ enum FxSettlementAdjustmentMethodEnum { o VariedStrike o VariedNotional} /** * */ enum FxSettlementAdjustmentMethodEnumObject { } /** * Forward Volatility Agreement Straddle Type. */ enum FxStraddleTypeEnum { o AtTheMoneyForward o DeltaNeutral} /** * */ enum FxStraddleTypeEnumObject { } /** * Defines the method for calculating the gain in the period where the Target Knock-Out event occurs (Exact, Exclusive, Inclusive). */ enum FxTargetStyleEnum { o Exact o Exclusive o Inclusive} /** * */ enum FxTargetStyleEnumObject { } /** * The specification of a time period containing values such as Today, Tomorrow etc. */ enum FxTenorPeriodEnum { o Broken o Today o Tomorrow o TomorrowNext o Spot o SpotNext} /** * */ enum FxTenorPeriodEnumObject { } /** * The type of gas product. */ enum GasProductTypeEnum { o Butane o CarbonDioxide o EPMix o Ethane o Gasoline o Helium o HydrogenSulfide o Isobutane o Methane o Naphtha o NaturalGas o Nitrogen o Pentane o Propane o Propylene o Water} /** * */ enum GasProductTypeEnumObject { } /** * A type defining a time specified in hh:mm:ss format where the second component must be '00', e.g. 11am would be represented as 11:00:00. */ enum HourMinuteTime { } /** * The specification of the consequences of Index Events. */ enum IndexEventConsequenceEnum { o CalculationAgentAdjustment o NegotiatedCloseOut o CancellationAndPayment o RelatedExchange} /** * */ enum IndexEventConsequenceEnumObject { } /** * */ enum Initial { } /** * Defines whether the agent bank is making an interest payment based on the lender pro-rata share at the end of the period (snapshot) or based on the lender position throughout the period. */ enum InterestCalculationMethodEnum { o ContractPositionThruPeriod o ProRataShareSnapshot} /** * */ enum InterestCalculationMethodEnumObject { } /** * The specification of the interest shortfall cap, applicable to mortgage derivatives. */ enum InterestShortfallCapEnum { o Fixed o Variable} /** * */ enum InterestShortfallCapEnumObject { } /** * Defines applicable periods for interpolation. */ enum InterpolationPeriodEnum { o Initial o InitialAndFinal o Final o AnyPeriod} /** * */ enum InterpolationPeriodEnumObject { } /** * The type of automatic adjustment that a Letter of Credit can exhibit. */ enum LcAutoAdjustEnum { o AutoDecrease o AutoIncrease o AutoIncreaseOrDecrease} /** * */ enum LcAutoAdjustEnumObject { } /** * Used for indicating the length unit in the Resource type. */ enum LengthUnitEnum { o Pages o TimeUnit} /** * */ enum LengthUnitEnumObject { } /** * The type of credit approval request. */ enum LimitModelEnum { o Ping o Plus1ToStop o Plus1ToPing o PushToPing o PushToStop} /** * */ enum LimitModelEnumObject { } /** * LoadType is a summary of the full description of the settlement periods with respect to the region. Used for describing Electricity delivery schedules. */ enum LoadTypeEnum { o Base o Peak o OffPeak o BlockHours o Custom} /** * */ enum LoadTypeEnumObject { } /** * A list that defines how the interest accrued during the settlement period is calculated and paid. */ enum LoanTradingAccrualSettlementEnum { o Flat o SettledWithAccrued o SettledWithoutAccrued} /** * */ enum LoanTradingAccrualSettlementEnumObject { } /** * A list of accruing fee types associated with a facility. */ enum LoanTradingAccruingFeeTypeEnum { o Commitment o Facility o LetterOfCreditIssuance o Ticking o Utilization} /** * */ enum LoanTradingAccruingFeeTypeEnumObject { } /** * A list that defines the loan trading association responsible for defining the standardized legal framework that governs the trade. */ enum LoanTradingAssocEnum { o LMA o LSTA} /** * */ enum LoanTradingAssocEnumObject { } /** * A list describing the type of documentation used to settle a secondary market syndicated loan trade. */ enum LoanTradingDocTypeEnum { o Distressed o Par} /** * */ enum LoanTradingDocTypeEnumObject { } /** * A list describing forms of purchase. */ enum LoanTradingFormOfPurchaseEnum { o Assignment o AssignmentOnly o Other o LMAFundedParticipation o LMAFundedRiskParticipation o LMARiskParticipation o LMARiskToFundedParticipation o LMATransferAgreement o LMATransferCertificate o Participation} /** * */ enum LoanTradingFormOfPurchaseEnumObject { } /** * A list of accruing fee types associated with a facility. */ enum LoanTradingNonRecurringFeeTypeEnum { o Amendment o Consent o Facility o FacilityExension o Upfront o Waiver} /** * */ enum LoanTradingNonRecurringFeeTypeEnumObject { } /** * A list that defines the status of a settlement task. */ enum LoanTradingSettlementTaskStatusEnum { o Active o Cleared o Cancelled} /** * */ enum LoanTradingSettlementTaskStatusEnumObject { } /** * A list that specifies whether a trade was executed during the syndication period or in the post-syndication market. */ enum LoanTradingTypeEnum { o Primary o Secondary} /** * */ enum LoanTradingTypeEnumObject { } /** * A list that specifies type of voting rights process, i.e. whether voting rights are passed along to buyer or retained by seller. */ enum LoanTradingVotingRightsEnum { o PassedOnToBuyer o RetainedBySeller} /** * */ enum LoanTradingVotingRightsEnumObject { } /** * A list of standard market rules for the treatment of split of assignment fees between counterparties. */ enum LoanTransferFeePaidByEnum { o BuyerSplitOneHalf o OneFeePaidByBuyer o OneFeePaidBySeller o PaidByBuyer o PaidBySeller o SellerSplitOneHalf o SplitFull} /** * */ enum LoanTransferFeePaidByEnumObject { } /** * This indicator defines which type of assets (cash or securities) is specified to apply as margin to the repo transaction. */ enum MarginTypeEnum { o Cash o Instrument} /** * */ enum MarginTypeEnumObject { } /** * The specification of how market disruption events will be represented. */ enum MarketDisruptionEventsEnum { o Applicable o NotApplicable o AsSpecifiedInMasterAgreement o AsSpecifiedInConfirmation} /** * */ enum MarketDisruptionEventsEnumObject { } /** * Describes how and when title to the commodity transfers. */ enum MetalTitleEnum { o TransfersWithRiskOfLoss o DoesNotTransferWithRiskOfLoss} /** * */ enum MetalTitleEnumObject { } /** * Defines how adjustments will be made to the contract should one or more of the extraordinary events occur. */ enum MethodOfAdjustmentEnum { o CalculationAgent o OptionsExchange} /** * */ enum MethodOfAdjustmentEnumObject { } /** * Defines the consequences of nationalisation, insolvency and delisting events relating to the underlying. */ enum NationalisationOrInsolvencyOrDelistingEventEnum { o NegotiatedCloseout o CancellationAndPayment} /** * */ enum NationalisationOrInsolvencyOrDelistingEventEnumObject { } /** * The method of 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). */ enum NegativeInterestRateTreatmentEnum { o NegativeInterestRateMethod o ZeroInterestRateMethod} /** * */ enum NegativeInterestRateTreatmentEnumObject { } /** * Defines treatment of non-cash dividends. */ enum NonCashDividendTreatmentEnum { o PotentialAdjustmentEvent o CashEquivalent} /** * */ enum NonCashDividendTreatmentEnumObject { } /** * The base class for all types which define coding schemes that must be populated. */ enum NonEmptyLongScheme { } /** * The base class for all types which define coding schemes that must be populated. */ enum NonEmptyScheme { } /** * A URI that cannot be empty. */ enum NonEmptyURI { } /** * A type defining a number specified as non negative decimal greater than 0 inclusive. */ enum NonNegativeDecimal { } /** * A normalized string */ enum NormalizedString { } /** * The conditions that govern the adjustment to the number of units of the equity swap. */ enum NotionalAdjustmentEnum { o Execution o PortfolioRebalancing o Standard} /** * */ enum NotionalAdjustmentEnumObject { } /** * Indicator as to the type of transaction in accordance with Articles 20(3)(a) and 21(5)(a) of Regulation (EU) 600/2014. */ enum NotionalChangeEnum { o Increase o Decrease} /** * */ enum NotionalChangeEnumObject { } /** * Used in both the obligations and deliverable obligations of the credit default swap to represent a class or type of securities which apply. */ enum ObligationCategoryEnum { o Payment o BorrowedMoney o ReferenceObligationsOnly o Bond o Loan o BondOrLoan} /** * */ enum ObligationCategoryEnumObject { } /** * Specifies the type of the option. */ enum OptionTypeEnum { } /** * */ enum OptionTypeEnumMember1 { o Payer o Receiver o Straddle} /** * */ enum OptionTypeEnumMember1Object { } /** * The specification of an interest rate stream payer or receiver party. */ enum PayerReceiverEnum { o Payer o Receiver} /** * */ enum PayerReceiverEnumObject { } /** * The specification of how an FX OTC option with a trigger payout will be paid if the trigger condition is met. The contract will specify whether the payout will occur immediately or on the original value date of the option. */ enum PayoutEnum { o Deferred o Immediate} /** * */ enum PayoutEnumObject { } /** * The specification of whether payments occur relative to the calculation period start or end date, or the reset date. */ enum PayRelativeToEnum { o CalculationPeriodStartDate o CalculationPeriodEndDate o LastPricingDate o ResetDate o ValuationDate} /** * */ enum PayRelativeToEnumObject { } /** * The specification of a time period */ enum PeriodEnum { o D o W o M o Y} /** * */ enum PeriodEnumObject { } /** * The specification of a time period containing additional values such as Term. */ enum PeriodExtendedEnum { } /** * */ enum PeriodExtendedEnumMember1 { o T} /** * */ enum PeriodExtendedEnumMember1Object { } /** * The specification of a time period containing additional values such as Term. */ enum PeriodTimeEnum { } /** * */ enum PeriodTimeEnumMember1 { o Hour o Minute o Second} /** * */ enum PeriodTimeEnumMember1Object { } /** * Constrains the forward point tick/pip factor to 1, 0.1, 0.01, 0.001, etc. */ enum PointValue { } /** * A type defining a number specified as positive decimal greater than 0 exclusive. */ enum PositiveDecimal { } /** * The specification of how the premium for an FX OTC option is quoted. */ enum PremiumQuoteBasisEnum { o PercentageOfCallCurrencyAmount o PercentageOfPutCurrencyAmount o CallCurrencyPerPutCurrency o PutCurrencyPerCallCurrency o Explicit} /** * */ enum PremiumQuoteBasisEnumObject { } /** * Premium Type for Forward Start Equity Option */ enum PremiumTypeEnum { o PrePaid o PostPaid o Variable o Fixed} /** * */ enum PremiumTypeEnumObject { } /** * The mode of expression of a price. */ enum PriceExpressionEnum { o AbsoluteTerms o PercentageOfNotional} /** * */ enum PriceExpressionEnumObject { } /** * Specifies whether the option is a call or a put. */ enum PutCallEnum { o Put o Call} /** * */ enum PutCallEnumObject { } /** * The specification of the type of quotation rate to be obtained from each cash settlement reference bank. */ enum QuotationRateTypeEnum { o Bid o Ask o Mid o ExercisingPartyPays} /** * */ enum QuotationRateTypeEnumObject { } /** * The side from which perspective a value is quoted. */ enum QuotationSideEnum { o Bid o Ask o Mid} /** * */ enum QuotationSideEnumObject { } /** * Indicates the actual quotation style of of PointsUpFront or TradedSpread that was used to quote this trade. */ enum QuotationStyleEnum { o PointsUpFront o TradedSpread o Price} /** * */ enum QuotationStyleEnumObject { } /** * How an exchange rate is quoted. */ enum QuoteBasisEnum { o Currency1PerCurrency2 o Currency2PerCurrency1} /** * */ enum QuoteBasisEnumObject { } /** * The specification of methods for converting rates from one basis to another. */ enum RateTreatmentEnum { o BondEquivalentYield o MoneyMarketYield} /** * */ enum RateTreatmentEnumObject { } /** * The contract specifies whether which price must satisfy the boundary condition. */ enum RealisedVarianceMethodEnum { o Previous o Last o Both} /** * */ enum RealisedVarianceMethodEnumObject { } /** * A duration code for a Repo (or Securities Lending) transaction. There are many business and market rules that are derived from the duration of the transaction. */ enum RepoDurationEnum { o Overnight o Term} /** * */ enum RepoDurationEnumObject { } /** * The specification of whether resets occur relative to the first or last day of a calculation period. */ enum ResetRelativeToEnum { o CalculationPeriodStartDate o CalculationPeriodEndDate} /** * */ enum ResetRelativeToEnumObject { } /** * A type defining a percentage specified as decimal from 0 to 1. A percentage of 5% would be represented as 0.05. */ enum RestrictedPercentage { } /** * The type of return associated with the equity swap. */ enum ReturnTypeEnum { o Dividend o Price o Total} /** * */ enum ReturnTypeEnumObject { } /** * The convention for determining the sequence of calculation period end dates. It is used in conjunction with a specified frequency and the regular period start date of a calculation period, e.g. semi-annual IMM roll dates. */ enum RollConventionEnum { o EOM o FRN o IMM o IMMCAD o IMMAUD o IMMNZD o SFE o NONE o TBILL o _1 o _2 o _3 o _4 o _5 o _6 o _7 o _8 o _9 o _10 o _11 o _12 o _13 o _14 o _15 o _16 o _17 o _18 o _19 o _20 o _21 o _22 o _23 o _24 o _25 o _26 o _27 o _28 o _29 o _30 o MON o TUE o WED o THU o FRI o SAT o SUN} /** * */ enum RollConventionEnumObject { } /** * The method of rounding a fractional number. */ enum RoundingDirectionEnum { o Up o Down o Nearest} /** * */ enum RoundingDirectionEnumObject { } /** * The base class for all types which define coding schemes that are allowed to be empty. */ enum Scheme { } /** * Defines the Settlement Period Duration for an Electricity Transaction. */ enum SettlementPeriodDurationEnum { o _2Hours o _1Hour o _30Minutes o _15Minutes} /** * */ enum SettlementPeriodDurationEnumObject { } /** * Shows how the transaction is to be settled when it is exercised. */ enum SettlementTypeEnum { o Cash o Physical o Election o CashOrPhysical} /** * */ enum SettlementTypeEnumObject { } /** * Defines the consequences of extraordinary events relating to the underlying. */ enum ShareExtraordinaryEventEnum { o AlternativeObligation o CancellationAndPayment o OptionsExchange o CalculationAgent o ModifiedCalculationAgent o PartialCancellationAndPayment o Component} /** * */ enum ShareExtraordinaryEventEnumObject { } /** * The Specified Price in respect of a Transaction and a Commodity Reference Price. */ enum SpecifiedPriceEnum { o Afternoon o Ask o Bid o Closing o High o Index o MeanOfBidAndAsk o LocationalMarginal o Low o MarginalHourly o MarketClearing o MeanOfHighAndLow o Morning o Official o Opening o OSP o Settlement o Spot o Midpoint o NationalSingle o WeightedAverage o UnWeightedAverage} /** * */ enum SpecifiedPriceEnumObject { } /** * The code specification of whether a trade is settling using standard settlement instructions as well as whether it is a candidate for settlement netting. */ enum StandardSettlementStyleEnum { o Standard o Net o StandardAndNet} /** * */ enum StandardSettlementStyleEnumObject { } /** * The specification of whether a percentage rate change, used to calculate a change in notional outstanding, is expressed as a percentage of the initial notional amount or the previously outstanding notional amount. */ enum StepRelativeToEnum { o Initial o Previous} /** * */ enum StepRelativeToEnumObject { } /** * The specification of how an FX OTC option strike price is quoted. */ enum StrikeQuoteBasisEnum { o PutCurrencyPerCallCurrency o CallCurrencyPerPutCurrency} /** * */ enum StrikeQuoteBasisEnumObject { } /** * A string. FpML may define lenght restrictions in some views. */ enum String { } /** * Element to define how to deal with a none standard calculation period within a swap stream. */ enum StubPeriodTypeEnum { o ShortInitial o ShortFinal o LongInitial o LongFinal} /** * */ enum StubPeriodTypeEnumObject { } /** * The type of telephone number used to reach a contact. */ enum TelephoneTypeEnum { o Work o Mobile o Fax o Personal} /** * */ enum TelephoneTypeEnumObject { } /** * Defines points in the day when equity option exercise and valuation can occur. */ enum TimeTypeEnum { o Close o Open o OSP o SpecificTime o XETRA o DerivativesClose o AsSpecifiedInMasterConfirmation} /** * */ enum TimeTypeEnumObject { } /** * A token. FpML redefines this type so that in some views it can enforce that it may not be empty */ enum Token { } /** * A type defining a token of length between 1 and 60 characters inclusive. */ enum Token60 { } /** * The specification of, for American-style digitals, whether the trigger level must be touched or not touched. */ enum TouchConditionEnum { o Touch o Notouch} /** * */ enum TouchConditionEnumObject { } /** * The specification of whether a payout will occur on an option depending upon whether the spot rate is at or above or at or below the trigger rate. */ enum TriggerConditionEnum { o AtOrAbove o AtOrBelow o Above o Below} /** * */ enum TriggerConditionEnumObject { } /** * The time of day which would be considered for valuing the knock event. */ enum TriggerTimeTypeEnum { o Closing o Anytime} /** * */ enum TriggerTimeTypeEnumObject { } /** * The specification of whether an option will trigger or expire depending upon whether the spot rate is above or below the barrier rate. */ enum TriggerTypeEnum { o EqualOrLess o EqualOrGreater o Equal o Less o Greater} /** * */ enum TriggerTypeEnumObject { } /** * The ISDA defined methodology for determining the final price of the reference obligation for purposes of cash settlement. */ enum ValuationMethodEnum { o Market o Highest o AverageMarket o AverageHighest o BlendedMarket o BlendedHighest o AverageBlendedMarket o AverageBlendedHighest} /** * */ enum ValuationMethodEnumObject { } /** * How a valuation for a trade was determined */ enum ValuationTypeEnum { o Model o Market} /** * */ enum ValuationTypeEnumObject { } /** * */ enum WeatherSettlementLevelEnum { o Cumulative o Average o Mximum o Minimum} /** * */ enum WeatherSettlementLevelEnumObject { } /** * The specification of a weekly roll day. */ enum WeeklyRollConventionEnum { } /** * */ enum WeeklyRollConventionEnumMember1 { o TBILL} /** * */ enum WeeklyRollConventionEnumMember1Object { } /** * The acceptable tolerance in the delivered quantity of a physical commodity product in terms of a number of units of that product. */ concept AbsoluteTolerance { o Double positive o Double negative } /** * An abstract base type that combines objects applicable to the description of a party profile (e.g. applicable assets and cash evets to specific contacts or settlement instructions). */ abstract concept AbstractApplicablePartyProfileObjects { } /** * An extension of the AbstractServicingNotification which includes a reference to the facility and the loan contract to which embedded loan events apply. This abtract type should be used to 'wrap' contract-level business events. */ abstract concept AbstractContractNotification extends AbstractServicingNotification { } /** * Abstract base type for all events. */ abstract concept AbstractEvent { } /** * An abstract base type for all loan business events. */ abstract concept AbstractEventRequireId { } /** * An abstract type defining a facility baseline structure. */ abstract concept AbstractFacility extends FacilitySummary { o String [] group optional } /** * An abstract base type for all facility and/or contract-level business events. */ abstract concept AbstractFacilityContractEvent extends AbstractLoanServicingEvent { } /** * An abstract base type for all facility-level business events. */ abstract concept AbstractFacilityEvent extends AbstractLoanServicingEvent { } /** * An extension of the AbstractServicingNotification which includes a reference to the facility to which embedded loan events apply. This abtract type should be used to 'wrap' facility-level business events. */ abstract concept AbstractFacilityNotification extends AbstractServicingNotification { } /** * An abstract base type for all LC-level business events. */ abstract concept AbstractLcEvent extends AbstractLoanServicingEvent { } /** * An abstract structure defining fundamental allocation event information. */ abstract concept AbstractLoanAllocationEvent extends AbstractLoanEvent { } /** * An underlying abstract structure for all syndicated loan servicing notifications; the wrapper for loan events which occur through the life-cycle of a deal. */ abstract concept AbstractLoanAllocationPaymentNotification extends AbstractLoanTradingNotification { } /** * An abstract structure defining fundamental settlement event information. */ abstract concept AbstractLoanAllocationSettlementEvent extends AbstractLoanEvent { o DateTime settlementDate } /** * An underlying structure defining fundamental allocation event information. */ abstract concept AbstractLoanAllocationSummary { o String comment optional } /** * An abstract base type for all loan contract-level business events. */ abstract concept AbstractLoanContractEvent extends AbstractLoanServicingEvent { } /** * An abstract base type defining common features of a syndicated loan business event. */ abstract concept AbstractLoanEvent extends AbstractEventRequireId { o String comment optional } /** * An abstract base type for all supplementary communication to paying entities and/or servicing platforms. */ abstract concept AbstractLoanPartyProfileNotification extends CorrectableRequestMessage { o String comments optional } /** * An abstract base type defining common features of a syndicated loan servicing business event. Such events are originated by the borrower and are required to be communicated to the lender syndicate by agents. */ abstract concept AbstractLoanServicingEvent extends AbstractLoanEvent { o DateTime effectiveDate } /** * An abstract base type for all syndicated loan statement notifications; the wrapper for deal/facility/contract definitions and facility/contract positions at a particular point in time (snapshot). */ abstract concept AbstractLoanStatement extends CorrectableRequestMessage { o DateTime statementDate o String comments optional } /** * An underlying abstract structure that defines the responsible party for tasks that must be completed. */ abstract concept AbstractLoanTask { o LoanTradingSettlementTaskStatusEnum status o String comment optional } /** * An underlying structure defining fundamental master loan trade event information. */ abstract concept AbstractLoanTrade extends AbstractLoanTradeSummary { o DateTime tradeDate o LoanTradingTypeEnum type o Boolean whenIssuedFlag o LoanTradingAssocEnum tradingAssociation o LoanTradingFormOfPurchaseEnum formOfPurchase } /** * An abstract structure defining fundamental master loan trade event information. */ abstract concept AbstractLoanTradeEvent extends AbstractLoanEvent { } /** * An underlying abstract structure for all syndicated loan servicing notifications; the wrapper for payment events which occur through the life-cycle of a loan trade. */ abstract concept AbstractLoanTradePaymentNotification extends AbstractLoanTradingNotification { } /** * An underlying structure defining all loan trade information i.e. this structure contains the main (e.g. fund manager/main counterparty) trade details. */ abstract concept AbstractLoanTradeSummary { o String comment optional } /** * An underlying abstract structure for all syndicated loan servicing notifications; the wrapper for events which occur through the life-cycle of a loan trade. */ abstract concept AbstractLoanTradingNotification extends CorrectableRequestMessage { o DateTime noticeDate } /** * An abstract base type that describes a party profile. */ abstract concept AbstractPartyProfile extends AbstractPartyProfileId { o DateTime effectiveDate } /** * An abstract base type that identifies a party profile. */ abstract concept AbstractPartyProfileId { } /** * An abstract base type for all syndicated loan servicing notifications; the wrapper for loan events which occur through the life-cycle of a deal. */ abstract concept AbstractServicingNotification extends CorrectableRequestMessage { o DateTime noticeDate o Boolean isGlobalOnly } /** * An underlying structure that details the elements that affect the calculation of a trade-related accrual. */ abstract concept AbstractTradingAccrual { } /** * A generic account that represents any party's account at another party. Parties may be identified by the account at another party. */ concept Account { o String id } /** * The data type used for account identifiers. */ concept AccountId { o String value optional o String accountIdScheme optional } /** * The data type used for the name of the account. */ concept AccountName { o String value optional o String accountNameScheme optional } /** * Reference to an account. */ concept AccountReference extends Reference { } /** * The data type used for account type. */ concept AccountType { o String value optional o String accountTypeScheme optional } /** * An abstract type used for defining accrual structures within loan instruments. */ abstract concept AccrualOptionBase { } /** * A loan servicing notification used to update an accrual option within a single facility. Embedded business events simply re-state the given accrual option. */ concept AccrualOptionChangeNotification extends AbstractContractNotification { o String [] loanContractDetailsModel optional o String [] letterOfCreditDetailsModel optional } /** * A structure that describes the details of the underlying elements that explain the calculation of an accrual against a reference balance. */ concept AccrualPeriod { o DateTime startDate o DateTime endDate o Double numberOfDays o AccrualReferenceAmountTypeEnum referenceAmountType optional o Double rate } /** * A structure used to uniquely identify a single accrual type within a syndicated loan structure. */ concept AccrualTypeId { o String value optional o String accrualTypeIdScheme } /** * An event describing a future change an accruing fee associated with a specific facility. */ concept AccruingFeeChange extends AbstractFacilityEvent { } /** * A loan servicing notification used to communicate a change in an accruing fee option. These options define the rates/calculations associated with facility-level accruing fees. */ concept AccruingFeeChangeNotification extends AbstractFacilityNotification { o String accruingFeeChangeGroupGroup } /** * An event describing a future expiry of one of the accruing fees associated with a specific facility. */ concept AccruingFeeExpiry extends AbstractFacilityEvent { } /** * A structure that represents the accruing fee option associated within a facility. */ concept AccruingFeeOption extends FeeRateOptionBase { o DateTime startDate o DateTime endDate optional o String calculationDefinition optional } /** * An event describing an accruing fee payment made at the facility level. */ concept AccruingFeePayment extends AbstractFacilityEvent { o DateTime startDate o DateTime endDate } /** * A loan servicing notification used to communicate an accruing fee payment made by the borrower. */ concept AccruingFeePaymentNotification extends AbstractFacilityNotification { } /** * A list of all eligible accruing facility-level fee types. */ concept AccruingFeeType { o String value optional o String accruingFeeTypeScheme optional } /** * A structure that represents the accruing PIK option associated within a facility. */ concept AccruingPikOption extends FeeRateOptionBase { o DateTime startDate o DateTime endDate } /** * An event representing a change in a PIK accrual option. In real terms - an example of this would be a margin rate change. */ concept AccruingPikOptionChange extends AbstractFacilityEvent { } /** * An event representing a payment to facilitate capitalization of interest on all outstanding contracts against a particular facility. */ concept AccruingPikPayment extends AbstractFacilityEvent { o DateTime startDate o DateTime endDate } /** * A loan servicing notification used to communicate an accruing PIK rate being capitalized by the borrower. */ concept AccruingPikPaymentNotification extends AbstractFacilityNotification { } /** * */ concept Acknowledgement extends ResponseMessage { } /** * */ concept ActionOnExpiration { o ExerciseActionEnum exerciseAction optional o Boolean expiry optional o Boolean fullExercise optional o Double exerciseInNumberOfOptions optional o Double outstandingNumberOfOptions optional o Double exerciseInNumberOfUnits optional o Double outstandingNumberOfUnits optional } /** * The data type used for ESMA action type. */ concept ActionType { o String value optional o String actionTypeScheme optional } /** * */ concept ActualPrice { o Double amount o PriceExpressionEnum priceExpression o String id optional } /** * Provides extra information not represented in the model that may be useful in processing the message i.e. diagnosing the reason for failure. */ concept AdditionalData { o String string optional o String hexadecimalBinary optional o String base64Binary optional } /** * A type for defining ISDA 2002 Equity Derivative Additional Disruption Events. */ concept AdditionalDisruptionEvents { o Boolean changeInLaw optional o Boolean failureToDeliver optional o Boolean insolvencyFiling optional o Boolean hedgingDisruption optional o Boolean lossOfStockBorrow optional o Double maximumStockLoanRate optional o Boolean increasedCostOfStockBorrow optional o Double initialStockLoanRate optional o Boolean increasedCostOfHedging optional o Boolean foreignOwnershipEvent optional } /** * Abstract base type for an extension/substitution point to customize FpML and add additional events. */ abstract concept AdditionalEvent extends AbstractEvent { } /** * */ concept AdditionalFixedPayments { o Boolean interestShortfallReimbursement optional o Boolean principalShortfallReimbursement optional o Boolean writedownReimbursement optional } /** * Specifies the amount of the fee along with, when applicable, the formula that supports its determination. */ concept AdditionalPaymentAmount { } /** * */ concept AdditionalTerm { o String value optional o String additionalTermScheme optional } /** * A type that represents a physical postal address. */ concept Address { o String city optional o String state optional o String postalCode optional } /** * A type for defining a date that shall be subject to adjustment if it would otherwise fall on a day that is not a business day in the specified business centers, together with the convention for adjusting the date. */ concept AdjustableDate { o String id optional } /** * A type that is different from AdjustableDate in two regards. First, date adjustments can be specified with either a dateAdjustments element or a reference to an existing dateAdjustments element. Second, it does not require the specification of date adjustments. */ concept AdjustableDate2 { o String id optional } /** * A type describing a date defined as subject to adjustment or defined in reference to another date through one or several date offsets. */ concept AdjustableDateOrRelativeDateSequence { o String id optional } /** * A type for defining a series of dates that shall be subject to adjustment if they would otherwise fall on a day that is not a business day in the specified business centers, together with the convention for adjusting the dates. */ concept AdjustableDates { o String id optional } /** * A type for defining a series of dates, either as a list of adjustable dates, or a as a repeating sequence from a base date */ concept AdjustableDatesOrRelativeDateOffset { } /** * An adjustable offset can be used to specify a number of days, business or calendar, for example in a notice period. */ concept AdjustableOffset extends Offset { } /** * A type for defining a date that shall be subject to adjustment if it would otherwise fall on a day that is not a business day in the specified business centers, together with the convention for adjusting the date. */ concept AdjustableOrAdjustedDate { o String id optional } /** * A type giving the choice between defining a date as an explicit date together with applicable adjustments or as relative to some other (anchor) date. */ concept AdjustableOrRelativeDate { o String id optional } /** * A type giving the choice between defining a series of dates as an explicit list of dates together with applicable adjustments or as relative to some other series of (anchor) dates. */ concept AdjustableOrRelativeDates { o String id optional } /** * */ concept AdjustableRelativeOrPeriodicDates { o String id optional } /** * A type giving the choice between defining a series of dates as an explicit list of dates together with applicable adjustments, or as relative to some other series of (anchor) dates, or as a set of factors to specify periodic occurences. */ concept AdjustableRelativeOrPeriodicDates2 { o String id optional } /** * */ concept AdjustedPaymentDates { o DateTime adjustedPaymentDate } /** * A type defining a date (referred to as the derived date) as a relative offset from another date (referred to as the anchor date) plus optional date adjustments. */ concept AdjustedRelativeDateOffset extends RelativeDateOffset { } /** * A structure used to describe an adjustment. */ concept Adjustment { o AmountAdjustmentEnum adjustmentType } /** * Information about whether and when a product was admitted to trading on a facility. */ concept AdmissionToTrading { o Boolean requested o DateTime requestDate optional o DateTime approvalDate optional o DateTime admissionDate optional o DateTime terminationDate optional } /** * */ concept AffectedTransactions { o String [] tradeOrTradeReferenceModel optional } /** * */ concept Algorithm { o String name } /** * A type describing a role played by an algorithm in one or more transactions. Examples include roles such as TradingDecision, RoutingDecision. This can be extended to provide custom roles. */ concept AlgorithmRole { o String value optional o String algorithmRoleScheme optional } /** * */ concept Allocation { o Double allocatedFraction optional o DateTime masterConfirmationDate optional } /** * A message indicating that a request to allocate a trade has been approved by the sender. */ concept AllocationApproved extends ResponseMessage { } /** * A message indicating that a request to allocate a trade has been refused by the sender. */ concept AllocationRefused extends ResponseMessage { } /** * Code that describes what type of allocation applies to the trade. Options include Unallocated, PreAllocation, PostAllocation. */ concept AllocationReportingStatus { o String value optional o String allocationReportingStatusScheme optional } /** * The allocations for a single side of a trade. */ concept Allocations { } /** * A fee charged to the borrower for an amendment being made to the originally agreed credit agreement. The fee is based on a rate (as stated in the agreement) applied to the current commitment level. Calculated as a percentage of the unutilized portion of the facility. */ concept AmendmentFeePayment extends NonRecurringFeePayment { } /** * A type defining the exercise period for an American style option together with any rules governing the notional amount of the underlying which can be exercised on any given exercise date and any associated exercise fees. */ concept AmericanExercise extends Exercise { } /** * A type defining a nominal amount with a reference. */ concept AmountRef { o Double amount } /** * Specifies a reference to a monetary amount. */ concept AmountReference extends Reference { o String href } /** * A type defining a currency amount or a currency amount schedule. */ concept AmountSchedule extends Schedule { } /** * A reference to an asset, e.g. a portfolio, trade, or reference instrument.. */ concept AnyAssetReference extends Reference { o String href } /** * A structure that defines the assets (or type of assets) that a particular payment profile may be associated with. */ concept ApplicableAssets { } /** * A structure that defines the assets (or type of assets) that a particular set of communication details may be associated with. */ concept ApplicableCommunicationDetails extends AbstractApplicablePartyProfileObjects { } /** * A scheme that describes the purpose of a contact in relation to an asset or assets. */ concept ApplicablePurpose { o String value optional o String applicablePurposeScheme optional } /** * A structure that defines the assets (or type of assets) that a particular set of settlement instrution details may be associated with. */ concept ApplicableSettlementInstructionDetails extends AbstractApplicablePartyProfileObjects { } /** * A scheme that describes transaction types. */ concept ApplicableTransactionType { o String value optional o String applicableTransactionTypeScheme optional } /** * A specific approval state in the workflow. */ concept Approval { o String status } /** * An approval identifier allocated by a party. FpML does not define the domain values associated with this element. */ concept ApprovalId { o String value optional o String approvalIdScheme optional o String id optional } /** * */ concept Approvals { } /** * A message describing the approvals currently applied to the trade and their status (e.g. pending, approved, refused). */ concept ApprovalStatusNotification extends NotificationMessage { } /** * A type that qualifies the type of approval. */ concept ApprovalType { o String value optional o String approvalTypeScheme optional } /** * As per ISDA 2002 Definitions. */ concept Asian { o AveragingInOutEnum averagingInOut o Double strikeFactor optional } /** * Abstract base class for all underlying assets. */ abstract concept AAsset { o String id optional } /** * */ concept AssetClass { o String value optional o String assetClassScheme optional } /** * A scheme identifying the types of measures that can be used to describe an asset. */ concept AssetMeasureType { o String value optional o String assetMeasureScheme optional } /** * Reference to an underlying asset, term point or pricing structure (yield curve). */ concept AssetOrTermPointOrPricingStructureReference extends Reference { o String href } /** * Characterise the asset pool behind an asset backed bond. */ concept AssetPool { o Integer version optional o Double initialFactor o Double currentFactor optional } /** * Reference to an underlying asset. */ concept AssetReference extends Reference { } /** * A structure that holds a set of measures about an asset, including possibly their sensitivities. */ concept AssetValuation extends Valuation { } /** * A structure that defines an association identifier based on a qualifying scheme. */ concept AssociationToAssetId { o String value optional o String associationToAssetIdScheme } /** * A type defining an association between party or settlement information with an asset or assets */ concept AssociationToAssetIdentifier { o String id optional } /** * A type to define automatic exercise of a swaption. With automatic exercise the option is deemed to have exercised if it is in the money by more than the threshold amount on the exercise date. */ concept AutomaticExercise { o Double thresholdRate } /** * To indicate the limitation percentage and limitation period. */ concept AverageDailyTradingVolumeLimit { o Double limitationPercentage o Integer limitationPeriod } /** * The average price leg of an average price commodity bullion or non-precious metal forward transaction. */ concept AveragePriceLeg extends CommoditySwapLeg { o Boolean masterAgreementPaymentDates optional } /** * An un ordered list of weighted averaging observations. */ concept AveragingObservationList { } /** * Period over which an average value is taken. */ concept AveragingPeriod { } /** * Method of generating a series of dates. */ concept AveragingSchedule { o DateTime startDate o DateTime endDate } /** * */ concept BankruptcyEvent extends CreditEvent { } /** * As per ISDA 2002 Definitions. */ concept Barrier { } /** * A structure that holds a set of measures about an asset. */ concept BasicAssetValuation extends Valuation { } /** * Some kind of numerical measure about an asset, eg. its NPV, together with characteristics of that measure. */ concept BasicQuotation { o Double value optional o QuotationSideEnum side optional o DateTime time optional o DateTime valuationDate optional o DateTime expiryTime optional o String id optional } /** * A type describing the underlyer features of a basket swap. Each of the basket constituents are described through an embedded component, the basketConstituentsType. */ concept Basket extends AAsset { o Double openUnits optional o Double basketDivisor optional o Integer basketVersion optional } /** * A structure indicating that the basket underlyer of the trade has changed due to client trading activity */ concept BasketChangeEvent extends ChangeEvent { } /** * A type describing each of the constituents of a basket. */ concept BasketConstituent { o String underlyingAssetGroup o String id optional } /** * */ concept BasketId { o String value optional o String basketIdScheme optional } /** * */ concept BasketName { o String value optional o String basketNameScheme optional } /** * CDS Basket Reference Information */ concept BasketReferenceInformation { o Integer nthToDefault optional o Integer mthToDefault optional } /** * A type defining the beneficiary of the funds. */ concept Beneficiary { } /** * A type defining the Bermuda option exercise dates and the expiration date together with any rules govenerning the notional amount of the underlying which can be exercised on any given exercise date and any associated exercise fee. */ concept BermudaExercise extends Exercise { } /** * An exchange traded bond. */ concept Bond extends UnderlyingAsset { o String issuerName optional o Double couponRate optional o DateTime maturity optional o Double parValue optional o Double faceAmount optional } /** * A Bond Option */ concept BondOption extends OptionBaseExtended { } /** * A complex type to specify the strike of a bond or convertible bond option. */ concept BondOptionStrike { } /** * A type including a reference to a bond to support the representation of an asset swap or Condition Precedent Bond. */ concept BondReference { o Boolean conditionPrecedentBond o Boolean discrepancyClause optional } /** * An event representing the fact that a new loan contract (funded borrowing) has been requested by the borrower. */ concept Borrowing extends AbstractLoanContractEvent { o ConditionsPrecedentMetEnum conditionsPrecedentMet optional } /** * A type describing correlation bounds, which form a cap and a floor on the realized correlation. */ concept BoundedCorrelation { o Double minimumBoundaryPercent optional o Double maximumBoundaryPercent optional } /** * A type describing variance bounds, which are used to exclude money price values outside of the specified range In a Up Conditional Swap Underlyer price must be equal to or higher than Lower Barrier In a Down Conditional Swap Underlyer price must be equal to or lower than Upper Barrier In a Corridor Conditional Swap Underlyer price must be equal to or higher than Lower Barrier and must be equal to or lower than Upper Barrier. */ concept BoundedVariance { o RealisedVarianceMethodEnum realisedVarianceMethod o Boolean daysInRangeAdjustment o Double upperBarrier optional o Double lowerBarrier optional } /** * A fee calculated as the cost of breaking financing against a loan contract which is repaid early. */ concept BreakageFeePayment extends NonRecurringFeePayment { o DateTime breakageFeeClaimDate optional o BreakageCalculatedByEnum breakageFeeCalculatedBy optional } /** * Identifies the market sector in which the trade has been arranged. */ concept BrokerConfirmation { } /** * Identifies the market sector in which the trade has been arranged. */ concept BrokerConfirmationType { o String value optional o String brokerConfirmationTypeScheme optional } /** * A type for defining the broker equity options. */ concept BrokerEquityOption extends EquityDerivativeShortFormBase { o Boolean deltaCrossed o String brokerNotes } /** * A product to represent a single cashflow. */ concept BulletPayment extends Product { } /** * A scheme defining where bullion is to be delivered for a Bullion Transaction. */ concept BullionDeliveryLocation { o String value optional o String bullionDeliveryLocationScheme optional } /** * Physically settled leg of a physically settled Bullion Transaction. */ concept BullionPhysicalLeg extends PhysicalForwardLeg { o BullionTypeEnum bullionType } /** * A code identifying a business day calendar location. A business day calendar location is drawn from the list identified by the business day calendar location scheme. */ concept BusinessCenter { o String value optional o String businessCenterScheme optional o String id optional } /** * A type for defining business day calendar used in determining whether a day is a business day or not. A list of business day calendar locations may be ordered in the document alphabetically based on business day calendar location code. An FpML document containing an unordered business day calendar location list is still regarded as a conformant document. */ concept BusinessCenters { o String id optional } /** * A pointer style reference to a set of business day calendar defined elsewhere in the document. */ concept BusinessCentersReference extends Reference { } /** * A type for defining a time with respect to a business day calendar location. For example, 11:00am London time. */ concept BusinessCenterTime { o HourMinuteTime hourMinuteTime } /** * A type defining a range of contiguous business days by defining an unadjusted first date, an unadjusted last date and a business day convention and business centers for adjusting the first and last dates if they would otherwise fall on a non business day in the specified business centers. The days between the first and last date must also be good business days in the specified centers to be counted in the range. */ concept BusinessDateRange extends DateRange { o BusinessDayConventionEnum businessDayConvention } /** * A type defining the business day convention and financial business centers used for adjusting any relevant date if it would otherwise fall on a day that is not a business day in the specified business centers. */ concept BusinessDayAdjustments { o BusinessDayConventionEnum businessDayConvention o String id optional } /** * Reference to a business day adjustments structure. */ concept BusinessDayAdjustmentsReference extends Reference { } /** * A type defining an event identifier issued by the indicated party. */ concept BusinessEventIdentifier { o String id optional } /** * A type that can be used to identify the type of business process in a request. Examples include Allocation, Clearing, Confirmation, etc. */ concept BusinessProcess { o String value optional o String businessProcessScheme optional } /** * A type that represents information about a unit within an organization. */ concept BusinessUnit { o String name optional o String id optional } /** * Reference to an organizational unit. */ concept BusinessUnitReference extends Reference { } /** * A type describing a role played by a unit in one or more transactions. Examples include roles such as Trader, Collateral, Confirmation, Settlement, etc. This can be extended to provide custom roles. */ concept BusinessUnitRole { o String value optional o String unitRoleScheme optional } /** * A structure that defines the buyer and seller amounts of a payable. */ concept BuyerSellerAmounts { } /** * An abstract base class for all calculated money amounts, which are in the currency of the cash multiplier of the calculation. */ abstract concept CalculatedAmount { o Boolean optionsExchangeDividends optional o Boolean additionalDividends optional o Boolean allDividends optional } /** * A type definining the parameters used in the calculation of fixed or floating calculation period amounts. */ concept Calculation { o String rateCalculationGroup optional o CompoundingMethodEnum compoundingMethod optional } /** * A type defining the ISDA calculation agent responsible for performing duties as defined in the applicable product definitions. */ concept CalculationAgent { o CalculationAgentPartyEnum calculationAgentParty optional } /** * */ concept CalculationAmount extends Money { } /** * Abstract base class for all calculation from observed values. */ abstract concept CalculationFromObservation { o Double initialLevel optional o Boolean closingLevel optional o Boolean expiringLevel optional o Integer expectedN optional } /** * A type defining the parameters used in the calculation of a fixed or floating rate calculation period amount. This type forms part of cashflows representation of a swap stream. */ concept CalculationPeriod { o DateTime unadjustedStartDate optional o DateTime unadjustedEndDate optional o DateTime adjustedStartDate optional o DateTime adjustedEndDate optional o Integer calculationPeriodNumberOfDays optional o Double notionalAmount optional o Double fixedRate optional o Double dayCountYearFraction optional o Double forecastRate optional o String id optional } /** * A type defining the parameters used in the calculation of fixed or floating rate calculation period amounts or for specifying a known calculation period amount or known amount schedule. */ concept CalculationPeriodAmount { } /** * A type defining the parameters used to generate the calculation period dates schedule, including the specification of any initial or final stub calculation periods. A calculation perod schedule consists of an optional initial stub calculation period, one or more regular calculation periods and an optional final stub calculation period. In the absence of any initial or final stub calculation periods, the regular part of the calculation period schedule is assumed to be between the effective date and the termination date. No implicit stubs are allowed, i.e. stubs must be explicitly specified using an appropriate combination of firstPeriodStateDate, firstRegularPeriodStartDate and lastRegularPeriodEndDate. */ concept CalculationPeriodDates { o DateTime firstRegularPeriodStartDate optional o DateTime firstCompoundingPeriodEndDate optional o DateTime lastRegularPeriodEndDate optional o StubPeriodTypeEnum stubPeriodType optional o String id } /** * Reference to a calculation period dates component. */ concept CalculationPeriodDatesReference extends Reference { } /** * A type defining the frequency at which calculation period end dates occur within the regular part of the calculation period schedule and thier roll date convention. In case the calculation frequency is of value T (term), the period is defined by the swap\swapStream\calculationPerioDates\effectiveDate and the swap\swapStream\calculationPerioDates\terminationDate. */ concept CalculationPeriodFrequency extends Frequency { o RollConventionEnum rollConvention } /** * A pointer style reference to single-day-duration calculation periods defined elsewhere - note that this schedule consists of a parameterised schedule in a calculationPeriodsSchedule container. */ concept CalculationPeriodsDatesReference extends Reference { } /** * A pointer style reference to a calculation periods schedule defined elsewhere - note that this schedule consists of a series of actual dates in a calculationPeriods container. */ concept CalculationPeriodsReference extends Reference { } /** * A pointer style reference to a calculation periods schedule defined elsewhere - note that this schedule consists of a parameterised schedule in a calculationPeriodsSchedule container. */ concept CalculationPeriodsScheduleReference extends Reference { } /** * A type for defining a calendar spread feature. */ concept CalendarSpread { } /** * A type defining the right of a party to cancel a swap transaction on the specified exercise dates. The provision is for 'walkaway' cancellation (i.e. the fair value of the swap is not paid). A fee payable on exercise can be specified. */ concept CancelableProvision { o String exerciseGroup o Boolean followUpConfirmation } /** * A type to define the adjusted dates for a cancelable provision on a swap transaction. */ concept CancelableProvisionAdjustedDates { } /** * The adjusted dates for a specific cancellation date, including the adjusted exercise date and adjusted termination date. */ concept CancellationEvent { o DateTime adjustedExerciseDate o DateTime adjustedEarlyTerminationDate o String id optional } /** * A type defining an interest rate cap, floor, or cap/floor strategy (e.g. collar) product. */ concept CapFloor extends Product { } /** * */ concept Cash extends AAsset { o String description optional } /** * An identifier used to identify a single component cashflow. */ concept CashflowId { o String value optional o String cashflowIdScheme optional } /** * The notional/principal value/quantity/volume used to compute the cashflow. */ concept CashflowNotional { o String units optional o Double amount o String id optional } /** * A type defining the cashflow representation of a swap trade. */ concept Cashflows { o Boolean cashflowsMatchParameters } /** * A coding scheme used to describe the type or purpose of a cash flow or cash flow component. */ concept CashflowType { o String value optional o String cashflowTypeScheme optional } /** * A structure taht represents payable cash, together with reference to any withholding tax being applied. This is used as a generic cash flow container across all loan business events (within the event header). */ concept CashPayable { } /** * A type defining the parameters necessary for each of the ISDA cash price methods for cash settlement. */ concept CashPriceMethod { o QuotationRateTypeEnum quotationRateType } /** * A type to define the cash settlement terms for a product where cash settlement is applicable. */ concept CashSettlement { o String id optional } /** * A type defining the cash settlement payment date(s) as either a set of explicit dates, together with applicable adjustments, or as a date relative to some other (anchor) date, or as any date in a range of contiguous business days. */ concept CashSettlementPaymentDate { o String id optional } /** * A type defining the list of reference institutions polled for relevant rates or prices when determining the cash settlement amount for a product where cash settlement is applicable. */ concept CashSettlementReferenceBanks { o String id optional } /** * */ concept CashSettlementTerms extends SettlementTerms { o QuotationRateTypeEnum quotationMethod optional o String [] dealer optional o Integer cashSettlementBusinessDays optional o Double recoveryFactor optional o Boolean fixedSettlement optional o Boolean accruedInterest optional o ValuationMethodEnum valuationMethod optional } /** * Abstract base type for non-negotiated trade change descriptions */ abstract concept ChangeEvent extends AbstractEvent { } /** * A classified non negative payment. */ concept ClassifiablePayment extends NonNegativePayment { } /** * Unless otherwise specified, the principal clearance system customarily used for settling trades in the relevant underlying. */ concept ClearanceSystem { o String value optional o String clearanceSystemScheme optional } /** * A structure describing a trade registration event that is part of a clearing process. */ concept Clearing { } /** * A message indicating that a clearing request has been acted on and as a result a trade has been cleared. */ concept ClearingConfirmed extends NotificationMessage { o String additionalEventGroup optional } /** * */ concept ClearingEligibility extends ResponseMessage { o String additionalEventGroup optional o Boolean eligibleForClearing } /** * The reason a trade is exempted from a clearing mandate. */ concept ClearingExceptionReason { o String value optional o String clearingExceptionReasonScheme optional } /** * */ concept ClearingInstructions { } /** * A message indicating that a clearing request has not been acted on due to a business decision and therefore no trade has been cleared. */ concept ClearingRefused extends NotificationMessage { o String additionalEventGroup optional } /** * */ concept ClearingRequirements { o Boolean mandatorilyClearable } /** * A message providing the current status of a clearing request. */ concept ClearingStatus extends NotificationMessage { } /** * A component of a clearing status report. This provides the clearing status for a single trade. */ concept ClearingStatusItem { o DateTime updatedDateTime optional } /** * The current status value of a clearing request. */ concept ClearingStatusValue { o String value optional o String clearingStatusScheme optional } /** * The different options for specifying the attributes of a coal quality measure as a decimal value. */ concept CoalAttributeDecimal { o Double standardContent optional o Double rejectionLimit optional o Double rejectionLimit1 optional } /** * The different options for specifying the attributes of a coal quality measure as a percentage of the measured value. */ concept CoalAttributePercentage { o Double standardContent optional o Double rejectionLimit optional o Double rejectionLimit1 optional } /** * The physical delivery conditions for coal. */ concept CoalDelivery { o Boolean deliveryAtSource optional o Boolean quantityVariationAdjustment optional } /** * A scheme identifying the types of the Delivery Point for a physically settled coal trade. */ concept CoalDeliveryPoint { o String value optional o String deliveryPointScheme optional } /** * Physically settled leg of a physically settled coal transaction. */ concept CoalPhysicalLeg extends PhysicalSwapLeg { } /** * A type defining the characteristics of the coal being traded in a physically settled gas transaction. */ concept CoalProduct { o Boolean sCoTASpecifications optional } /** * A scheme identifying the sources of coal for a physically settled coal trade. */ concept CoalProductSource { o String value optional o String commodityCoalProductSourceScheme optional } /** * The different options for specifying the quality attributes of the coal to be delivered. */ concept CoalProductSpecifications { } /** * A scheme identifying the types of coal for a physically settled coal trade. */ concept CoalProductType { o String value optional o String commodityCoalProductTypeScheme optional } /** * A scheme identifying the quality adjustment formulae for a physically settled coal trade. */ concept CoalQualityAdjustments { o String value optional o String commodityCoalQualityAdjustmentsScheme optional } /** * The quality attributes of the coal to be delivered. */ concept CoalStandardQuality { } /** * The quality attributes of the coal to be delivered, specified on a periodic basis. */ concept CoalStandardQualitySchedule { } /** * A scheme identifying the methods by which coal may be transported. */ concept CoalTransportationEquipment { o String value optional o String commodityCoalTransportationEquipmentScheme optional } /** * A type for defining the obligations of the counterparty subject to credit support requirements. */ concept Collateral { } /** * */ concept CollateralAllocationAccepted extends ResponseMessage { } /** * Code that describes what type of collateral is posted by a party to a transaction. Options include Uncollateralized, Partial, Full, One-Way. */ concept CollateralizationType { o String value optional o String collateralTypeScheme optional } /** * */ concept CollateralProfile { o String value optional o String collateralProfileScheme optional } /** * */ concept CollateralType { o String value optional o String collateralTypeScheme optional } /** * This type is used in Repo trades, to specify the valuation of a specific piece of collateral in the transaction. */ concept CollateralValuation { o Double cleanPrice optional o Double accruals optional o Double dirtyPrice optional o Double dirtyPrice1 optional o Double yieldToMaturity optional o Double inflationFactor optional o Double allInPrice optional o Double numberOfUnits optional } /** * */ concept CollateralValueAllocation { o CollateralValueAllocationEnum type } /** * A type describing the commission that will be charged for each of the hedge transactions. */ concept Commission { o CommissionDenominationEnum commissionDenomination o Double commissionAmount o Double commissionPerTrade optional } /** * An event defining a future change in facility commitment. */ concept CommitmentAdjustment extends AbstractFacilityEvent { o Boolean refusalAllowed o Boolean scheduled o Boolean pik } /** * A structure which specifies the commitment changes occurring throughout the life of a facility. */ concept CommitmentChange { o DateTime date } /** * A structure that represents a complete amortization schedule through the life of a facility. */ concept CommitmentSchedule { } /** * A type describing a commodity underlying asset. */ concept Commodity extends IdentifiedAsset { o SpecifiedPriceEnum specifiedPrice o DeliveryDatesEnum deliveryDates optional o DateTime deliveryDateYearMonth optional o Double multiplier optional } /** * A type for defining exercise procedures associated with an American style exercise of a commodity option. */ concept CommodityAmericanExercise extends Exercise { } /** * The specification of how a barrier option will trigger (that is, knock-in or knock-out) or expire based on the position of the spot rate relative to trigger level. */ concept CommodityBarrier { o CommodityKnockEnum knock } /** * */ concept CommodityBase { o String value optional o String commodityBaseScheme optional } /** * Describes the swap's underlyer when it has multiple asset components. */ concept CommodityBasket { } /** * Abstract base class for all underlying assets. */ abstract concept CommodityBasketBase { o String id optional } /** * */ concept CommodityBasketByNotional extends CommodityBasketBase { } /** * */ concept CommodityBasketByPercentage extends CommodityBasketBase { } /** * */ concept CommodityBasketOption extends Option { o PutCallEnum optionType o Boolean commonPricing optional o CommodityBullionSettlementDisruptionEnum settlementDisruption optional } /** * */ concept CommodityBasketUnderlyingBase { o PayerReceiverEnum direction o AveragingMethodEnum averagingMethod optional o String id optional } /** * */ concept CommodityBasketUnderlyingByNotional extends CommodityBasketUnderlyingBase { o Double conversionFactor optional o Double totalNotionalQuantity optional } /** * */ concept CommodityBasketUnderlyingByPercentage extends CommodityBasketUnderlyingBase { o Double constituentWeight optional } /** * Defines a commodity business day calendar. */ concept CommodityBusinessCalendar { o String value optional o String commodityBusinessCalendarScheme optional } /** * A parametric representation of the Calculation Periods for on Asian option or a leg of a swap. In case the calculation frequency is of value T (term), the period is defined by the commoditySwap\effectiveDate and the commoditySwap\terminationDate. */ concept CommodityCalculationPeriodsSchedule extends Frequency { o Boolean balanceOfFirstPeriod } /** * The different options for specifying the Delivery Periods of a physical leg. */ concept CommodityDeliveryPeriods { o String id optional } /** * A scheme identifying the types of the Delivery Point for a physically settled commodity trade. */ concept CommodityDeliveryPoint { o String value optional o String deliveryPointScheme optional } /** * A scheme identifying how the parties to the trade aportion responsibility for the delivery of the commodity product (for example Free On Board, Cost, Insurance, Freight) */ concept CommodityDeliveryRisk { o String value optional o String deliveryRiskScheme optional } /** * */ concept CommodityDetails { o String value optional o String commodityDetailsScheme optional } /** * Defined the conditions under which the digital option can triggers and, if triggered, what payment results. */ concept CommodityDigital { } /** * The parameters for defining how the commodity digital option can be exercised. It differs from the CommodityExercise type in that it lacks a specification of Settlement Currency. The Settlement Currency is specified in the 'featurePayment' element. */ concept CommodityDigitalExercise { o Boolean automaticExercise optional o Boolean writtenConfirmation optional o Boolean masterAgreementPaymentDates optional } /** * Defines the digital commodity option product type. Digital options exercise when a barrier is breached and are financially settled. The 'commodityDigitalOption' type is an extension of the 'commodityOption' product. */ concept CommodityDigitalOption extends Option { o PutCallEnum optionType o AveragingMethodEnum averagingMethod optional o Double totalNotionalQuantity optional o Boolean commonPricing optional o CommodityBullionSettlementDisruptionEnum settlementDisruption optional } /** * A type for defining exercise procedures associated with a European style exercise of a commodity option. */ concept CommodityEuropeanExercise extends Exercise { } /** * The parameters for defining how the commodity option can be exercised, how it is priced and how it is settled. */ concept CommodityExercise { o Boolean automaticExercise optional o Boolean writtenConfirmation optional o Double conversionFactor optional o Boolean masterAgreementPaymentDates optional } /** * The parameters for defining how the commodity option can be exercised, how it is priced and how it is settled. */ concept CommodityExerciseBasket { o Boolean automaticExercise optional o Boolean writtenConfirmation optional o Boolean masterAgreementPaymentDates optional } /** * */ concept CommodityExercisePeriods { } /** * A scheme identifying the physical event relative to which option expiration occurs. */ concept CommodityExpireRelativeToEvent { o String value optional o String commodityExpireRelativeToEventScheme optional } /** * */ concept CommodityFixedInterestCalculation { } /** * The Fixed Price for a given Calculation Period during the life of the trade. There must be a Fixed Price step specified for each Calculation Period, regardless of whether the Fixed Price changes or remains the same between periods. */ concept CommodityFixedPriceSchedule { o Double [] worldscaleRateStep optional } /** * Commodity Forward */ concept CommodityForward extends Product { o String commodityForwardLegGroup o Boolean commonPricing optional o CommodityBullionSettlementDisruptionEnum settlementDisruption optional } /** * Abstract base class for all commodity forward legs. */ abstract concept CommodityForwardLeg extends Leg { } /** * Frequency Type for use in Pricing Date specifications. */ concept CommodityFrequencyType { o String value optional o String commodityFrequencyTypeScheme optional } /** * A type defining the FX observations to be used to convert the observed Commodity Reference Price to the Settlement Currency. The rate source must be specified. Additionally, a time for the spot price to be observed on that source may be specified, or else an averaging schedule for trades priced using an average FX rate. */ concept CommodityFx { o AveragingMethodEnum averagingMethod optional o CommodityDayTypeEnum dayType optional o Integer dayCount optional o DayOfWeekEnum[] dayOfWeek optional o Integer dayNumber optional o BusinessDayConventionEnum businessDayConvention optional } /** * Identifes how the FX rate will be applied. This is intended to differentiate between the various methods for applying FX to the floating price such as a daily calculation, or averaging the FX and applying the average at the end of each CalculationPeriod. */ concept CommodityFxType { o String value optional o String commodityFxTypeScheme optional } /** * A type defining a hub or other reference for a physically settled commodity trade. */ concept CommodityHub { } /** * A scheme identifying the code for a hub or other reference for a physically settled commodity trade. */ concept CommodityHubCode { o String value optional o String hubCodeScheme } /** * The publication in which the rate, price, index or factor is to be found. (e.g Gas Daily, Platts Bloomberg.) */ concept CommodityInformationProvider { o String value optional o String informationProviderScheme optional } /** * A type defining the source of a commodity rate, price or index or of a market rate or of a conversion factor (e.g. a fx conversion factor). */ concept CommodityInformationSource { o String rateSourcePageHeading optional } /** * A type describing the interest rate leg (a.k.a fee leg) of the commodity performance swap. */ concept CommodityInterestLeg extends CommodityPerformanceSwapLeg { o Boolean masterAgreementPaymentDates optional } /** * ISDA 1993 or 2005 commodity market disruption elements. */ concept CommodityMarketDisruption { o MarketDisruptionEventsEnum marketDisruptionEvents optional o DisruptionFallbacksEnum disruptionFallbacks optional o Integer maximumNumberOfDaysOfDisruption optional o Double priceMaterialityPercentage optional o Integer minimumFuturesContracts optional } /** * */ concept CommodityMetalBrand { } /** * */ concept CommodityMetalBrandManager { o String value optional o String commodityMetalBrandManagerScheme optional } /** * The name of the entity that issues the brand */ concept CommodityMetalBrandName { o String value optional o String commodityMetalBrandNameScheme optional } /** * */ concept CommodityMetalGrade { o String value optional o String commodityMetalGradeScheme optional } /** * */ concept CommodityMetalProducer { o String value optional o String commodityMetalProducerScheme optional } /** * */ concept CommodityMetalShape { o String value optional o String commodityMetalShapeScheme optional } /** * A type for defining the multiple exercise provisions of an American style commodity option. */ concept CommodityMultipleExercise { } /** * A complex type to specify the notional amount. */ concept CommodityNotionalAmount extends NonNegativeMoney { o Boolean reinvestmentFeature } /** * A reference to the return swap notional amount. */ concept CommodityNotionalAmountReference extends Reference { } /** * Commodity Notional. */ concept CommodityNotionalQuantity { o Double quantity o String id optional } /** * The Notional Quantity per Calculation Period. There must be a Notional Quantity step specified for each Calculation Period, regardless of whether the Notional Quantity changes or remains the same between periods. */ concept CommodityNotionalQuantitySchedule { o String id optional } /** * Defines a commodity option product type. The product support for financially-settled exercises or exercise into physical forward contracts written on precious and non-precious metals. options in FpML is based on the creation of a 'commodityOption' product. The product references the 'commodity' underlyer in order to support the underlying asset of the option. */ concept CommodityOption extends Product { o PutCallEnum optionType o AveragingMethodEnum averagingMethod optional o Double totalNotionalQuantity optional o Boolean commonPricing optional o CommodityBullionSettlementDisruptionEnum settlementDisruption optional } /** * A scheme identifying the physical event relative to which payment occurs. */ concept CommodityPayRelativeToEvent { o String value optional o String commodityPayRelativeToEventScheme optional } /** * A type describing a commodity performance swap in which one leg pays out based on the return on a reference commodity index or commodity reference price. */ concept CommodityPerformanceSwap extends CommodityPerformanceSwapBase { } /** * A product with which to represent return swaps, total return swaps and excess return swaps. */ abstract concept CommodityPerformanceSwapBase extends Product { o String [] commodityPerformanceSwapLegGroup o Boolean commonPricing optional o CommodityBullionSettlementDisruptionEnum settlementDisruption optional } /** * */ concept CommodityPerformanceSwapEarlyTermination { } /** * Abstract base class for all commodity performance swap legs. */ abstract concept CommodityPerformanceSwapLeg extends Leg { } /** * The parameters for defining the expiration date(s) and time(s) for an American style option. */ concept CommodityPhysicalAmericanExercise extends Exercise { } /** * The parameters for defining the expiration date(s) and time(s) for a European style option. */ concept CommodityPhysicalEuropeanExercise extends Exercise { } /** * The parameters for defining how the physically-settled commodity option can be exercised and how it is settled. */ concept CommodityPhysicalExercise { o Boolean automaticExercise optional o Boolean writtenConfirmation optional } /** * A type defining the physical quantity of the commodity to be delivered. */ concept CommodityPhysicalQuantity extends CommodityPhysicalQuantityBase { } /** * An abstract base class for physical quantity types. */ abstract concept CommodityPhysicalQuantityBase { o String id optional } /** * The Quantity per Delivery Period. There must be a Quantity step specified for each Delivery Period, regardless of whether the Quantity changes or remains the same between periods. */ concept CommodityPhysicalQuantitySchedule { o String id optional } /** * The pipeline through which the physical commodity will be delivered. */ concept CommodityPipeline { o String value optional o String pipelineScheme optional } /** * The pipeline cycle during which the physical commodity will be delivered. */ concept CommodityPipelineCycle { o String value optional o String pipelineCycleScheme } /** * The commodity option premium payable by the buyer to the seller. */ concept CommodityPremium extends NonNegativePayment { } /** * The dates on which prices are observed for the underlyer. */ concept CommodityPricingDates { o CommodityDayTypeEnum dayType optional o Integer dayCount optional o DayOfWeekEnum[] dayOfWeek optional o Integer dayNumber optional o BusinessDayConventionEnum businessDayConvention optional o CalendarSourceEnum calendarSource optional o String id optional } /** * A scheme identifying the grade of physical commodity product to be delivered. */ concept CommodityProductGrade { o String value optional o String productGradeScheme optional } /** * A type for defining the frequency at which the Notional Quantity is deemed to apply for purposes of calculating the Total Notional Quantity. */ concept CommodityQuantityFrequency { o String value optional o String quantityFrequencyScheme optional } /** * The Expiration Dates of the trade relative to the Calculation Periods. */ concept CommodityRelativeExpirationDates { o String id optional } /** * The Payment Dates of the trade relative to the Calculation Periods. */ concept CommodityRelativePaymentDates { o CommodityPayRelativeToEnum payRelativeTo optional o String id optional } /** * */ concept CommodityReturnCalculation { o CommodityReturnCalculationFormulaEnum formula o Double initialPrice optional } /** * A type describing the return leg of a commodity return swap. */ concept CommodityReturnLeg extends CommodityPerformanceSwapLeg { o Boolean masterAgreementPaymentDates optional } /** * The notional quantity of electricity that applies to one or more groups of Settlement Periods. */ concept CommoditySettlementPeriodsNotionalQuantity extends CommodityNotionalQuantity { } /** * The notional quantity schedule of electricity that applies to one or more groups of Settlement Periods. */ concept CommoditySettlementPeriodsNotionalQuantitySchedule { } /** * The fixed price schedule for electricity that applies to one or more groups of Settlement Periods. */ concept CommoditySettlementPeriodsPriceSchedule { } /** * */ concept CommoditySpread extends Money { o Double spreadConversionFactor optional } /** * The Spread per Calculation Period. There must be a Spread specified for each Calculation Period, regardless of whether the Spread changes or remains the same between periods. */ concept CommoditySpreadSchedule { } /** * A type specifying the date from which the early termination clause can be exercised. */ concept CommodityStartingDate { } /** * The Strike Price per Unit per Calculation Period. There must be a Strike Price per Unit step specified for each Calculation Period, regardless of whether the Strike changes or remains the same between periods. */ concept CommodityStrikeSchedule { } /** * The commodity swap product model is designed to support fixed-float swaps, float-float swaps, fixed vs. physical swaps, float vs. physical swaps as well as, weather specific swaps. Its design is fully compatible with other FpML products and the product reuses standard common types. */ concept CommoditySwap extends Product { o String [] commoditySwapLegGroup optional o Boolean commonPricing optional o CommodityBullionSettlementDisruptionEnum settlementDisruption optional } /** * Abstract base class for all commodity swap legs */ abstract concept CommoditySwapLeg extends Leg { } /** * Commodity Swaption. */ concept CommoditySwaption extends Product { o PutCallEnum optionType o Boolean commonPricing optional o CommodityBullionSettlementDisruptionEnum settlementDisruption optional } /** * */ concept CommoditySwaptionUnderlying { o String [] commoditySwapLegGroup optional o Boolean commonPricing optional o CommodityBullionSettlementDisruptionEnum settlementDisruption optional } /** * The barrier which, when breached, triggers the knock-in or knock-out of the barrier option. */ concept CommodityTrigger { o Double levelQuantity optional o Double levelPercentage optional o TriggerTypeEnum triggerType } /** * The dates on which prices are observed for the underlyer. */ concept CommodityValuationDates { o CommodityDayTypeEnum dayType optional o Integer dayCount optional o DayOfWeekEnum[] dayOfWeek optional o Integer dayNumber optional o BusinessDayConventionEnum businessDayConvention optional o CalendarSourceEnum calendarSource optional o String id optional } /** * */ concept CommodityVarianceCalculation { o Double annualizationFactor o Boolean nAdjustment } /** * A type describing the variance leg of a commodity variance swap. */ concept CommodityVarianceLeg extends CommodityPerformanceSwapLeg { o Boolean masterAgreementPaymentDates optional o Double varianceStrikePrice optional o Double volatilityStrikePrice optional } /** * Specifies the conditions to be applied for converting into a reference currency when the actual currency rate is not determined upfront. */ concept Composite { } /** * Specifies the compounding method and the compounding rate. */ concept Compounding { o CompoundingMethodEnum compoundingMethod optional o Double compoundingSpread optional } /** * The frequency at which a rate is compounded. */ concept CompoundingFrequency { o String value optional o String compoundingFrequencyScheme optional } /** * A type defining a compounding rate. The compounding interest can either point back to the floating rate calculation of interest calculation node on the Interest Leg, or be defined specifically. */ concept CompoundingRate { } /** * A type that shows how multiple trades have been combined into a result. */ concept CompressionActivity { } /** * A type that identifies the type of trade amalgamation, for example netting or portfolio compression. */ concept CompressionType { o String value optional o String compressionTypeScheme optional } /** * A message indicating that a confirmation has been agreed by a counterparty. */ concept ConfirmationAgreed extends ResponseMessage { o String additionalEventGroup optional } /** * A message indicating that a confirmation has not been agreed by a counterparty. */ concept ConfirmationDisputed extends ResponseMessage { o String additionalEventGroup optional } /** * A type used to represent the type of mechanism that can be used to confirm a trade. */ concept ConfirmationMethod { o String value optional o String confirmationMethodScheme optional } /** * A message indicating that a confirmation request has been withdrawn by the submitter. */ concept ConfirmationRetracted extends NonCorrectableRequestMessage { o String additionalEventGroup optional } /** * Message for sending matching results. Response message that returns the status of an event that have been submitted for matching. */ concept ConfirmationStatus extends ResponseMessage { } /** * A message indicating that the sender grants consent for the recipient to perform the requested action. */ concept ConsentGranted extends ResponseMessage { o String additionalEventGroup optional } /** * A message indicating that the sender does not grant consent for the recipient to perform the requested action. */ concept ConsentRefused extends ResponseMessage { o String additionalEventGroup optional } /** * A type describing the weight of each of the underlyer constituent within the basket, either in absolute or relative terms. */ concept ConstituentWeight { o Double openUnits optional o Double basketPercentage optional } /** * A type that represents how to contact an individual or organization. */ concept ContactInformation { o String [] email optional } /** * A contact id identifier allocated by a party. FpML does not define the domain values associated with this element. */ concept ContractId { o String value optional o String contractIdScheme o String id optional } /** * A type defining a contract identifier issued by the indicated party. */ concept ContractIdentifier { o String id optional } /** * The definitions, such as those published by ISDA, that will define the terms of the trade. */ concept ContractualDefinitions { o String value optional o String contractualDefinitionsScheme optional } /** * */ concept ContractualMatrix { o DateTime publicationDate optional } /** * A contractual supplement (such as those published by ISDA) that will apply to the trade. */ concept ContractualSupplement { o String value optional o String contractualSupplementScheme optional } /** * A contractual supplement (such as those published by ISDA) and its publication date that will apply to the trade. */ concept ContractualTermsSupplement { o DateTime publicationDate optional } /** * */ concept ConvertibleBond extends Bond { o DateTime redemptionDate optional } /** * A structure indicating that a trade has changed due to a corporate action */ concept CorporateActionEvent extends ChangeEvent { } /** * A type that describes what type of corporate action occurred. */ concept CorporateActionType { o String value optional o String corporateActionScheme optional } /** * A type defining the content model for a request message that can be subsequently corrected or retracted. */ concept CorrectableRequestMessage extends RequestMessage { o Boolean isCorrection o Integer sequenceNumber optional } /** * A type describing the correlation amount of a correlation swap. */ concept Correlation extends CalculationFromObservation { o CorrelationValue correlationStrikePrice o Integer numberOfDataSeries optional } /** * Correlation Amount. */ concept CorrelationAmount extends CalculatedAmount { } /** * A type defining a correlation identifier and qualifying scheme */ concept CorrelationId { o String value optional o String correlationIdScheme } /** * A type describing return which is driven by a Correlation calculation. */ concept CorrelationLeg extends DirectionalLegUnderlyerValuation { } /** * A Correlation Swap modelled using a single netted leg. */ concept CorrelationSwap extends NettedSwapBase { } /** * A type that describes the information to identify a correspondent bank that will make delivery of the funds on the paying bank's behalf in the country where the payment is to be made. */ concept CorrespondentInformation { } /** * The code representation of a country or an area of special sovereignty. By default it is a valid 2 character country code as defined by the ISO standard 3166-1 alpha-2 - Codes for representation of countries http://www.niso.org/standards/resources/3166.html. */ concept CountryCode { o String value optional o String countryScheme optional } /** * Defines a scheme of values for specifiying if the bond has a variable coupon, step-up/down coupon or a zero-coupon. */ concept CouponType { o String value optional o String couponTypeScheme optional } /** * A generic credit curve definition. */ concept CreditCurve extends PricingStructure { o Boolean secured optional } /** * A set of credit curve values, which can include pricing inputs (which are typically credit spreads), default probabilities, and recovery rates. */ concept CreditCurveValuation extends PricingStructureValuation { o Double recoveryRate optional } /** * */ concept CreditDefaultSwap extends Product { o String [] group optional } /** * A complex type to support the credit default swap option. */ concept CreditDefaultSwapOption extends OptionBaseExtended { } /** * */ concept CreditDerivativesNotices { o Boolean creditEvent o Boolean publiclyAvailableInformation o Boolean physicalSettlement } /** * A credit arrangement used in support of swaps trading. */ concept CreditDocument { o String value optional o String creditDocumentScheme optional } /** * */ concept CreditEvent { } /** * */ concept CreditEventNotice { } /** * An event type that records the occurrence of a credit event notice. */ concept CreditEventNoticeDocument { o String creditEventGroup o DateTime creditEventNoticeDate o DateTime creditEventDate } /** * A message type defining the ISDA defined Credit Event Notice. ISDA defines it as an irrevocable notice from a Notifying Party to the other party that describes a Credit Event that occurred. A Credit Event Notice must contain detail of the facts relevant to the determination that a Credit Event has occurred. */ concept CreditEventNotification extends CorrectableRequestMessage { } /** * A message type retracting a previous credit event notification. */ concept CreditEventNotificationRetracted extends NonCorrectableRequestMessage { } /** * */ concept CreditEvents { o Boolean bankruptcy optional o Boolean failureToPayPrincipal optional o Boolean failureToPayInterest optional o Boolean obligationDefault optional o Boolean obligationAcceleration optional o Boolean repudiationMoratorium optional o Boolean governmentalIntervention optional o Boolean distressedRatingsDowngrade optional o Boolean maturityExtension optional o Boolean writedown optional o Boolean impliedWritedown optional o String id optional } /** * Reference to credit events. */ concept CreditEventsReference extends Reference { } /** * A structure describing a credit limit with applicability constraints. */ concept CreditLimit extends CreditLimitBase { o DateTime expirationDate optional } /** * A structure describing a basic credit limit. */ concept CreditLimitBase { } /** * */ concept CreditLimitInformation { o LimitModelEnum limitModel } /** * */ concept CreditLimitUtilization { } /** * */ concept CreditLimitUtilizationPosition { o Double short optional o Double long optional o Double global optional o Double global1 optional } /** * A complex type to specify the strike of a credit swaption or a credit default swap option. */ concept CreditOptionStrike { o Double spread optional o Double price optional } /** * A party's credit rating. */ concept CreditRating { o String value optional o String creditRatingScheme optional } /** * The repayment precedence of a debt instrument. */ concept CreditSeniority { o String value optional o String creditSeniorityScheme optional } /** * The agreement executed between the parties and intended to govern collateral arrangement for all OTC derivatives transactions between those parties. */ concept CreditSupportAgreement { o DateTime date } /** * */ concept CreditSupportAgreementIdentifier { o String value optional o String creditSupportAgreementIdScheme optional } /** * */ concept CreditSupportAgreementType { o String value optional o String creditSupportAgreementTypeScheme optional } /** * */ concept CrossCurrencyMethod { o QuotationRateTypeEnum quotationRateType } /** * A type that is used for including the currency exchange rates used to cross between the traded currencies for non-base currency FX contracts. */ concept CrossRate extends QuotedCurrencyPair { o Double rate o Double spotRate optional o Double forwardPoints optional } /** * The code representation of a currency or fund. By default it is a valid currency code as defined by the ISO standard 4217 - Codes for representation of currencies and funds http://www.iso.org/iso/en/prods-services/popstds/currencycodeslist.html. */ concept Currency { o String value optional o String currencyScheme optional } /** * A type containing a code representing the risk classification of a currency pair, as specified by a regulator. */ concept CurrencyPairClassification { o String value optional o String currencyPairClassificationScheme optional o String id optional } /** * */ concept CurrentContractsType { } /** * Allows for an option expiry cut time to be described by name, as per established market convention. Note: the FX Working Group has resolved not to extend the cutNameScheme coding scheme. The expiryTime element should be used in preference to cutName as the formal definition of FX option expiry time. */ concept CutName { o String value optional o String cutNameScheme optional } /** * A type defining a content model that is backwards compatible with older FpML releases and which can be used to contain sets of data without expressing any processing intention. */ concept DataDocument extends Document { } /** * Specify as applicable. Parties may wish to refer to the state meteorological authority in a particular location or to an exchange or other third party data provider. Parties may find the definitions in the Commodity Definitions useful as a means of identifying potential Data Providers. */ concept DataProvider { o String value optional o String id optional o String weatherDataProviderScheme optional } /** * List of Dates */ concept DateList { o DateTime [] date } /** * A type defining an offset used in calculating a date when this date is defined in reference to another date through a date offset. The type includes the convention for adjusting the date and an optional sequence element to indicate the order in a sequence of multiple date offsets. */ concept DateOffset extends Offset { o BusinessDayConventionEnum businessDayConvention } /** * A type defining a contiguous series of calendar dates. The date range is defined as all the dates between and including the first and the last date. The first date must fall before the last date. */ concept DateRange { o DateTime unadjustedFirstDate o DateTime unadjustedLastDate } /** * Reference to an identified date or a complex date structure. */ concept DateReference extends Reference { o String href } /** * A type to provide the ability to point to multiple payment nodes in the document through the unbounded paymentDatesReference. */ concept DateRelativeToCalculationPeriodDates { } /** * A type to provide the ability to point to multiple payment nodes in the document through the unbounded paymentDatesReference. */ concept DateRelativeToPaymentDates { } /** * List of DateTimes */ concept DateTimeList { o DateTime [] dateTime } /** * The specification for how the number of days between two dates is calculated for purposes of calculation of a fixed or floating payment amount and the basis for how many days are assumed to be in a year. Day Count Fraction is an ISDA term. The equivalent AFB (Association Francaise de Banques) term is Calculation Basis. */ concept DayCountFraction { o String value optional o String dayCountFractionScheme optional } /** * A syndicated bank loan deal (credit agreement) definition. */ concept Deal extends DealSummary { o String [] facilityGroupGroup } /** * A unique reference to a syndicated bank loan deal (credit agreement). */ concept DealIdentifier extends IdentifiedAsset { } /** * A full set of deal and facility definitions valid as of a specific date. */ concept DealStatement extends AbstractLoanStatement { } /** * A short form of a deal. */ concept DealSummary extends DealIdentifier { o DateTime creditAgreementDate } /** * A structure describing a declear event. The deClear event allows a firm to request that a trade be removed from clearing, or a clearing service to request consent for this, or to report that is has been done. */ concept DeClear { o DateTime effectiveDate } /** * A type that describes why a trade was removed from clearing. */ concept DeclearReason { o String value optional o String declearReasonScheme optional } /** * A set of default probabilities. */ concept DefaultProbabilityCurve extends PricingStructureValuation { } /** * An event representing a change in the default rate, applicable to outstanding loans in the event that the borrower is declared to be in default. */ concept DefaultRateChange extends FacilityRateChangeEvent { } /** * An event representing expiration of the default rate applicable to borrowers in default. */ concept DefaultRateExpiry extends AbstractFacilityContractEvent { } /** * A facility which can be drawn at any point during a pre-defined period after the initial deal closing date, */ concept DelayedDraw extends AbstractFacility { o Boolean delayedDraw o DateTime mustDrawByDate optional } /** * */ concept DeliverableObligations { o Boolean accruedInterest optional o ObligationCategoryEnum category optional o Boolean notSubordinated optional o Boolean notSovereignLender optional o Boolean notDomesticLaw optional o Boolean listed optional o Boolean notContingent optional o Boolean notDomesticIssuance optional o Boolean transferable optional o Boolean acceleratedOrMatured optional o Boolean notBearer optional o Boolean fullFaithAndCreditObLiability optional o Boolean generalFundObligationLiability optional o Boolean revenueObligationLiability optional o String excluded optional o String othReferenceEntityObligations optional } /** * Specifies delivery methods for securities transactions. This coding-scheme defines the possible delivery methods for securities. */ concept DeliveryMethod { o String value optional o String deliveryMethodScheme optional } /** * A type defines nearest Delivery Date of the underlying Commodity of expiration of the futures contract. */ concept DeliveryNearby { o Integer deliveryNearbyMultiplier o DeliveryNearbyTypeEnum deliveryNearbyType o String id optional } /** * The type defining a denominator term of the formula. Its value is (sum of weighted partials) ^ power. */ concept DenominatorTerm { o Integer power } /** * */ concept Deposit extends UnderlyingAsset { } /** * The method by which a derivative is computed. */ concept DerivativeCalculationMethod { o String value optional o String derivativeCalculationMethodScheme optional } /** * A description of how a numerical derivative is computed. */ concept DerivativeCalculationProcedure { o Double perturbationAmount optional o Boolean averaged optional o String derivativeFormula optional } /** * A formula for computing a complex derivative from partial derivatives. Its value is the sum of the terms divided by the product of the denominator terms. */ concept DerivativeFormula { } /** * Coding scheme that specifies the method according to which an amount or a date is determined. */ concept DeterminationMethod { o String value optional o String determinationMethodScheme optional o String id optional } /** * A reference to the return swap notional determination method. */ concept DeterminationMethodReference extends Reference { } /** * An abstract base class for all directional leg types with effective date, termination date, where a payer makes a stream of payments of greater than zero value to a receiver. */ abstract concept DirectionalLeg extends Leg { } /** * An abstract base class for all directional leg types with effective date, termination date, and underlyer where a payer makes a stream of payments of greater than zero value to a receiver. */ abstract concept DirectionalLegUnderlyer extends DirectionalLeg { o SettlementTypeEnum settlementType optional } /** * An abstract base class for all directional leg types with effective date, termination date, and underlyer, where a payer makes a stream of payments of greater than zero value to a receiver. */ abstract concept DirectionalLegUnderlyerValuation extends DirectionalLegUnderlyer { } /** * A type defining discounting information. The 2000 ISDA definitions, section 8.4. discounting (related to the calculation of a discounted fixed amount or floating amount) apply. This type must only be included if discounting applies. */ concept Discounting { o DiscountingTypeEnum discountingType o Double discountRate optional } /** * A Disruption Fallback. */ concept DisruptionFallback { o String value optional o String commodityMarketDisruptionFallbackScheme optional } /** * Container for Dividend Adjustment Periods, which are used to calculate the Deviation between Expected Dividend and Actual Dividend in that Period. */ concept DividendAdjustment { } /** * A type describing the conditions governing the payment of dividends to the receiver of the equity return. With the exception of the dividend payout ratio, which is defined for each of the underlying components. */ concept DividendConditions { o Boolean dividendReinvestment optional o DividendEntitlementEnum dividendEntitlement optional o DividendAmountTypeEnum dividendAmount optional o DividendPeriodEnum dividendPeriod optional o DividendAmountTypeEnum excessDividendAmount optional o Double numberOfIndexUnits optional o Double declaredCashDividendPercentage optional o Double declaredCashEquivalentDividendPercentage optional o NonCashDividendTreatmentEnum nonCashDividendTreatment optional o DividendCompositionEnum dividendComposition optional o Boolean specialDividends optional } /** * Floating Payment Leg of a Dividend Swap. */ concept DividendLeg extends DirectionalLegUnderlyer { o Double declaredCashDividendPercentage optional o Double declaredCashEquivalentDividendPercentage optional o Boolean specialDividends optional o Boolean materialDividend optional } /** * A type describing the date on which the dividend will be paid/received. This type is also used to specify the date on which the FX rate will be determined, when applicable. */ concept DividendPaymentDate { o DividendDateReferenceEnum dividendDateReference optional } /** * 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. */ concept DividendPayout { o Double dividendPayoutRatio optional o Double dividendPayoutRatioCash optional o Double dividendPayoutRatioNonCash optional o String dividendPayoutConditions optional } /** * Abstract base class of all time bounded dividend period types. */ abstract concept DividendPeriod { o String id optional } /** * A time bounded dividend period, with an expected dividend for each period. */ concept DividendPeriodDividend extends DividendPeriod { o Double multiplier } /** * A time bounded dividend period, with fixed strike and a dividend payment date per period. */ concept DividendPeriodPayment extends DividendPeriod { o Double fixedStrike } /** * */ concept DividendSwapOptionTransactionSupplement extends OptionBase { o Boolean exchangeLookAlike optional o MethodOfAdjustmentEnum methodOfAdjustment optional o Double optionEntitlement optional o Double multiplier optional } /** * A Dividend Swap Transaction Supplement. */ concept DividendSwapTransactionSupplement extends Product { o Boolean multipleExchangeIndexAnnexFallback optional o Boolean componentSecurityIndexAnnexFallback optional } /** * The abstract base type from which all FpML compliant messages and documents must be derived. */ abstract concept Document { o Integer actualBuild optional o Integer expectedBuild optional o String fpmlVersion } /** * An entity for defining the definitions that govern the document and should include the year and type of definitions referenced, along with any relevant documentation (such as master agreement) and the date it was signed. */ concept Documentation { } /** * Describes the parameters for a dual currency option transaction. */ concept DualCurrencyFeature { o DateTime fixingDate o Double spotRate optional o Boolean interestAtRisk } /** * A type that describes the rate of exchange at which the embedded option in a Dual Currency Deposit has been struck. */ concept DualCurrencyStrikePrice { o Double rate o DualCurrencyStrikeQuoteBasisEnum strikeQuoteBasis } /** * A type to define the adjusted dates associated with an early termination provision. */ concept EarlyTerminationEvent { o DateTime adjustedExerciseDate o DateTime adjustedEarlyTerminationDate o DateTime adjustedCashSettlementValuationDate o DateTime adjustedCashSettlementPaymentDate o DateTime adjustedExerciseFeePaymentDate optional o String id optional } /** * A type defining an early termination provision for a swap. This early termination is at fair value, i.e. on termination the fair value of the product must be settled between the parties. */ concept EarlyTerminationProvision { o String id optional } /** * Excess Emission Penalty related parameters. */ concept EEPParameters { o Boolean eEPApplicable o Boolean equivalentApplicable o Boolean penaltyApplicable } /** * TBD. */ concept EEPRiskPeriod { o DateTime startDate o DateTime endDate } /** * The physical delivery conditions for electricity. */ concept ElectricityDelivery { } /** * The physical delivery obligation options specific to a firm transaction. */ concept ElectricityDeliveryFirm { o Boolean forceMajeure } /** * A scheme identifying the types of the Delivery Point for a physically settled electricity trade. */ concept ElectricityDeliveryPoint { o String value optional o String deliveryPointScheme optional } /** * The physical delivery obligation options specific to a system firm transaction. */ concept ElectricityDeliverySystemFirm { o Boolean applicable } /** * */ concept ElectricityDeliveryType { o Boolean nonFirm optional } /** * The physical delivery obligation options specific to a unit firm transaction. */ concept ElectricityDeliveryUnitFirm { o Boolean applicable } /** * A type defining the physical quantity of the electricity to be delivered. */ concept ElectricityPhysicalDeliveryQuantity extends CommodityNotionalQuantity { } /** * Allows the documentation of a shaped quantity trade where the quantity changes over the life of the transaction. */ concept ElectricityPhysicalDeliveryQuantitySchedule extends CommodityPhysicalQuantitySchedule { } /** * Physically settled leg of a physically settled electricity transaction. */ concept ElectricityPhysicalLeg extends PhysicalSwapLeg { o LoadTypeEnum loadType optional } /** * The quantity of gas to be delivered. */ concept ElectricityPhysicalQuantity extends CommodityPhysicalQuantityBase { } /** * The specification of the electricity to be delivered. */ concept ElectricityProduct { o ElectricityProductTypeEnum type o Double voltage optional } /** * A structure to specify the tranmission contingency and the party that bears the obligation. */ concept ElectricityTransmissionContingency { } /** * The type of transmission contingency, i.e. what portion of the transmission the delivery obligations are applicable. */ concept ElectricityTransmissionContingencyType { o String value optional o String electricityTransmissionContingencyScheme optional } /** * A special type meant to be used for elements with no content and no attributes. */ concept Empty { } /** * Records supporting information justifying an end user exception under 17 CFR part 39. */ concept EndUserExceptionDeclaration { } /** * A type describing the entity of a party, for example Financial, NonFinancial etc. */ concept EntityClassification { o String value optional o String entityClassificationScheme optional } /** * A legal entity identifier (e.g. RED entity code). */ concept EntityId { o String value optional o String entityIdScheme optional } /** * The name of the reference entity. A free format string. FpML does not define usage rules for this element. */ concept EntityName { o String value optional o String entityNameScheme optional } /** * Defines a coding scheme of the entity types defined in the ISDA First to Default documentation. */ concept EntityType { o String value optional o String entityTypeScheme optional } /** * The environmental physical leg describes the nature of the physical underlying, quantities and delivery conditions relating to environmental allowances and certificates such as EU emissions allowances, water pollution credits and the like. */ concept EnvironmentalPhysicalLeg extends PhysicalSwapLeg { o EnvironmentalAbandonmentOfSchemeEnum abandonmentOfScheme optional o Boolean failureToDeliverApplicable optional } /** * A type defining the characteristics of the environmental allowance or credit being traded. Settlement of environmental transactions is classified as physical because settlement is accomplished through the exchange of one or more certificates (despite the fact that this exchange is almost always executed through electronic book entry transfer between the parties allowance accounts). */ concept EnvironmentalProduct { o EnvironmentalProductTypeEnum productType o DateTime [] vintage optional } /** * TBD. */ concept EnvironmentalProductApplicableLaw { o String value optional o String environmentalProductApplicableLawScheme optional } /** * */ concept EnvironmentalProductComplaincePeriod { o DateTime startYear o DateTime endYear } /** * For US Emissions Allowance Transactions. A system where all electronic certificates are stored and emissions are tracked. */ concept EnvironmentalTrackingSystem { o String value optional o String commodityEnvironmentalTrackingSystemScheme optional } /** * A type for defining exercise procedures associated with an American style exercise of an equity option. This entity inherits from the type SharedAmericanExercise. */ concept EquityAmericanExercise extends SharedAmericanExercise { o TimeTypeEnum latestExerciseTimeType optional o TimeTypeEnum equityExpirationTimeType optional } /** * An exchange traded equity asset. */ concept EquityAsset extends ExchangeTraded { } /** * A type for defining exercise procedures associated with a Bermuda style exercise of an equity option. The term Bermuda is adopted in FpML for consistency with the ISDA Definitions. */ concept EquityBermudaExercise extends SharedAmericanExercise { o TimeTypeEnum latestExerciseTimeType optional o TimeTypeEnum equityExpirationTimeType optional } /** * A type for defining the merger events and their treatment. */ concept EquityCorporateEvents { o ShareExtraordinaryEventEnum shareForShare o ShareExtraordinaryEventEnum shareForOther o ShareExtraordinaryEventEnum shareForCombined } /** * A type for defining the common features of equity derivatives. */ abstract concept EquityDerivativeBase extends Product { o EquityOptionTypeEnum optionType o DateTime equityEffectiveDate optional } /** * type for defining the common features of equity derivatives. */ abstract concept EquityDerivativeLongFormBase extends EquityDerivativeBase { o MethodOfAdjustmentEnum methodOfAdjustment } /** * A type for defining short form equity option basic features. */ abstract concept EquityDerivativeShortFormBase extends EquityDerivativeBase { o Double spotPrice optional o Double numberOfOptions } /** * A type for defining exercise procedures associated with a European style exercise of an equity option. */ concept EquityEuropeanExercise extends Exercise { o TimeTypeEnum equityExpirationTimeType optional } /** * A type for defining exercise procedures for equity options. */ concept EquityExerciseValuationSettlement { o Boolean automaticExercise optional o SettlementTypeEnum settlementType } /** * A type for defining equity forwards. */ concept EquityForward extends EquityDerivativeLongFormBase { } /** * A type for defining the multiple exercise provisions of an American or Bermuda style equity option. */ concept EquityMultipleExercise { o Double integralMultipleExercise optional o Double minimumNumberOfOptions o Double maximumNumberOfOptions } /** * A type for defining equity options. */ concept EquityOption extends EquityDerivativeLongFormBase { o Double spotPrice optional o Double numberOfOptions optional o Double optionEntitlement } /** * A type for defining equity option transaction supplements. */ concept EquityOptionTransactionSupplement extends EquityDerivativeShortFormBase { o Boolean exchangeLookAlike optional o Boolean exchangeTradedContractNearest optional o Boolean multipleExchangeIndexAnnexFallback optional o Boolean componentSecurityIndexAnnexFallback optional o MethodOfAdjustmentEnum methodOfAdjustment optional o Double optionEntitlement optional o Double multiplier optional } /** * A type used to describe the amount paid for an equity option. */ concept EquityPremium extends PaymentBase { o PremiumTypeEnum premiumType optional o Boolean swapPremium optional o Double percentageOfNotional optional } /** * A type for defining the strike price for an equity option. The strike price is either: (i) in respect of an index option transaction, the level of the relevant index specified or otherwise determined in the transaction; or (ii) in respect of a share option transaction, the price per share specified or otherwise determined in the transaction. This can be expressed either as a percentage of notional amount or as an absolute value. */ concept EquityStrike { o Double strikePrice optional o Double strikePercentage optional } /** * A type for defining Equity Swap Transaction Supplement */ concept EquitySwapTransactionSupplement extends ReturnSwapBase { o Boolean mutualEarlyTermination optional o Boolean optionalEarlyTermination optional o EarlyTerminationDateEnum optionalEarlyTerminationDate optional o Boolean breakFundingRecovery optional o FeeElectionEnum breakFeeElection optional o Double breakFeeRate optional o Boolean multipleExchangeIndexAnnexFallback optional o Boolean componentSecurityIndexAnnexFallback optional } /** * A type for defining how and when an equity option is to be valued. */ concept EquityValuation { o TimeTypeEnum valuationTimeType optional o Boolean futuresPriceValuation optional o Boolean optionsPriceValuation optional o Integer numberOfValuationDates optional o FPVFinalPriceElectionFallbackEnum fPVFinalPriceElectionFallback optional o String id optional } /** * A type defining the exercise period for a European style option together with any rules governing the notional amount of the underlying which can be exercised on any given exercise date and any associated exercise fees. */ concept EuropeanExercise extends Exercise { } /** * A post-trade event reference identifier allocated by a party. FpML does not define the domain values associated with this element. Note that the domain values for this element are not strictly an enumerated list. */ concept EventId { o String value optional o String eventIdScheme optional o String id optional } /** * Identification of a business event, for example through its correlation id or a business identifier. */ concept EventIdentifier { o Integer sequenceNumber optional } /** * A type that identifies a party profile record. */ concept EventInstructionOverride { } /** * A structure that represents the prepayment structure associated within a facility. */ concept EventPayment extends Payment { o String [] group optional } /** * A structure that describes a proposed match between trades or post-trade event reports. */ concept EventProposedMatch { o String additionalEventGroup optional o Double matchScore optional } /** * Defines the structure for a message acknowledging an event request. */ concept EventRequestAcknowledgement extends ResponseMessage { } /** * */ concept EventsChoice { o String additionalEventGroup optional } /** * A coding scheme used to describe the matching/confirmation status of a trade, post-trade event, position, or cash flows. */ concept EventStatus { o String value optional o String eventStatusScheme optional } /** * A type used in event status enquiry messages which relates an event identifier to its current status value. */ concept EventStatusItem { } /** * A type defining the content model for a message normally generated in response to a requestEventStatus request. */ concept EventStatusResponse extends ResponseMessage { } /** * A struture that represents an evergreen option that is available within a letter of credit instrument. */ concept EvergreenOption { } /** * A type defining the basic content for a message sent to inform another system that some exception has been detected. */ concept Exception extends Message { o Integer sequenceNumber optional } /** * A type defining the content model for an exception message header. */ concept ExceptionMessageHeader extends MessageHeader { o DateTime creationTimestamp o DateTime expiryTimestamp optional } /** * A short form unique identifier for an exchange. If the element is not present then the exchange shall be the primary exchange on which the underlying is listed. The term "Exchange" is assumed to have the meaning as defined in the ISDA 2002 Equity Derivatives Definitions. */ concept ExchangeId { o String value optional o String exchangeIdScheme optional } /** * A type that is used for describing the exchange rate for a particular transaction. */ concept ExchangeRate { o Double rate o Double spotRate optional o Double forwardPoints optional o PointValue pointValue optional } /** * An abstract base class for all exchange traded financial products. */ abstract concept ExchangeTraded extends UnderlyingAsset { } /** * Abstract base class for all exchange traded financial products with a price which is calculated from exchange traded constituents. */ abstract concept ExchangeTradedCalculatedPrice extends ExchangeTraded { } /** * An exchange traded derivative contract. */ concept ExchangeTradedContract extends ExchangeTraded { o Double multiplier optional o String contractReference optional } /** * A type describing a single underlyer */ concept ExchangeTradedContractUnderlyer { o String [] underlyingAssetGroup optional } /** * An exchange traded fund whose price depends on exchange traded constituents. */ concept ExchangeTradedFund extends ExchangeTradedCalculatedPrice { o String fundManager optional } /** * An exchange traded option. */ concept ExchangeTradedOption extends ExchangeTradedContract { o Double strike optional o PutCallEnum optionType optional o ExerciseStyleEnum exerciseStyle optional o SettlementTypeEnum settlementType optional } /** * A message advising a third party that a trade execution has occurred. */ concept ExecutionAdvice extends CorrectableRequestMessage { o String additionalEventGroup optional } /** * A message that withdraws an advice to a third party that a trade execution has occurred. */ concept ExecutionAdviceRetracted extends NonCorrectableRequestMessage { o String additionalEventGroup optional } /** * A type defining the trade execution date time and the source of it. For use inside containing types which already have a Reference to a Party that has assigned this trade execution date time. */ concept ExecutionDateTime { o DateTime value optional o String executionDateTimeScheme optional } /** * A message notifying a party that a trade execution has occurred. (Typically this is sent by an execution platform to a participant.) */ concept ExecutionNotification extends CorrectableRequestMessage { o String additionalEventGroup optional } /** * A message retracting a notification to a party that a trade execution has occurred. (Typically this is sent by an execution platform to a participant.) */ concept ExecutionRetracted extends NonCorrectableRequestMessage { o String additionalEventGroup optional } /** * A type used to represent the type of market where a trade can be executed. */ concept ExecutionType { o String value optional o String executionTypeScheme optional } /** * A type used to represent the type of market where a trade can be executed. */ concept ExecutionVenueType { o String value optional o String executionVenueTypeScheme optional } /** * The abstract base class for all types which define way in which options may be exercised. */ concept Exercise { o String id optional } /** * A type defining the adjusted dates associated with a particular exercise event. */ concept ExerciseEvent { o DateTime adjustedExerciseDate o DateTime adjustedRelevantSwapEffectiveDate o DateTime adjustedCashSettlementValuationDate optional o DateTime adjustedCashSettlementPaymentDate optional o DateTime adjustedExerciseFeePaymentDate optional o String id optional } /** * A type defining the fee payable on exercise of an option. This fee may be defined as an amount or a percentage of the notional exercised. */ concept ExerciseFee { o Double feeAmount optional o Double feeRate optional } /** * A type to define a fee or schedule of fees to be payable on the exercise of an option. This fee may be defined as an amount or a percentage of the notional exercised. */ concept ExerciseFeeSchedule { } /** * A type defining to whom and where notice of execution should be given. The partyReference refers to one of the principal parties of the trade. If present the exerciseNoticePartyReference refers to a party, other than the principal party, to whome notice should be given. */ concept ExerciseNotice { } /** * This defines the time interval to the start of the exercise period, i.e. the earliest exercise date, and the frequency of subsequent exercise dates (if any). */ concept ExercisePeriod { o String id optional } /** * A type describing how notice of exercise should be given. This can be either manual or automatic. */ concept ExerciseProcedure { o Boolean followUpConfirmation o Boolean limitedRightToConfirm optional o Boolean splitTicket optional } /** * A type describing how notice of exercise should be given. This can be either manual or automatic. */ concept ExerciseProcedureOption { } /** * A type defining an option to extend an existing swap transaction on the specified exercise dates for a term ending on the specified new termination date. */ concept ExtendibleProvision { o String exerciseGroup o Boolean followUpConfirmation } /** * A type defining the adjusted dates associated with a provision to extend a swap. */ concept ExtendibleProvisionAdjustedDates { } /** * A type to define the adjusted dates associated with an individual extension event. */ concept ExtensionEvent { o DateTime adjustedExerciseDate o DateTime adjustedExtendedTerminationDate o String id optional } /** * Where the underlying is shares, defines market events affecting the issuer of those shares that may require the terms of the transaction to be adjusted. */ concept ExtraordinaryEvents { o Boolean tenderOffer optional o Boolean compositionOfCombinedConsideration optional o Boolean failureToDeliver optional o NationalisationOrInsolvencyOrDelistingEventEnum nationalisationOrInsolvency optional o NationalisationOrInsolvencyOrDelistingEventEnum delisting optional } /** * A structure that represents the commitment amount against a facility or facility portion. Also shows the utilization levels against the total commitment amount (in facility currency). */ concept FacilityCommitment { } /** * A unique identifier for outstanding contracts. */ concept FacilityContractIdentifier extends ContractIdentifier { } /** * Provides supporting evidence when a party invoked exception to not execute the trade on facility such as SEF and DCM even though the particular product is mandated to execute on a SEF. */ concept FacilityExecutionExceptionDeclaration { o String [] reason optional } /** * This fee represents any fee paid by the borrower to the syndicate lenders for extending an existing facility. */ concept FacilityExtensionFeePayment extends NonRecurringFeePayment { } /** * A list of facility features. */ concept FacilityFeature { o String value optional o String facilityFeatureScheme optional } /** * A unique identifier to a facility. */ concept FacilityIdentifier extends IdentifiedAsset { } /** * A loan servicing notification which can be used to communicate any facility-level business event. */ concept FacilityNotification extends AbstractFacilityNotification { o String facilityEventGroupGroup } /** * A structure that represents current/prior facility commitment and outstanding amounts on both the global and lender position levels. */ concept FacilityOutstandingsPosition extends FacilityPosition { } /** * A structure that represents position details (including outstandings) for a single facility. Positions can be stated at the global and (optionally) at the lender-specific level. */ concept FacilityOutstandingsPositionStatement extends AbstractLoanStatement { o String [] loanContractDetailsModel optional } /** * A structure that represents current/prior facility commitment amounts on both the global and lender position levels. */ concept FacilityPosition { } /** * A statement containing the commitment amounts for a single facility at the global and (optionally) the lender postion levels, on a specific date. */ concept FacilityPositionStatement extends AbstractLoanStatement { } /** * An event describing changes in a facility-level rate. */ abstract concept FacilityRateChangeEvent extends AbstractFacilityContractEvent { } /** * A loan servicing notification used to communicate changes in facility-level rates (e.g. penalty rate, default rate etc.). */ concept FacilityRateChangeNotification extends AbstractFacilityNotification { o String facilityRateChangeGroupGroup o String [] loanContractDetailsModel optional } /** * A reference to a facility. */ concept FacilityReference extends Reference { o String href } /** * A single facility definition stated as of a certain date. */ concept FacilityStatement extends AbstractLoanStatement { o String facilityGroupGroup } /** * A short form of a facility. */ concept FacilitySummary extends FacilityIdentifier { o DateTime startDate o DateTime expiryDate optional o DateTime maturityDate optional } /** * An event describing the early termination of a facility. */ concept FacilityTermination extends AbstractFacilityEvent { } /** * A type describing the type of loan facility. */ concept FacilityType { o String value optional o String facilityTypeScheme optional } /** * */ concept FailureToPay { o Boolean applicable } /** * */ concept FailureToPayEvent extends CreditEvent { } /** * The method, prioritzed by the order it is listed in this element, to get a replacement rate for the disrupted settlement rate option. */ concept FallbackReferencePrice { } /** * Payment made following trigger occurence. */ concept FeaturePayment extends PaymentBase { o Double levelPercentage optional o Double amount optional o TimeTypeEnum time optional } /** * */ concept FeeLeg extends Leg { o Double marketFixedRate optional o Boolean paymentDelay optional o Double initialPoints optional o Double marketPrice optional o QuotationStyleEnum quotationStyle optional } /** * An abstract type that specifies an underlying fixed rate cash accrual option. */ abstract concept FeeRateOptionBase extends AccrualOptionBase { o Double rate } /** * A type to define business date convention adjustment to final payment period per leg. */ concept FinalCalculationPeriodDateAdjustment { o BusinessDayConventionEnum businessDayConvention } /** * The common components of a financially settled leg of a Commodity Swap. This is an abstract type and should be extended by commodity-specific types. */ abstract concept FinancialSwapLeg extends CommoditySwapLeg { } /** * */ concept FirstPeriodStartDate { o DateTime value optional } /** * */ concept FixedAmountCalculation { } /** * Fixed payment amount within a Dividend Swap. */ concept FixedPaymentAmount extends PaymentBase { } /** * Fixed Payment Leg of a Dividend Swap. */ concept FixedPaymentLeg extends DirectionalLeg { } /** * A type defining the Fixed Price. */ concept FixedPrice { o Double price o String id optional } /** * Fixed Price Leg of a Commodity Swap. It defines schedule of fixed payments associated with a commodity swap. */ concept FixedPriceLeg extends FinancialSwapLeg { o Double worldscaleRate optional o Double totalNotionalQuantity optional o Boolean masterAgreementPaymentDates optional o FlatRateEnum flatRate optional } /** * The calculation period fixed rate. A per annum rate, expressed as a decimal. A fixed rate of 5% would be represented as 0.05. */ concept FixedRate { o Double value optional o String id optional } /** * A full definition of the fixed rate accrual characteristics of a loan contract. This structure defines both the underlying base rate as well as any additional margins and costs associated with the loan contract. */ concept FixedRateAccrual extends FixedRateOptionBase { o DateTime startDate o DateTime endDate o Double numberOfDays o Double penaltySpread optional o Double defaultSpread optional o Double mandatoryCostRate optional o Double allInRate optional } /** * A structure that represents the accruing fixed rate option associated within a facility. */ concept FixedRateOption extends FixedRateOptionBase { o DateTime startDate o DateTime endDate o Integer drawdownNoticeDays optional o Integer fxRateSetNoticeDays optional o Integer rateSetNoticeDays optional } /** * An abstract type that specifies an underlying fixed rate cash accrual option. */ abstract concept FixedRateOptionBase extends AccrualOptionBase { o Double rate o Double pikSpread optional } /** * An event representing a change in a fixed rate accrual option. In real terms - an example of this would be a margin rate change. */ concept FixedRateOptionChange extends AbstractFacilityEvent { } /** * */ concept FixedRateReference extends Reference { } /** * */ concept FloatingAmountCalculation { o DateTime initialFixingDate optional } /** * */ concept FloatingAmountEvents { o Boolean failureToPayPrincipal optional o Boolean writedown optional o Boolean impliedWritedown optional } /** * */ concept FloatingAmountProvisions { o Boolean wACCapInterestProvision optional o Boolean stepUpProvision optional } /** * A type to capture details relevant to the calculation of the floating price. */ concept FloatingLegCalculation { o AveragingMethodEnum averagingMethod optional o Double conversionFactor optional o Double spreadPercentage optional } /** * Floating Price Leg of a Commodity Swap. Each 'floatingLeg' defines a series of financial payments for a commodity the value of which is derived from a floating price such as an exchange or an index publication. */ concept FloatingPriceLeg extends FinancialSwapLeg { o Double totalNotionalQuantity optional o Boolean masterAgreementPaymentDates optional o FlatRateEnum flatRate optional } /** * A type defining a floating rate. */ concept FloatingRate extends Rate { o RateTreatmentEnum rateTreatment optional } /** * A full definition of the accrual characteristics of a loan contract. This structure defines both the underlying base rate as well as any additional margins and costs associated with the loan contract. */ concept FloatingRateAccrual extends FloatingRateOptionBase { o DateTime startDate o DateTime endDate o Double numberOfDays o DateTime rateFixingDate optional o Double baseRate optional o Double penaltySpread optional o Double defaultSpread optional o Double mandatoryCostRate optional o Double allInRate optional } /** * A type defining the floating rate and definitions relating to the calculation of floating rate amounts. */ concept FloatingRateCalculation extends FloatingRate { o Double initialRate optional o AveragingMethodEnum averagingMethod optional o NegativeInterestRateTreatmentEnum negativeInterestRateTreatment optional } /** * Reference to a floating rate calculation of interest calculation component. */ concept FloatingRateCalculationReference extends Reference { } /** * A type defining parameters associated with a floating rate reset. This type forms part of the cashflows representation of a stream. */ concept FloatingRateDefinition { o Double calculatedRate optional o Double floatingRateMultiplier optional o Double spread optional } /** * The ISDA Floating Rate Option, i.e. the floating rate index. */ concept FloatingRateIndex { o String value optional o String floatingRateIndexScheme optional } /** * A subset of the ISDA Floating Rate Option scheme, i.e. the floating rate index. These indexes are the ones used by the syndicated loan market. */ concept FloatingRateIndexLoan { o String value optional o String floatingRateIndexScheme optional } /** * A structure that represents the accruing floating rate option associated within a facility. */ concept FloatingRateOption extends FloatingRateOptionBase { o DateTime startDate o DateTime endDate o Integer drawdownNoticeDays optional o Integer fxRateSetNoticeDays optional o Integer rateSetNoticeDays optional } /** * An abstract type that specifies an underlying floating rate cash accrual option. */ abstract concept FloatingRateOptionBase extends AccrualOptionBase { o Double spread o Double pikSpread optional } /** * An event describing a change in a floating rate accrual option. In real terms - an example of this would be a margin rate change associated with the 3-Month LIBOR accrual option. */ concept FloatingRateOptionChange extends AbstractFacilityEvent { } /** * */ concept FloatingStrikePrice extends FloatingLegCalculation { } /** * A type defining a rate index. */ concept ForecastRateIndex { } /** * A type describing a financial formula, with its description and components. */ concept Formula { o String formulaDescription optional } /** * Elements describing the components of the formula. The name attribute points to a value used in the math element. The href attribute points to a numeric value defined elsewhere in the document that is used by the formula component. */ concept FormulaComponent { o String componentDescription o String name optional } /** * A type defining a term of the formula. Its value is the product of the its coefficient and the referenced partial derivatives. */ concept FormulaTerm { o Double coefficient } /** * A curve used to model a set of forward interest rates. Used for forecasting interest rates as part of a pricing calculation. */ concept ForwardRateCurve { } /** * */ concept FpML { o String [] mixed optional } /** * A type defining a Forward Rate Agreement (FRA) product. */ concept Fra extends Product { o DateTime adjustedTerminationDate o Integer calculationPeriodNumberOfDays o FraDiscountingEnum fraDiscounting } /** * A type defining a time frequency, e.g. one day, three months. Used for specifying payment or calculation frequencies at which the value T (Term) is applicable. */ concept Frequency { o Integer periodMultiplier o PeriodExtendedEnum period o String id optional } /** * A fee associated with the funding requirements for given facility. */ concept FundingFeePayment extends NonRecurringFeePayment { } /** * An exchange traded future contract. */ concept Future extends ExchangeTraded { o Double multiplier optional o String futureContractReference optional o DateTime maturity optional o DateTime contractYearMonth optional o SettlementTypeEnum settlementType optional } /** * A type defining a short form unique identifier for a future contract. */ concept FutureId { o String value optional o String futureIdScheme optional } /** * A type defining a currency amount as at a future value date. */ concept FutureValueAmount extends NonNegativeMoney { o Integer calculationPeriodNumberOfDays o DateTime valueDate } /** * Accrual calculation process. */ concept FxAccrual { o String id optional } /** * Reference to an average rate structure in FxAccrualForward or FxAccrualOption products. */ concept FxAccrualAverageStrikeReference extends Reference { } /** * */ concept FxAccrualBarrier extends FxComplexBarrierBase { o FxAccrualKnockoutBarrierRetentionEnum accrualRetention optional } /** * An FX Accrual Digital Option product The product defines a list of fixing (or observation) dates. There are m total fixings. At the expiry date of the product, the buyer of the option has the right to an FX settlement with n/m * Notional. Payout can be cash or physical. */ concept FxAccrualDigitalOption extends Option { } /** * The product defines a schedule of expiry and delivery dates which specify settlement periods. The product further defines a schedule of fixing (or observation) dates and defines regions of spot where the product settlement amounts will accrue. There are n total fixings. One accumulates a fixed proportion of Notional (1/n) for every observation date that spot fixes within the pre-defined limits of the accrual regions. If spot breaks the limits, the Notional stops accumulating during the fixings outside the limits, but continues accruing once spot comes back to the accruing region. At expiry, one buys the accrued Notional at the pre-agreed hedge rate. Payout can be cash or physical. The variation of this product include: Accrual Forward (European and American), Double Accrual Forward (DAF), Boosted Accrual Forward, Fading Forward, Leveraged Accrual Forward, Accrual Forward with Collars, etc. */ concept FxAccrualForward extends Product { o Double spotRate optional } /** * */ concept FxAccrualLeverage { o ConditionEnum condition o QuoteBasisEnum quoteBasis optional o String id optional } /** * A fixing region in which the payoff varies linearly with the fixing value. */ concept FxAccrualLinearPayoffRegion extends FxAccrualPayoffRegion { } /** * An FX Accrual Option product The product defines a list of fixing (or observation) dates. There are m total fixings. At the expiry date of the product, the buyer of the option has the right to an FX settlement with n/m * Notional. Payout can be cash or physical. */ concept FxAccrualOption extends Option { o Double spotRate optional } /** * */ abstract concept FxAccrualPayoffRegion { o String id optional } /** * Reference to a FX Accrual Payoff Region. */ concept FxAccrualPayoffRegionReference extends Reference { } /** * Defines a region of spot rate where the notional for the settlement period accrues by the accrued amount per fixing each time the spot rate fixes within the region. */ concept FxAccrualRegion { o DateTime startDate optional o DateTime endDate optional o DateTime endDate1 optional } /** * */ concept FxAccrualRegionLowerBound { o FxRegionLowerBoundDirectionEnum condition o QuoteBasisEnum quoteBasis optional } /** * */ concept FxAccrualRegionUpperBound { o FxRegionUpperBoundDirectionEnum condition o QuoteBasisEnum quoteBasis optional } /** * */ concept FxAccrualSettlementPeriod extends SettlementPeriod { o Double accrualFactor optional } /** * Payoff region */ concept FxAccrualSettlementPeriodPayoff { o Double strike optional o Double counterCurrencyAmount optional o Double lowerBound optional o Double upperBound optional o Double payoffCap optional } /** * */ concept FxAccrualSettlementPeriodSchedule { } /** * A shared type between accrual forwards and options where the FX accrual strike reference can point to. */ concept FxAccrualStrike extends Schedule { } /** * Reference to a strike structure in FxAccrualForward or FxAccrualOption products. */ concept FxAccrualStrikeReference extends Reference { } /** * Describes a european trigger applied to an FX digtal option. */ concept FxAccrualTrigger extends FxTriggerBase { o String id optional } /** * Reference to a trigger structure in FxAccrualDigitalOption product. */ concept FxAccrualTriggerReference extends Reference { } /** * Defines the expiry/observation schedule of the target. */ concept FxAdjustedDateAndDateAdjustments { o DateTime adjustedDate } /** * Describes the characteristics for american exercise of FX products. */ concept FxAmericanExercise extends FxDigitalAmericanExercise { } /** * Descibes the averaging period properties for an asian option. */ concept FxAsianFeature { o StrikeQuoteBasisEnum rateObservationQuoteBasis optional o StrikeQuoteBasisEnum rateObservationQuoteBasis1 optional o String payoutFormula optional o Integer precision optional } /** * */ concept FxAverageRate extends FxAveragingProcess { } /** * A type that, for average rate options, is used to describe each specific observation date, as opposed to a parametric frequency of rate observations. */ concept FxAverageRateObservation { o DateTime date o Double averageRateWeightingFactor o Double rate optional } /** * A type that describes average rate options rate observations. This is used to describe a parametric frequency of rate observations against a particular rate. Typical frequencies might include daily, every Friday, etc. */ concept FxAverageRateObservationSchedule { o DateTime startDate o DateTime endDate } /** * */ concept FxAverageStrike extends FxAveragingProcess { o Double strikeAdjustment optional } /** * Accrual calculation process. */ concept FxAveragingProcess extends FxRateObservable { o FxAveragingMethodEnum averagingMethod o Integer precision optional } /** * Describes the properties of an FX barrier. */ concept FxBarrierFeature { o FxBarrierTypeEnum barrierType o FxBarrierDirectionEnum direction optional o Double triggerRate o DateTime observationStartDate optional o DateTime observationEndDate optional } /** * */ concept FxBusinessCenterDateTime { o DateTime date } /** * A type that is used for describing cash settlement of an option / non deliverable forward. It includes the currency to settle into together with the fixings required to calculate the currency amount. */ concept FxCashSettlement { } /** * A type that is used for describing cash settlement of a variance or volatility swap option. It includes the settlement currency together with the spot currency exchange required to calculate the settlement currency amount. */ concept FxCashSettlementSimple { } /** * */ concept FxComplexBarrierBase { o FxBarrierTypeSimpleEnum barrierType o FxBarrierStyleEnum style o FxBarrierScopeEnum scope o ConditionEnum condition o DateTime observationStartDate optional o DateTime observationEndDate optional o String id optional } /** * Reference to a barrier structure defined within the parametric representation. */ concept FxComplexBarrierBaseReference extends Reference { } /** * */ concept FxConversion { } /** * */ concept FxCounterCurrencyAmount extends NonNegativeAmountSchedule { } /** * A type that is used for including the currency exchange rates information used to cross between the traded currencies for non-base currency FX contracts. */ concept FxCrossRateObservable { } /** * An fx curve object., which includes pricing inputs and term structures for fx forwards. */ concept FxCurve extends PricingStructure { } /** * A valuation of an FX curve object., which includes pricing inputs and term structures for fx forwards. */ concept FxCurveValuation extends PricingStructureValuation { } /** * The representation of the schedule as an offset relative to another schedule. For example, the settlement schedule may be relative to the expiry schedule by an FxForward offset. */ concept FxDateOffset { o FxOffsetConventionEnum convention } /** * Descrines the characteristics for American exercise in FX digital options. */ concept FxDigitalAmericanExercise extends Exercise { o DateTime expiryDate o DateTime latestValueDate } /** * Describes an option having a triggerable fixed payout. */ concept FxDigitalOption extends Option { } /** * A structure describing how disruption for a specified currency pair should be handled */ concept FxDisruption { } /** * The base class for all disruption events */ concept FxDisruptionEvent { } /** * A container for the disruption event set */ concept FxDisruptionEvents { o String [] fxDisruptionEventGroup } /** * The base class for all disruption fallbacks */ concept FxDisruptionFallback { } /** * A container for the disruption fallback set */ concept FxDisruptionFallbacks { o String [] fxDisruptionFallbackGroup } /** * Describes a set of disruption events and the fallbacks they will invoke */ concept FxDisruptionProvisions { } /** * Describes the characteristics for European exercise of FX products. */ concept FxEuropeanExercise extends Exercise { o DateTime expiryDate o DateTime valueDate } /** * Indicates the direction who pays and receives a specific currency without specifying the amount. */ concept FxExchangedCurrency { } /** * Defines the expiry date of the accrual. The date is adjusted, date adjustments may be provided, and also the expiry time. */ concept FxExpiryDate extends FxAdjustedDateAndDateAdjustments { } /** * Defines the expiry/observation schedule of the target. */ concept FxExpirySchedule extends FxSchedule { o DateTime finalExpiryDate optional } /** * Describes an alternative set of price sources */ concept FxFallbackReferencePrice extends FxDisruptionFallback { } /** * A type for defining Fx Features. */ concept FxFeature { } /** * A type that specifies the source for and timing of a fixing of an exchange rate. This is used in the agreement of non-deliverable forward trades as well as various types of FX OTC options that require observations against a particular rate. */ concept FxFixing { o DateTime fixingDate optional } /** * A type that is extending the Offset structure for providing the ability to specify an FX fixing date as an offset to dates specified somewhere else in the document. */ concept FxFixingDate extends Offset { o BusinessDayConventionEnum businessDayConvention } /** * */ concept FxFixingObservation { o DateTime date o Double weight optional } /** * Describes a schedule of fixing dates as a parametric description, an explicit list of dates or both. */ concept FxFixingSchedule { o DateTime [] fixingDate optional o DateTime startDate optional o DateTime endDate optional o DateTime endDate1 optional o DayTypeEnum dayType optional o Integer numberOfFixings optional o DateTime [] fixingDate1 optional } /** * Describes the FX fixing schedule, a single continuous observation period which follows the applicable business day schedule for the quoted rate source. */ concept FxFixingScheduleSimple { o DateTime startDate optional o DateTime endDate optional o DateTime endDate1 optional o DayTypeEnum dayType optional o DateTime [] fixingDate optional } /** * Product model for a flexible-term fx forward (also known as callable forward, window forward). This is a term forward transaction over a specific period, allowing the client full flexibility on the timing of the transactional flow(s). The product allows for (full or partial) execution at a predetermined forward rate, at any time between the start date and the expiry date. Although, the product is an outright, it has some option-like characteristics, leading to the use of option components in the model: (i) the BuyerSeller model expresses the roles of the parties in the overall transaction - the client "buys" the product (ii) the PutCallCurrency model expresses the buyer's perspective on the exchanged currencies i.e. the client may buy (call) or sell (put) the notional currency for the alternative currency. */ concept FxFlexibleForward extends Product { o DateTime finalSettlementDate optional } /** * */ concept FxFlexibleForwardExecutionPeriod { o DateTime startDate o DateTime expiryDate o String id } /** * */ concept FxFlexibleForwardRate extends QuotedCurrencyPair { o Double rate o Double spotRate optional } /** * A type that describes the rate of exchange between the two currencies of the leg of a deal. */ concept FxForwardStrikePrice extends FxAccrualStrike { o QuoteBasisEnum quoteBasis } /** * Describes a contract on future levels of implied volatility. The main characteristic of this product is that the underlying is a straddle (underlying options) with a specific tenor starting from the fixing (effective or pricing) date, and are priced on that fixing date using a level of volatility that is agreed at the time of execution of the volatility agreement. */ concept FxForwardVolatilityAgreement extends Product { o DateTime fixingDate o Double forwardVolatilityStrikePrice } /** * */ concept FxInformationSource extends InformationSource { } /** * */ concept FxKnockoutCount { o Integer conditionalFixings o Boolean settlementAtKnockout } /** * Defines the Target level of gain. */ concept FxKnockoutLevel { o Double intrinsicValue optional o FxTargetStyleEnum targetStyle o FxSettlementAdjustmentMethodEnum settlementAdjustmentStyle optional } /** * Level is expressed as Schedule, with an initial value and optional steps. */ concept FxLevel extends Schedule { } /** * Reference to a level structure. */ concept FxLevelReference extends Reference { } /** * A type to describe the cashflow representation for fx linked notionals. */ concept FxLinkedNotionalAmount { o DateTime resetDate optional o DateTime adjustedFxSpotFixingDate optional o Double observedFxSpotRate optional o Double notionalAmount optional } /** * A type to describe a notional schedule where each notional that applies to a calculation period is calculated with reference to a notional amount or notional amount schedule in a different currency by means of a spot currency exchange rate which is normally observed at the beginning of each period. */ concept FxLinkedNotionalSchedule { o Double initialValue optional } /** * Describes the limits on the size of notional when multiple exercise is allowed. */ concept FxMultipleExercise { } /** * Describes an FX option with optional asian and barrier features. */ concept FxOption extends Option { o PutCallEnum soldAs optional o Double spotRate optional } /** * A type describing the features that may be present in an FX option. */ concept FxOptionFeatures { } /** * A type that contains full details of a predefined fixed payout which may occur (or not) in a Barrier Option or Digital Option when a trigger event occurs (or not). */ concept FxOptionPayout extends NonNegativeMoney { o PayoutEnum payoutStyle } /** * A type that specifies the premium exchanged for a single option trade or option strategy. */ concept FxOptionPremium extends NonNegativePayment { } /** * A type that describes the rate of exchange at which the option has been struck. */ concept FxOptionStrikePrice extends FxAccrualStrike { o StrikeQuoteBasisEnum strikeQuoteBasis } /** * */ concept FxOutstandingGain { o FxSettlementAdjustmentMethodEnum settlementAdjustmentStyle optional } /** * The amount of gain on the client upside or firm upside is limited. If spot settles above the cap, or below the floor, the payout is adjusted to limit the gain. The adjustment may be made by varying the strike, or by maintaining the strike, but varying the payout notionals. */ concept FxPayoffCap { o ConditionEnum condition o FxSettlementAdjustmentMethodEnum settlementAdjustmentStyle } /** * FX Performance Fixed Leg describes Fixed FX Rate Payer and Fixed Rate. */ concept FxPerformanceFixedLeg extends FxPerformanceLeg { o Double fixedRate } /** * Fx Performance Floating Leg describes Floating FX Rate Payer. */ concept FxPerformanceFloatingLeg extends FxPerformanceLeg { } /** * Floating FX Rate describes Fixed FX Rate Payer and Fixed Rate */ abstract concept FxPerformanceLeg { } /** * Describes an FX volatility and variance swap. */ concept FxPerformanceSwap extends Product { o DateTime valuationDate optional o Double annualizationFactor o Boolean meanAdjustment o Integer numberOfReturns optional } /** * Pivot is expressed as Schedule, with an initial value and optional steps. */ concept FxPivot extends Schedule { } /** * Reference to a pivot structure. */ concept FxPivotReference extends Reference { } /** * An FX Range Accrual product. A strip of Digital Options product The product defines a list of fixing (or observation) dates. There are m total fixings. On the relevant Settlement Date, the Option Seller shall pay to the Option Buyer an amount, in the Settlement Currency, calculated according to the following formula: Accrual Currency and Notional Amount x (the total number of Accrual Days / Total Number of Calendar Days in the Accrual Period). Payout can be cash. */ concept FxRangeAccrual extends Product { } /** * A type describing the rate of a currency conversion: pair of currency, quotation mode and exchange rate. */ concept FxRate { o Double rate } /** * */ concept FxRateAsset extends UnderlyingAsset { } /** * */ concept FxRateObservable { o String id optional } /** * Reference to an "FxRateObservable" structure. */ concept FxRateObservableReference extends Reference { } /** * A collection of spot FX rates used in pricing. */ concept FxRateSet extends QuotedAssetSet { } /** * Describes a rate source to be fixed and the date the fixing occurs */ concept FxRateSourceFixing { } /** * The FxSchedule may be expressed as explicit adjusted dates, or a parametric representation plus optional adjusted dates, or as an offset plus optional adusted dates. */ concept FxSchedule { o DateTime [] adjustedDate optional o DateTime startDate optional o DateTime endDate optional o DateTime endDate1 optional o DayTypeEnum dayType optional o DateTime [] adjustedDate1 optional o String id optional } /** * Reference to a FX Schedule structure. */ concept FxScheduleReference extends Reference { } /** * */ concept FxSettlementPeriodBarrier { o Double triggerRate } /** * */ concept FxSettlementRateSource { } /** * */ concept FxSettlementSchedule extends FxSchedule { o DateTime finalSettlementDate optional } /** * A type defining either a spot or forward FX transactions. */ concept FxSingleLeg extends Product { o DealtCurrencyEnum dealtCurrency optional o FxTenorPeriodEnum tenorName optional o DateTime valueDate optional o DateTime currency1ValueDate optional o DateTime currency2ValueDate optional } /** * A type defining the rate source and fixing time for an fx rate. */ concept FxSpotRateSource { } /** * Straddle details. Straddle is composed of two options: a call and a put involving the quotedCurrencyPair. */ concept FxStraddle { o FxStraddleTypeEnum straddleType } /** * The Currency and Amount to be paid by the Buyer to the Seller. The straddle premium is calculated on the Fixing Date using the Forward Volatility Agreement parameters. */ concept FxStraddlePremium extends PaymentBaseExtended { } /** * Strike is expressed as Schedule, with an initial value and optional steps. */ concept FxStrike extends Schedule { } /** * A type that describes the rate of exchange at which the option has been struck. */ concept FxStrikePrice { o Double rate o StrikeQuoteBasisEnum strikeQuoteBasis } /** * Reference to a strike structure. */ concept FxStrikeReference extends Reference { } /** * A type defining either a spot/forward or forward/forward FX swap transaction. */ concept FxSwap extends Product { } /** * A type defining the details for one of the transactions in an FX swap. */ concept FxSwapLeg extends Leg { o DealtCurrencyEnum dealtCurrency optional o FxTenorPeriodEnum tenorName optional o DateTime valueDate optional o DateTime currency1ValueDate optional o DateTime currency2ValueDate optional } /** * */ concept FxTarget { o String id optional } /** * */ concept FxTargetAccumulationRegion { o Double multiplier optional } /** * */ concept FxTargetBarrier extends FxComplexBarrierBase { } /** * */ concept FxTargetConstantPayoff { o Double fixingAdjustment optional } /** * A fixing region in which the payoff is a constant value (a binary|digital payoff, or zero). */ concept FxTargetConstantPayoffRegion extends FxTargetPayoffRegion { } /** * A structured forward product which consists of a strip of forwards. Each forward may be settled as an exchange of currencies or cash settled. At each settlement, the amount of gain that one party achieves is measured. The product has a target level of gain. Once the accumulated gain exceeds the target level, the product terminates and there are no further settlements. */ concept FxTargetKnockoutForward extends Product { o Double spotRate optional o String [] group optional } /** * */ concept FxTargetLeverage { o ConditionEnum condition o String id optional } /** * A fixing region in which the payoff varies linearly with the fixing value. */ concept FxTargetLinearPayoffRegion extends FxTargetPayoffRegion { } /** * */ abstract concept FxTargetPayoffRegion { o String id optional } /** * Reference to a FX Target Payoff Region. */ concept FxTargetPayoffRegionReference extends Reference { } /** * */ concept FxTargetPhysicalSettlement { o FxSettlementAdjustmentMethodEnum settlementAdjustmentStyle } /** * A rebate can be expressed as a payment amount or as amount of outstanding gain. */ concept FxTargetRebate { } /** * Reference to a target structure. */ concept FxTargetReference extends Reference { } /** * */ concept FxTargetRegionLowerBound { o FxRegionLowerBoundDirectionEnum condition } /** * */ concept FxTargetRegionUpperBound { o FxRegionUpperBoundDirectionEnum condition } /** * */ concept FxTargetSettlementPeriod extends SettlementPeriod { o Double pivot optional } /** * Payoff region */ concept FxTargetSettlementPeriodPayoff { o Double strike o Double counterCurrencyAmount optional o Double lowerBound optional o Double upperBound optional o Double payoffCap optional } /** * */ concept FxTargetSettlementPeriodSchedule { } /** * Reference a code defining the origin of the trade template terms */ concept FxTemplateTerms { o String value optional o String fxTemplateTermsScheme optional } /** * A structure which specifies FX conversion terms. */ concept FxTerms extends FxFixing { o Double rate } /** * Describes an american or discrete touch or no-touch trigger applied to an FX binary or digital option. */ concept FxTouch { o TouchConditionEnum touchCondition o TriggerConditionEnum direction optional o Double triggerRate o Double spotRate optional o DateTime observationStartDate optional o DateTime observationEndDate optional } /** * Describes a european trigger applied to an FX digtal option. */ concept FxTrigger extends FxTriggerBase { } /** * Describes a european trigger applied to an FX digtal option. */ concept FxTriggerBase { o TriggerConditionEnum triggerCondition o Double triggerRate o Double spotRate optional } /** * Valuation date offset is used in FX Variance Swap and Volatility Swap to always relate the Final Observation Date and can be: [Final Observation Date][The first Business Day following the Final Observation Date] */ concept FxValuationDateOffset extends Offset { } /** * Describes a schedule of fixing dates as a parametric description, an explicit list of dates or both. */ concept FxWeightedFixingSchedule { o DateTime startDate optional o DateTime endDate optional o DateTime endDate1 optional o DayTypeEnum dayType optional o Integer numberOfFixings optional } /** * The specification of the gas to be delivered. */ concept GasDelivery { o DeliveryTypeEnum deliveryType } /** * The different options for specifying the Delivery Periods for a physically settled gas trade. */ concept GasDeliveryPeriods extends CommodityDeliveryPeriods { } /** * A scheme identifying the types of the Delivery Point for a physically settled gas trade. */ concept GasDeliveryPoint { o String value optional o String deliveryPointScheme optional } /** * Physically settled leg of a physically settled gas transaction. */ concept GasPhysicalLeg extends PhysicalSwapLeg { } /** * The quantity of gas to be delivered. */ concept GasPhysicalQuantity extends CommodityPhysicalQuantityBase { } /** * A type defining the characteristics of the gas being traded in a physically settled gas transaction. */ concept GasProduct { o GasProductTypeEnum type o Double calorificValue optional } /** * The quantity of gas to be delivered. */ concept GasQuality { o String value optional o String gasQualityScheme optional } /** * */ concept GeneralTerms { o Boolean substitution optional o Boolean modifiedEquityDelivery optional } /** * */ concept GenericCommodityDeliveryPeriod { o DayOfWeekExtEnum[] applicableDay } /** * A flexible description of the type or characteristics of a commodity grade */ concept GenericCommodityGrade { o String value optional o String commodityGradeScheme optional } /** * A generic (user defined) dimension, e.g. for use in a correlation surface. e.g. a currency, stock, etc. This would take values like USD, GBP, JPY, or IBM, MSFT, etc. */ concept GenericDimension { o String value optional o String name } /** * The data type used to hold the exercise style description of an option in a generic product (e.g. American, European, Bermudan). */ concept GenericExerciseStyle { o String value optional o String exerciseStyleScheme optional } /** * */ concept GenericFrequency extends Frequency { } /** * */ concept GenericOptionStrike extends EquityStrike { o String units } /** * Simple product representation providing key information about a variety of different products. Generic products - for use in Transparency reporting to define a product that represents an OTC derivative transaction whose economics are not fully described using an FpML schema. In other views, generic products are present for convenience to support internal messaging and workflows that are cross-product. Generic products are not full trade representations as such they are not intended to be used for confirming trades. */ concept GenericProduct extends Product { o Boolean multiLeg optional o LoadTypeEnum loadType optional o Double quantity optional o Double optionEntitlement optional o Double numberOfOptions optional o SettlementTypeEnum settlementType optional } /** * A type that is used for describing the exchange rate for a particular transaction. */ concept GenericProductExchangeRate { o Double rate o Double spotRate optional o Double forwardPoints optional o PointValue pointValue optional } /** * A flexible description a special feature or characteristic of a complex product not otherwise modeled, such as digital payout. */ concept GenericProductFeature { o String value optional o String featureScheme optional } /** * A type that describes the composition of a rate that has been quoted or is to be quoted. This includes the two currencies and the quotation relationship between the two currencies and is used as a building block throughout the FX specification. */ concept GenericProductQuotedCurrencyPair { o QuoteBasisEnum quoteBasis } /** * */ concept GenericResetFrequency extends Frequency { } /** * Identification of the law governing the transaction. */ concept GoverningLaw { o String value optional o String governingLawScheme optional } /** * */ concept GracePeriodExtension { o Boolean applicable } /** * A payment component owed from one party to the other for the cash flow date. This payment component should by of only a single type, e.g. a fee or a cashflow from a cashflow stream. */ concept GrossCashflow { } /** * A generic type describing an identified asset. */ abstract concept IdentifiedAsset extends AAsset { o String description optional } /** * Specifies Currency with ID attribute. */ concept IdentifiedCurrency extends Currency { o String id optional } /** * Reference to a currency with ID attribute */ concept IdentifiedCurrencyReference extends Reference { } /** * A date which can be referenced elsewhere. */ concept IdentifiedDate { o DateTime value optional o String id optional } /** * A type extending the PayerReceiverEnum type wih an id attribute. */ concept IdentifiedPayerReceiver { o PayerReceiverEnum value optional o String id optional } /** * A rate which can be referenced elsewhere. */ concept IdentifiedRate { o Double value optional o String id optional } /** * A version of a specification document used by the message generator to format the document. */ concept ImplementationSpecification { o String name optional o DateTime date optional } /** * */ concept ImplementationSpecificationVersion { o String value optional o String implementationSpecificationVersionScheme optional } /** * */ concept IndependentAmount { } /** * A published index whose price depends on exchange traded constituents. */ concept Index extends ExchangeTradedCalculatedPrice { } /** * Defines the specification of the consequences of Index Events as defined by the 2002 ISDA Equity Derivatives Definitions. */ concept IndexAdjustmentEvents { o IndexEventConsequenceEnum indexModification o IndexEventConsequenceEnum indexCancellation o IndexEventConsequenceEnum indexDisruption } /** * */ concept IndexAnnexSource { o String value optional o String indexAnnexSourceScheme optional } /** * A structure describing the effect of a change to an index. */ concept IndexChange extends ChangeEvent { o Double indexFactor } /** * */ concept IndexId { o String value optional o String indexIdScheme optional } /** * */ concept IndexName { o String value optional o String indexNameScheme optional } /** * A type defining a Credit Default Swap Index. */ concept IndexReferenceInformation { o Integer indexSeries optional o Integer indexAnnexVersion optional o DateTime indexAnnexDate optional o Double indexFactor optional o String id optional } /** * A party's industry sector classification. */ concept IndustryClassification { o String value optional o String industryClassificationScheme optional } /** * A type defining the components specifiying an Inflation Rate Calculation */ concept InflationRateCalculation extends FloatingRateCalculation { o Double initialIndexLevel optional o Boolean fallbackBondApplicable } /** * */ concept InformationProvider { o String value optional o String informationProviderScheme optional } /** * A type defining the source for a piece of information (e.g. a rate refix or an fx fixing). */ concept InformationSource { o String rateSourcePageHeading optional } /** * Defines initial margin applied to a repo transaction. Initial margin is an agreed premium to the Purchase Price of a repo to determine the required Market Value of the collateral to be delivered on the Purchase Date. It reflects quality of the collateral. Its aim is to calculate the risk-adjusted or liquidation value of collateral. */ concept InitialMargin { o MarginTypeEnum marginType } /** * Defines the initial margin calculation applicable to a single piece of collateral. */ concept InitialMarginCalculation { o Double marginRatio optional o Double [] marginRatioThreshold optional o Double haircut optional o Double [] haircutThreshold optional } /** * */ concept InitialPayment extends PaymentBase { o DateTime adjustablePaymentDate optional o DateTime adjustedPaymentDate optional } /** * A short form unique identifier for a security. */ concept InstrumentId { o String value optional o String instrumentIdScheme } /** * A collection of instruments usable for quotation purposes. In future releases, quotable derivative assets may be added after the underlying asset. */ concept InstrumentSet { o String [] group optional o String [] underlyingAssetGroup optional o String [] curveInstrumentGroup optional } /** * The economics of a trade of a multiply traded instrument. */ concept InstrumentTradeDetails extends Product { o String underlyingAssetGroup } /** * A structure describing the price paid for the instrument. */ concept InstrumentTradePricing { o DateTime couponStartDate optional o DateTime exDividendDate optional o Boolean tradedFlatOfAccrued optional } /** * A structure describing the value in "native" currency of an instrument that was traded. */ concept InstrumentTradePrincipal { } /** * A structure describing the amount of an instrument that was traded. */ concept InstrumentTradeQuantity { o Double number optional } /** * Identification of the border(s) or border point(s) of a transportation contract. Use the list of EIC codes for timelines for electricity (T Codes) or the list of EIC codes for measurement points for gas (Z Codes). */ concept InterconnectionPoint { o String value optional o String interconnectionPointScheme optional } /** * A type defining the way in which interests are accrued: the applicable rate (fixed or floating reference) and the compounding method. */ concept InterestAccrualsCompoundingMethod extends InterestAccrualsMethod { o CompoundingMethodEnum compoundingMethod optional } /** * A type describing the method for accruing interests on dividends. Can be either a fixed rate reference or a floating rate reference. */ concept InterestAccrualsMethod { o Double fixedRate optional } /** * Specifies the calculation method of the interest rate leg of the return swap. Includes the floating or fixed rate calculation definitions, along with the determination of the day count fraction. */ concept InterestCalculation extends InterestAccrualsMethod { o InterpolationPeriodEnum interpolationPeriod optional o String id optional } /** * An event representing the lender-specific capitalization of interest amounts for a given accrual period against a single loan contract. */ concept InterestCapitalization extends AbstractLoanContractEvent { o DateTime startDate o DateTime endDate o InterestCalculationMethodEnum calculationMethod } /** * A type describing the fixed income leg of the equity swap. */ concept InterestLeg extends DirectionalLeg { } /** * Component that holds the various dates used to specify the interest leg of the return swap. It is used to define the InterestPeriodDates identifyer. */ concept InterestLegCalculationPeriodDates { o String id } /** * Reference to the calculation period dates of the interest leg. */ concept InterestLegCalculationPeriodDatesReference extends Reference { } /** * */ concept InterestLegResetDates { o ResetRelativeToEnum resetRelativeTo optional } /** * A type defining the components specifiying an interest rate stream, including both a parametric and cashflow representation for the stream of payments. */ concept InterestRateStream extends Leg { } /** * Reference to an InterestRateStream component. */ concept InterestRateStreamReference extends Reference { } /** * */ concept InterestShortFall { o InterestShortfallCapEnum interestShortfallCap o Boolean compounding } /** * A type that describes the information to identify an intermediary through which payment will be made by the correspondent bank to the ultimate beneficiary of the funds. */ concept IntermediaryInformation { o Integer intermediarySequenceNumber } /** * The type of interpolation used. */ concept InterpolationMethod { o String value optional o String interpolationMethodScheme optional } /** * The data type used for issuer identifiers. */ concept IssuerId { o String value optional o String issuerIdScheme optional } /** * A complex type for a two part identifier such as a USI. */ concept IssuerTradeId { } /** * Knock In means option to exercise comes into existence. Knock Out means option to exercise goes out of existence. */ concept Knock { } /** * Describes an observation that caused a barrier knock out to trigger */ concept KnockOutRateObservation extends TriggerRateObservation { } /** * An observation period that is offset from a Calculation Period. */ concept Lag { o String id optional } /** * Allows a lag to reference one already defined elsewhere in the trade. */ concept LagReference extends Reference { } /** * The data type used for indicating the language of the resource, described using the ISO 639-2/T Code. */ concept Language { o String value optional o String languageScheme optional } /** * A full definition of the accrual characteristics of a letter of credit. This structure defines both the underlying letter of credit issuance fee rate as well as any FX rates applied. */ concept LcAccrual extends FeeRateOptionBase { } /** * An event representing a change in the notional amount associated with an outstanding letter of credit. */ concept LcAdjustment extends AbstractLcEvent { o Boolean relatedBorrowing } /** * An event representing a change in either the [L/C -> Facility] or [Accrual -> L/C] FX rates (or both) on an outstanding letter of credit. */ concept LcFxRevaluation extends AbstractLcEvent { } /** * An event representing the issuance of a new letter of credit under an existing facility. */ concept LcIssuance extends AbstractLcEvent { } /** * An event representing a letter of credit issuance fee payment. */ concept LcIssuanceFeePayment extends AbstractLcEvent { o DateTime startDate o DateTime endDate } /** * A loan servicing notification used to communicate various letter of credit business events. */ concept LcNotification extends AbstractContractNotification { o String lcEventGroupGroup } /** * A structure that represents the accruing L/C rate option associated within a facility. */ concept LcOption extends FeeRateOptionBase { o DateTime startDate o DateTime endDate } /** * An event representing a change in an L/C accrual option. In real terms - an example of this would be an L/C margin rate change. */ concept LcOptionChange extends AbstractFacilityEvent { } /** * A list of L/C purposes. */ concept LcPurpose { o String value optional o String lcPurposeScheme optional } /** * An event representing a change in the rate on an outstanding letter of credit. */ concept LcRateChange extends AbstractLcEvent { o Double rate } /** * An event representing a change in the maturity date on an outstanding letter of credit. */ concept LcRenewal extends AbstractLcEvent { o DateTime finalExpiryDate o DateTime maturityDate optional } /** * An event representing either the expiry or cancellation of a letter of credit */ concept LcTermination extends AbstractLcEvent { o Boolean expiry } /** * A list of L/C types. */ concept LcType { o String value optional o String lcTypeScheme optional } /** * A supertype of leg. All swap legs extend this type. */ abstract concept Leg { o String id optional } /** * A type defining a legal entity. */ concept LegalEntity { o String id optional } /** * References a credit entity defined elsewhere in the document. */ concept LegalEntityReference extends Reference { } /** * A type describing the amount that will paid or received on each of the payment dates. This type is used to define both the Equity Amount and the Interest Amount. */ concept LegAmount { o String encodedDescription optional } /** * Leg identity. */ concept LegId { o String value optional o String legIdScheme } /** * Version aware identification of a leg. */ concept LegIdentifier { o Integer version optional } /** * A list of lender clasifications. These are used to derive other rules associated with specific lender types. */ concept LenderClassification { o String value optional o String lenderClassificationScheme optional } /** * A definition of an unfunded borrowing (guarantee) instrument known as a Letter of Credit. */ concept LetterOfCredit extends LetterOfCreditSummary { o DateTime expiryDate o DateTime finalExpiryDate optional o LcAutoAdjustEnum lcAutoAdjust optional } /** * A facility designed to issue letter of credit products. */ concept LetterOfCreditFacility extends AbstractFacility { } /** * A reference to a letter of credit. */ concept LetterOfCreditReference extends Reference { o String href } /** * A short form definition of a letter of credit. */ concept LetterOfCreditSummary { o DateTime effectiveDate } /** * A type describing the liens associated with a loan facility. */ concept Lien { o String value optional o String lienScheme optional } /** * */ concept LimitApplicable { o Integer clipSize o Integer amountUtilized optional o Integer amountRemaining optional } /** * */ concept LimitId { o String value optional o String creditLimitIdScheme optional } /** * */ concept LimitType { o String value optional o String creditLimitTypeScheme optional } /** * The data type used for link identifiers. */ concept LinkId { o String value optional o String id optional o String linkIdScheme } /** * A type describing a loan underlying asset. */ concept Loan extends UnderlyingAsset { o String [] group optional o DateTime maturity optional o DateTime creditAgreementDate optional } /** * A base type to extend the FpML basic 'message' type, similar in function to the 'response' message, but specific to the needs loan asset class. */ concept LoanAcknowledgement extends Message { o Integer sequenceNumber optional } /** * An event structure defining information related to a loan trade allocation. */ concept LoanAllocation extends AbstractLoanAllocationSummary { } /** * A loan servicing notification used to communicate confirmation of trade allocation details, from counterparty to counterparty, or admin agent to counterparty. */ concept LoanAllocationConfirmationNotification extends AbstractLoanTradingNotification { } /** * An event structure defining information related to a loan trade allocation. */ concept LoanAllocationEvent extends AbstractLoanAllocationEvent { } /** * A structure that contains sender-specific and optional shared loan allocation identifiers. */ concept LoanAllocationIdentifier extends TradeIdentifier { } /** * A structure that describes a period during which settlement cannot occur. */ concept LoanAllocationNoSettlePeriod { o DateTime startDate o DateTime endDate } /** * A structure that defines no-settle period types based on a qualifying scheme. */ concept LoanAllocationNoSettlePeriodType { o String value optional o String noSettlePeriodTypeScheme optional } /** * A loan servicing notification used to communicate trade allocation details, from counterparty to counterparty, or counterparty to admin agent. */ concept LoanAllocationNotification extends AbstractLoanTradingNotification { } /** * A structure that represents a payment related to a loan trade. */ concept LoanAllocationPayment extends Payment { o String [] group optional } /** * A reference to a loan trade allocation. */ concept LoanAllocationReference extends Reference { o String href } /** * A loan servicing notification used to communicate trade settlement date coordination (i.e. availability) details, between admin agent and counterparties. */ concept LoanAllocationSettlementDateAvailabilityNotification extends AbstractLoanTradingNotification { o String [] loanTradeAllocationDetailsModel optional o String [] facilityDetailsModel optional } /** * A loan servicing notification used to communicate finalized trade settlement date details, from admin agent to counterparties. */ concept LoanAllocationSettlementDateFinalizationNotification extends AbstractLoanTradingNotification { o String [] loanTradeAllocationDetailsModel optional o String [] facilityDetailsModel optional } /** * An event structure defining the counterparty-to-counterparty trade settlement details. */ concept LoanAllocationSettlementEvent extends AbstractLoanAllocationSettlementEvent { } /** * A loan servicing notification used to communicate trade settlement details (including funding economics), from counterparty to counterparty. */ concept LoanAllocationSettlementNotification extends AbstractLoanAllocationPaymentNotification { o String [] loanTradeAllocationDetailsModel optional o String [] facilityLoanContractDetailsModel optional } /** * A structure that details tasks and their statuses, the completion of which are prerequisites to the settlement of a trade or allocation. */ concept LoanAllocationSettlementTask extends AbstractLoanTask { } /** * A loan servicing notification used to communicate allocation-level tasks and their statuses, the completion of which are deemed by the sender of the notification to be prerequisites to the settlement of a trade or allocation. */ concept LoanAllocationSettlementTaskNotification extends AbstractLoanTradingNotification { o String [] loanTradeAllocationDetailsModel optional o String [] facilityDetailsModel optional } /** * A structure used to uniquely identify a settlement task type within a syndicated loan structure. */ concept LoanAllocationSettlementTaskType { o String value optional o String allocationSettlementTaskTypeScheme optional } /** * A structure that defines details related to the admin agent's determination of transfer fee(s) owed on an allocation. */ concept LoanAllocationTransferFeeDueEvent extends AbstractLoanAllocationEvent { o DateTime dueDate } /** * A loan servicing notification used to communicate transfer fee details, from admin agent to counterparty. */ concept LoanAllocationTransferFeeDueNotification extends AbstractLoanAllocationPaymentNotification { o String [] loanTradeAllocationDetailsModel optional o String [] facilityDetailsModel optional } /** * A structure that defines details related to the admin agent's determination of transfer fee(s) owed on an allocation. */ concept LoanAllocationTransferFeeOwedEvent extends AbstractLoanAllocationEvent { o Boolean waivedFlag } /** * A loan servicing notification used to communicate transfer fee details, from admin agent to counterparty. */ concept LoanAllocationTransferFeeOwedNotification extends AbstractLoanTradingNotification { o String [] loanTradeAllocationDetailsModel optional o String [] facilityDetailsModel optional } /** * A loan servicing notification used to communicate multiple business events, within a single notification. */ concept LoanBulkServicingNotification extends AbstractContractNotification { o String [] group optional o String [] facilityFeePaymentGroupGroup optional o String [] facilityEventGroupGroup optional o String [] loanContractEventGroupGroup optional o String [] lcEventGroupGroup optional o String [] group1 optional } /** * A funded borrowing instrument which utilizes a portion of an available under a single facility (line of credit) within a bank deal (credit agreement). */ concept LoanContract extends LoanContractSummary { o DateTime repricingDate optional o DateTime maturityDate optional } /** * An event representing adjustment in the notional amount of a loan contract that has no cash flow effect. E.g. an amount adjustment due to a defaulted loan. */ concept LoanContractAdjustment extends AbstractLoanContractEvent { } /** * An event representing the initial setting of the rate on a single (new) loan contract. */ concept LoanContractBaseRateSet extends AbstractLoanContractEvent { o DateTime fixingDate o Double rate } /** * An event representing a change of maturity date on a one or more outstanding loan contracts. */ concept LoanContractMaturityChange extends AbstractLoanContractEvent { o DateTime currentMaturityDate o DateTime priorMaturityDate optional } /** * A loan servicing notification used to communicate various loan contract business events. */ concept LoanContractNotification extends AbstractContractNotification { o String loanContractEventGroupGroup } /** * A reference to a loan contract. */ concept LoanContractReference extends Reference { o String href } /** * A short form of a loan contract. */ concept LoanContractSummary { o DateTime effectiveDate } /** * An event representing the lender-specific payment of interest amounts for a given accrual period against a single loan contract. */ concept LoanInterestPayment extends AbstractLoanContractEvent { o DateTime startDate o DateTime endDate o InterestCalculationMethodEnum calculationMethod } /** * A message used to acknowledge a loan notification. */ concept LoanNotificationAcknowledgement extends LoanAcknowledgement { } /** * A message used to indicate an exception issue with a loan notification. */ concept LoanNotificationException extends Exception { } /** * A message used to indicate a retraction of a loan notification. */ concept LoanNotificationRetracted extends NonCorrectableRequestMessage { } /** * */ concept LoanParticipation extends PCDeliverableObligationCharac { o String qualifyingParticipationSeller optional } /** * A set of instructions communicated by parties to override standard payment details for a specific to a set of (any) loan events. */ concept LoanPartyEventInstructionOverrideNotification extends AbstractLoanPartyProfileNotification { } /** * A profile generated and communicated by parties containing their relevant contact and payment details. This is communicated by parties to anyone who wishes to initiate payments and/or communicate with them. */ concept LoanPartyProfileNotification extends AbstractLoanPartyProfileNotification { } /** * A set of instructions communicated by parties to override standard payment details for a specific trade or allocation settlement only. */ concept LoanPartyTradingInstructionOverrideNotification extends AbstractLoanPartyProfileNotification { } /** * An event structure defining information related to trade settlement date coordination. */ concept LoanSettlementDateAvailabilityEvent extends AbstractLoanAllocationEvent { o DateTime startDate optional o DateTime endDate optional o DateTime onOrAfterDate optional o Integer leadDays optional o DateTime cutOffTime optional } /** * An event structure defining the trade settlement date. */ concept LoanSettlementDateFinalizationEvent extends AbstractLoanAllocationEvent { o DateTime settlementDate } /** * A structure that defines counterparty-to-counterparty loan trade information. This structure contains the main (e.g. fund manager/main counterparty) trade details. */ concept LoanTrade extends AbstractLoanTrade { o Double price o LoanTradingDocTypeEnum documentationType o LoanTradingAccrualSettlementEnum accrualSettlementType o Boolean delayedCompensationFlag o BuySellEnum nonRecurringFeesBenefactor o Boolean collateralRequiredFlag optional o LoanTradingVotingRightsEnum votingRights optional } /** * A loan servicing notification used to communicate confirmation of master trade details, from counterparty to counterparty. */ concept LoanTradeConfirmationNotification extends AbstractLoanTradingNotification { } /** * An event structure defining counterparty-to-counterparty loan trade information. This structure contains the main (e.g. fund manager/main counterparty) trade details. */ concept LoanTradeEvent extends AbstractLoanTradeEvent { } /** * A loan servicing notification used to communicate details to establish a master trade, from counterparty to counterparty. */ concept LoanTradeNotification extends AbstractLoanTradingNotification { } /** * A structure that represents a payment related to a loan trade. */ concept LoanTradePayment extends Payment { } /** * A reference to a loan trade. */ concept LoanTradeReference extends Reference { o String href } /** * A structure that details tasks and their statuses, the completion of which are prerequisites to the settlement of a trade or allocation. */ concept LoanTradeSettlementTask extends AbstractLoanTask { } /** * A loan servicing notification used to communicate master trade-level tasks and their statuses, the completion of which are deemed by the sender of the notification to be prerequisites to the settlement of a trade or allocation. */ concept LoanTradeSettlementTaskNotification extends AbstractLoanTradingNotification { o String [] facilityDetailsModel optional } /** * A structure that uniquely identifies a settlement task type within a syndicated loan structure. */ concept LoanTradeSettlementTaskType { o String value optional o String tradeSettlementTaskTypeScheme optional } /** * A structure that defines all loan trade information i.e. this structure contains the main (e.g. fund manager/main counterparty) trade details. */ concept LoanTradeSummary extends AbstractLoanTradeSummary { } /** * A structure that defines details related to the admin agent's determination of transfer fee(s) owed on a trade. */ concept LoanTradeTransferFeeDueEvent extends AbstractLoanTradeEvent { o DateTime dueDate } /** * A loan servicing notification used to communicate transfer fee details, from admin agent to counterparty. */ concept LoanTradeTransferFeeDueNotification extends AbstractLoanTradePaymentNotification { o String [] facilityDetailsModel optional } /** * A structure that defines details related to the admin agent's determination of transfer fee(s) owed on an allocation. */ concept LoanTradeTransferFeeOwedEvent extends AbstractLoanTradeEvent { o Boolean waivedFlag } /** * A loan servicing notification used to communicate transfer fee details, from admin agent to counterparty. */ concept LoanTradeTransferFeeOwedNotification extends AbstractLoanTradingNotification { } /** * A structure that details the underlying elements that affect the calculation of a fee accrual. */ concept LoanTradingAccruingFeeAccrual extends AbstractTradingAccrual { o LoanTradingAccruingFeeTypeEnum type optional } /** * A structure that incorporates elements of an accrual calculation, for the purpose of defining cost-of-carry. */ concept LoanTradingCostOfCarry { } /** * A schedule that incorporates all sub-periods of an accrual calculation for the purposes of determining the cost of carry in the case of a trade with delayed settlement. */ concept LoanTradingCostOfCarryAccrual { } /** * A structure that defines the factors that impact settlement cashflows. */ concept LoanTradingCounterpartySettlementFundingFactors { } /** * A structure that incorporates elements of interest and fee accruals, for the purpose of defining delayed compensation. */ concept LoanTradingDelayedCompensation { } /** * A structure that combines a simple (money) amount with an optional event, for the purpose of defining economic benefit at settlement. */ concept LoanTradingEconomicBenefit { } /** * A structure that incorporates sub-periods of an accrual calculation for a traded letter of credit. */ concept LoanTradingLetterOfCreditAccrual extends AbstractTradingAccrual { } /** * A structure that details the underlying elements that affect the calculation of a fee accrual. */ concept LoanTradingNonRecurringFee { o LoanTradingNonRecurringFeeTypeEnum feeType optional } /** * A structure that incorporates sub-periods of an accrual calculation for a traded outstanding contract. */ concept LoanTradingOutstandingsAccrual extends AbstractTradingAccrual { } /** * A type that describes a role played by a party in a trading transaction. Examples include roles such as guarantor, custodian, confirmation service provider, etc. This can be extended to provide custom roles. */ concept LoanTradingPartyRole { o String value optional o String tradingPartyRoleScheme optional } /** * A structure that details key dates related to a task that is a prerequisite to trade settlement. */ concept LoanTradingSettlementTaskDates { o DateTime raisedDate o DateTime expectedDate optional o DateTime clearedDate optional } /** * An event structure defining counterparty-to-admin agent loan trade information. */ concept LoanTransfer extends AbstractLoanTrade { o BuySellEnum transferFeeRemittedBy } /** * A structure that represents countparty shares or alternatively the total amount of the assignment fee owed to the admin agent. */ concept LoanTransferFee { o BuySellEnum remittedBy o LoanTransferFeePaidByEnum paidBy optional } /** * A loan servicing notification used to communicate details to establish a master trade, from counterparty to admin agent. */ concept LoanTransferNotification extends AbstractLoanTradingNotification { } /** * An event structure defining the agent-to-counterparty trade settlement details. */ concept LoanTransferSettlementEvent extends AbstractLoanAllocationSettlementEvent { } /** * A loan servicing notification used to communicate trade settlement position and outstandings details, from admin agent to counterparty. */ concept LoanTransferSettlementNotification extends AbstractLoanTradingNotification { o String [] loanTradeAllocationDetailsModel optional o String [] facilityLoanContractDetailsModel optional } /** * A type to define the main publication source. */ concept MainPublication { o String value optional o String mainPublicationScheme optional } /** * A complex type to specify the amount to be paid by the buyer of the option if the option is exercised prior to the Early Call Date (Typically applicable to the convertible bond options). */ concept MakeWholeAmount extends SwapCurveValuation { } /** * A type to hold early exercise provisions. */ concept MakeWholeProvisions { o DateTime makeWholeDate o Double recallSpread } /** * An event representing a change in the mandatory cost rate, applicable to certain outstanding loans in the UK market. */ concept MandatoryCostRateChange extends FacilityRateChangeEvent { } /** * An event representing expiration of the mandatory cost rate applicable in the UK market. */ concept MandatoryCostRateExpiry extends AbstractFacilityContractEvent { } /** * A type to define an early termination provision for which exercise is mandatory. */ concept MandatoryEarlyTermination { o String id optional } /** * A type defining the adjusted dates associated with a mandatory early termination provision. */ concept MandatoryEarlyTerminationAdjustedDates { o DateTime adjustedEarlyTerminationDate o DateTime adjustedCashSettlementValuationDate o DateTime adjustedCashSettlementPaymentDate } /** * A type defining manual exercise, i.e. that the option buyer counterparty must give notice to the option seller of exercise. */ concept ManualExercise { o Boolean fallbackExercise optional } /** * A collection of pricing inputs. */ concept Market { o String name optional o String [] pricingStructureGroup optional o String [] pricingStructureValuationGroup optional o String id optional } /** * Defines the handling of an averaging date market disruption for an equity derivative transaction. */ concept MarketDisruption { o String value optional o String marketDisruptionScheme optional } /** * A Market Disruption Event. */ concept MarketDisruptionEvent { o String value optional o String commodityMarketDisruptionScheme optional } /** * Reference to a market structure. */ concept MarketReference extends Reference { } /** * An entity for defining the agreement executed between the parties and intended to govern all OTC derivatives transactions between those parties. */ concept MasterAgreement { o DateTime masterAgreementDate optional } /** * A master agreement identifier allocated by a party. FpML does not define the domain values associated with this element. Note that the domain values for this element are not strictly an enumerated list. */ concept MasterAgreementId { o String value optional o String masterAgreementIdScheme optional } /** * */ concept MasterAgreementType { o String value optional o String masterAgreementTypeScheme optional } /** * */ concept MasterAgreementVersion { o String value optional o String masterAgreementVersionScheme optional } /** * An entity for defining the master confirmation agreement executed between the parties. */ concept MasterConfirmation { o DateTime masterConfirmationDate o DateTime masterConfirmationAnnexDate optional } /** * */ concept MasterConfirmationAnnexType { o String value optional o String masterConfirmationAnnexTypeScheme optional } /** * */ concept MasterConfirmationType { o String value optional o String masterConfirmationTypeScheme optional } /** * An identifier used to identify matched cashflows. */ concept MatchId { o String value optional o String matchIdScheme optional } /** * A scheme identifying the types of metal product for a physically settled metal trade. */ concept Material { o String value optional o String commodityMetalProductTypeScheme optional } /** * A type defining a mathematical expression. */ concept Math { o String [] mixed optional o String [] any } /** * */ concept MatrixSource { o String value optional o String settledEntityMatrixSourceScheme optional } /** * */ concept MatrixTerm { o String value optional o String matrixTermScheme optional } /** * */ concept MatrixType { o String value optional o String matrixTypeScheme optional } /** * */ concept MaturingContractsType { o String [] loanContractDetailsModel optional } /** * A message used to notify another party that a trade has matured. This can be used to report, for example, that a swap has passed its final payment and can be removed, or that an option has expired without being executed. */ concept MaturityNotification extends CorrectableRequestMessage { } /** * A type defining the basic structure of all FpML messages which is refined by its derived types. */ abstract concept Message extends Document { } /** * The data type used for identifying a message address. */ concept MessageAddress { o String value optional o String messageAddressScheme optional } /** * A type defining the content model for a generic message header that is refined by its derived classes. */ abstract concept MessageHeader { } /** * The data type use for message identifiers. */ concept MessageId { o String value optional o String messageIdScheme } /** * A type defining the characteristics of the metal product being traded in a physically settled metal transaction. */ concept Metal { } /** * The physical delivery conditions for the transaction. */ concept MetalDelivery { o Double totalQuantityTolerance o Double periodQuantityTolerance o MetalTitleEnum title } /** * Physically settled leg of a physically settled Metal transaction. */ concept MetalPhysicalLeg extends PhysicalForwardLeg { o Double conversionFactor optional } /** * The type that indicates the type of media used to store the content. MimeType is used to determine the software product(s) that can read the content. MIME types are described in RFC 2046. */ concept MimeType { o String value optional o String mimeTypeScheme optional } /** * An event describing a non-recurring fee being paid at either the loan contract or facility level. */ concept MiscFeePayment extends NonRecurringFeePayment { } /** * A type defining a currency amount. */ concept Money extends MoneyBase { o Double amount } /** * Abstract base class for all money types. */ abstract concept MoneyBase { o String id optional } /** * A type defining a currency amount with a reference. */ concept MoneyRef extends PositiveMoney { } /** * An extension of the money type with the ability to specify a lender share amount in addition to the global amount (represented by 'amount'). */ concept MoneyWithParticipantShare extends Money { o Double shareAmount optional } /** * A type describing a mortgage asset. */ concept Mortgage extends UnderlyingAsset { o String issuerName optional o Double couponRate optional o DateTime maturity optional o Double originalPrincipalAmount optional o String tranche optional } /** * A type describing the typology of mortgage obligations. */ concept MortgageSector { o String value optional o String mortgageSectorScheme optional } /** * A struture that defines all the currencies in which funds can be drawn against a facility. */ concept MultiCurrency { } /** * A pricing data set that contains a series of points with coordinates. It is a sparse matrix representation of a multi-dimensional matrix. */ concept MultiDimensionalPricingData { o QuotationSideEnum side optional o DateTime time optional o DateTime valuationDate optional o DateTime expiryTime optional } /** * A type defining multiple exercises. As defining in the 2000 ISDA Definitions, Section 12.4. Multiple Exercise, the buyer of the option has the right to exercise all or less than all the unexercised notional amount of the underlying swap on one or more days in the exercise period, but on any such day may not exercise less than the minimum notional amount or more than the maximum notional amount, and if an integral multiple amount is specified, the notional exercised must be equal to or, be an integral multiple of, the integral multiple amount. */ concept MultipleExercise { o Double integralMultipleAmount optional o Double minimumNotionalAmount optional o Integer minimumNumberOfOptions optional o Double maximumNotionalAmount optional o Double maximumNumberOfOptions optional } /** * */ concept MultipleValuationDates extends SingleValuationDate { o Integer businessDaysThereafter optional o Integer numberValuationDates optional } /** * */ concept MutualFund extends UnderlyingAsset { o Boolean openEndedFund optional o String fundManager optional } /** * A structure including a net and/or a gross amount and possibly fees and commissions. */ concept NetAndGross { o Double net optional o Double gross optional o Double net1 optional } /** * An abstract base class for all swap types which have a single netted leg, such as Variance Swaps, and Correlation Swaps. */ abstract concept NettedSwapBase extends Product { } /** * A type defining the content model for a request message that cannot be subsequently corrected or retracted. */ concept NonCorrectableRequestMessage extends RequestMessage { o Integer sequenceNumber optional } /** * A type defining the parameters used when the reference currency of the swapStream is non-deliverable. */ concept NonDeliverableSettlement { } /** * Describes a currency which may be delivered instead */ concept NonDeliverableSubstitute extends FxDisruptionFallback { } /** * A type defining a currency amount or a currency amount schedule. */ concept NonNegativeAmountSchedule extends NonNegativeSchedule { } /** * A type defining a non negative money amount. */ concept NonNegativeMoney extends MoneyBase { o Double amount } /** * A complex type to specify non negative payments. */ concept NonNegativePayment extends PaymentBaseExtended { } /** * A type defining a schedule of non-negative rates or amounts in terms of an initial value and then a series of step date and value pairs. On each step date the rate or amount changes to the new step value. The series of step date and value pairs are optional. If not specified, this implies that the initial value remains unchanged over time. */ concept NonNegativeSchedule { o Double initialValue o String id optional } /** * A type defining a step date and non-negative step value pair. This step definitions are used to define varying rate or amount schedules, e.g. a notional amortization or a step-up coupon schedule. */ concept NonNegativeStep extends StepBase { o Double stepValue } /** * The details of a fixed payment. Can be used for a forward transaction or as the base for a more complex fixed leg component such as the fixed leg of a swap. */ concept NonPeriodicFixedPriceLeg extends CommoditySwapLeg { o Boolean masterAgreementPaymentDates optional } /** * An event describing a non-recurring fee being paid at either the loan contract or facility level. */ abstract concept NonRecurringFeePayment extends AbstractFacilityContractEvent { } /** * A loan servicing notification used to communicate a non-recurring fee payment made by the borrower. */ concept NonRecurringFeePaymentNotification extends AbstractContractNotification { o String facilityFeePaymentGroupGroup o String [] loanContractDetailsModel optional } /** * A list of all non-recurring (one-off) fee types. */ concept NonRecurringMiscFeeType { o String value optional o String nonRecurringMiscFeeTypeScheme optional } /** * */ concept NotDomesticCurrency { o Boolean applicable } /** * A type defining the basic content for a message sent to inform another system that some 'business event' has occured. Notifications are not expected to be replied to. */ abstract concept NotificationMessage extends Message { o Integer sequenceNumber optional } /** * A type that refines the generic message header to match the requirements of a NotificationMessage. */ concept NotificationMessageHeader extends MessageHeader { o DateTime creationTimestamp o DateTime expiryTimestamp optional } /** * */ concept NotifyingParty { } /** * An type defining the notional amount or notional amount schedule associated with a swap stream. The notional schedule will be captured explicitly, specifying the dates that the notional changes and the outstanding notional amount that applies from that date. A parametric representation of the rules defining the notional step schedule can optionally be included. */ concept Notional { o String id optional } /** * A complex type to specify the notional amount. */ concept NotionalAmount extends NonNegativeMoney { } /** * A reference to the notional amount. */ concept NotionalAmountReference extends Reference { o String href } /** * A reference to the notional amount. */ concept NotionalReference extends Reference { } /** * How a notional is to be reported for this reporting regime. E.g. for ESMA EMIR, it would be Nominal or Monetary Amount */ concept NotionalReportingType { o String value optional o String notionalTypeScheme optional } /** * A type defining a parametric representation of the notional step schedule, i.e. parameters used to generate the notional balance on each step date. The step change in notional can be expressed in terms of either a fixed amount or as a percentage of either the initial notional or previous notional amount. This parametric representation is intended to cover the more common amortizing/accreting. */ concept NotionalStepRule { o DateTime firstNotionalStepDate o DateTime lastNotionalStepDate o Double notionalStepAmount optional o Double notionalStepRate optional o StepRelativeToEnum stepRelativeTo optional } /** * */ concept NoTouchLowerBarrierObservation { o Double triggerRate optional } /** * */ concept NoTouchRateObservation { o DateTime observationStartDate o DateTime observationEndDate o ExerciseSideEnum exerciseSide optional o SettlementTypeEnum settlementType optional o Boolean isExercisable optional } /** * */ concept NoTouchUpperBarrierObservation { o Double triggerRate optional } /** * A reference to the number of options. */ concept NumberOfOptionsReference extends Reference { } /** * A reference to the number of units. */ concept NumberOfUnitsReference extends Reference { } /** * */ concept ObligationAccelerationEvent extends CreditEvent { } /** * */ concept ObligationDefaultEvent extends CreditEvent { } /** * */ concept Obligations { o ObligationCategoryEnum category o Boolean notSubordinated optional o Boolean notSovereignLender optional o Boolean notDomesticLaw optional o Boolean listed optional o Boolean notDomesticIssuance optional o Boolean fullFaithAndCreditObLiability optional o Boolean generalFundObligationLiability optional o Boolean revenueObligationLiability optional o Boolean notContingent optional o String excluded optional o String othReferenceEntityObligations optional o Boolean cashSettlementOnly optional o Boolean deliveryOfCommitments optional o Boolean continuity optional } /** * A type defining the frequency at which calculation period end dates occur within the regular part of the calculation period schedule and thier roll date convention. In case the calculation frequency is of value T (term), the period is defined by the swap\swapStream\calculationPerioDates\effectiveDate and the swap\swapStream\calculationPerioDates\terminationDate. */ concept ObservationFrequency extends Period { o RollConventionEnum periodConvention optional } /** * */ concept ObservedPrice { o DateTime date optional o DateTime time optional } /** * */ concept ObservedRate { o Double rate o DateTime date optional o DateTime time optional } /** * A type defining an offset used in calculating a new date relative to a reference date. E.g. calendar days, business days, Commodity Business days, etc.. */ concept Offset extends Period { o DayTypeEnum dayType optional } /** * Allows the specification of a time that may be on a day prior or subsequent to the day in question. This type is intended for use with a day of the week (i.e. where no actual date is specified) as part of, for example, a period that runs from 23:00-07:00 on a series of days and where holidays on the actual days would affect the entire time period. */ concept OffsetPrevailingTime { } /** * The physical delivery conditions for an oil product. */ concept OilDelivery { } /** * Physically settled leg of a physically settled oil product transaction. */ concept OilPhysicalLeg extends PhysicalSwapLeg { } /** * The physical delivery conditions specific to an oil product delivered by pipeline. */ concept OilPipelineDelivery { o Boolean deliverableByBarge } /** * The specification of the oil product to be delivered. */ concept OilProduct { } /** * The type of physical commodity product to be delivered. */ concept OilProductType { o String value optional o String commodityOilProductTypeScheme optional } /** * The physical delivery conditions specific to an oil product delivered by title transfer. */ concept OilTransferDelivery { o Boolean applicable } /** * */ concept OnBehalfOf { } /** * A type for defining the common features of options. Buyer/seller information is not normally used in Transparency view but is optional in case the information is needed for administrative purposes such as Reporting Party determination. */ abstract concept Option extends Product { } /** * A type defining an early termination provision where either or both parties have the right to exercise. */ concept OptionalEarlyTermination { o String exerciseGroup o Boolean followUpConfirmation optional } /** * A type defining the adjusted dates associated with an optional early termination provision. */ concept OptionalEarlyTerminationAdjustedDates { } /** * A type for defining the common features of options. */ abstract concept OptionBase extends Option { o OptionTypeEnum optionType } /** * Base type for options starting with the 4-3 release, until we refactor the schema as part of the 5-0 release series. */ abstract concept OptionBaseExtended extends OptionBase { o String exerciseGroup o Double optionEntitlement optional o Double numberOfOptions optional o SettlementTypeEnum settlementType optional } /** * */ concept OptionEvent extends AbstractEvent { } /** * A structure describing an option exercise. The OptionExercise type supports partial exercise (specify the number of options or amount to exercise), full exercise (use fullExercise flag), as well as the option to request options not to be exercised. */ concept OptionExercise extends AbstractEvent { o DateTime exerciseDate optional o DateTime exerciseTime optional o ExerciseTimingEnum exerciseTiming optional o ExerciseActionEnum exerciseAction optional o Boolean expiry optional o Boolean fullExercise optional o Double exerciseInNumberOfOptions optional o Double outstandingNumberOfOptions optional o Double exerciseInNumberOfUnits optional o Double outstandingNumberOfUnits optional o ExerciseSideEnum exerciseSide optional o SettlementTypeEnum settlementType optional } /** * */ concept OptionExerciseAmounts { o Double exerciseInNumberOfOptions optional o Double outstandingNumberOfOptions optional o Double exerciseInNumberOfUnits optional o Double outstandingNumberOfUnits optional } /** * A structure describing an option expiring (i.e. passing its last exercise time and becoming worthless.) */ concept OptionExpiry extends AbstractEvent { o DateTime date o DateTime time } /** * A structure describing an option expiring. */ concept OptionExpiryBase { o DateTime date o DateTime time } /** * A type for defining option features. */ concept OptionFeature { } /** * A type for defining option features. */ concept OptionFeatures { } /** * A type for defining the strike price for an option as a numeric value without currency. */ concept OptionNumericStrike { o Double strikePrice optional o Double strikePercentage optional } /** * A type for defining the strike price for an equity option. The strike price is either: (i) in respect of an index option transaction, the level of the relevant index specified or otherwise determined in the transaction; or (ii) in respect of a share option transaction, the price per share specified or otherwise determined in the transaction. This can be expressed either as a percentage of notional amount or as an absolute value. */ concept OptionStrike extends OptionNumericStrike { } /** * The type of option transaction (e.g. Call, Put); specifies whether the option allows the holder to buy or sell the underlying asset, or pay or receive a payment related to the price of underlying asset, in the event of exercise. */ concept OptionType { o String value optional o String optionTypeScheme optional } /** * A type that an identifier for an order. */ concept OrderId { o String value optional o String orderIdScheme optional } /** * A type that an order's identifier(s). */ concept OrderIdentifier { } /** * A characteristic of an organization used in declaring an end-user exception. */ concept OrganizationCharacteristic { o String value optional o String organizationCharacteristicScheme optional } /** * A code that describes what type of role an organization plays, for example a SwapsDealer, a Major Swaps Participant, or Other */ concept OrganizationType { o String value optional o String organizationTypeScheme optional } /** * */ concept OriginalMessageType { o String any } /** * */ concept OriginatingEvent { o String value optional o String originatingEventScheme optional } /** * Indicator as to the type of transaction in accordance with Articles 20(3)(a) and 21(5)(a) of Regulation (EU) 600/2014. */ concept OtcClassification { o String value optional o String otcClassificationScheme optional } /** * An entity for defining the an agreement executed between parties. */ concept OtherAgreement { o DateTime date optional } /** * A agreement identifier allocated by a party. FpML does not define the domain values associated with this element. Note that the domain values for this element are not strictly an enumerated list. */ concept OtherAgreementId { o String value optional o String agreementIdScheme optional } /** * */ concept OtherAgreementType { o String value optional o String agreementTypeScheme optional } /** * */ concept OtherAgreementVersion { o String value optional o String agreementVersionScheme optional } /** * A collection of outstanding loan contract and/or letter of credit structures belonging to a single facility. */ concept OutstandingContractsStatement extends AbstractLoanStatement { o String [] group optional } /** * A structure that represents outstanding loan contracts or outstanding letter of credit position. Both the global and lender position (current and prior) levels can be represented. */ concept OutstandingsPosition { } /** * A structure that defines an override identifier based on a qualifying scheme. */ concept OverrideId { o String value optional o String overrideIdScheme } /** * A type that identifies an override record. */ concept OverrideIdentifier { o String id optional } /** * Identifying information for a tradePackage (a bundle of trades). */ concept PackageHeader { o Double size optional } /** * A type defining additional information that may be recorded against a package of trades. */ concept PackageInformation { o Boolean intentToAllocate optional o Boolean intentToClear optional } /** * Summary information about a trade package. */ concept PackageSummary { o Double size optional o Double sequenceNumber optional } /** * A type that describes what thpe of package this is, e.g. Butterfly. */ concept PackageType { o String value optional o String packageTypeScheme optional } /** * An adjustment used to accommodate a parameter of the input trade, e.g. the strike. */ concept ParametricAdjustment { o String name } /** * A value of the adjustment point, consisting of the x value and the corresponding y value. */ concept ParametricAdjustmentPoint { o Double parameterValue o Double adjustmentValue } /** * A type defining partial exercise. As defined in the 2000 ISDA Definitions, Section 12.3 Partial Exercise, the buyer of the option may exercise all or less than all the notional amount of the underlying swap but may not be less than the minimum notional amount (if specified) and must be an integral multiple of the integral multiple amount if specified. */ concept PartialExercise { o Double integralMultipleAmount optional o Double minimumNotionalAmount optional o Integer minimumNumberOfOptions optional } /** * A type defining a legal entity or a subdivision of a legal entity. Parties can perform multiple roles in a trade lifecycle. For example, the principal parties obligated to make payments from time to time during the term of the trade, but may include other parties involved in, or incidental to, the trade, such as parties acting in the role of novation transferor/transferee, broker, calculation agent, etc. In FpML roles are defined in multiple places within a document. */ concept Party { o String id } /** * A type that specifies the classification of a party. */ concept PartyEntityClassification { } /** * The data type used for party group classification. */ concept PartyGroupType { o String value optional o String partyGroupTypeScheme optional } /** * The data type used for party identifiers. */ concept PartyId { o String value optional o String partyIdScheme } /** * A type defining additional information that may be recorded against a message. */ concept PartyMessageInformation { } /** * The data type used for the legal name of an organization. */ concept PartyName { o String value optional o String partyNameScheme optional } /** * A type to represent agreed period of notice to be given in advance before exercise of the open repo trade by a party requesting such exercise and reference to that party. */ concept PartyNoticePeriod { } /** * A type to represent a portfolio name for a particular party. */ concept PartyPortfolioName { o String id optional } /** * A type that describes a party profile record. */ concept PartyProfile extends AbstractPartyProfile { o String [] group optional } /** * A structure that defines documentation related to a party profile. */ concept PartyProfileDocumentation { } /** * A structure that defines a party profile identifier based on a qualifying scheme. */ concept PartyProfileId { o String value optional o String partyProfileIdScheme } /** * A type that identifies a party profile record. */ concept PartyProfileIdentifier { o String id optional } /** * Reference to a party. */ concept PartyReference extends Reference { } /** * A type containing a code representing how two parties are related, e.g. Affiliated, Intragroup, None. */ concept PartyRelationshipType { o String value optional o String id optional o String partyRelationshipTypeScheme optional } /** * A type describing a role played by a party in one or more transactions. Examples include roles such as guarantor, custodian, confirmation service provider, etc. This can be extended to provide custom roles. */ concept PartyRole { o String value optional o String partyRoleScheme optional } /** * A type refining the role a role played by a party in one or more transactions. Examples include "AllPositions" and "SomePositions" for Guarantor. This can be extended to provide custom types. */ concept PartyRoleType { o String value optional o String partyRoleTypeScheme optional } /** * A type defining one or more trade identifiers allocated to the trade by a party. A link identifier allows the trade to be associated with other related trades, e.g. trades forming part of a larger structured transaction. It is expected that for external communication of trade there will be only one tradeId sent in the document per party. */ concept PartyTradeIdentifier extends TradeIdentifier { } /** * A reference to a partyTradeIdentifier object. */ concept PartyTradeIdentifierReference extends Reference { } /** * A type containing multiple partyTradeIdentifier. */ concept PartyTradeIdentifiers { } /** * A type defining party-specific additional information that may be recorded against a trade. */ concept PartyTradeInformation { o Boolean isAccountingHedge optional o Boolean intentToAllocate optional o Boolean intentToClear optional o Boolean endUserException optional o Boolean nonStandardTerms optional o Boolean offMarketPrice optional o Boolean largeSizeTrade optional o Boolean compressedTrade optional o Boolean isSecuritiesFinancing optional o Boolean isCommodityHedge optional o Boolean isDisputed optional } /** * Type which contains pass through payments. */ concept PassThrough { } /** * Type to represent a single pass through payment. */ concept PassThroughItem { o Double passThroughPercentage } /** * A type for defining payments. In Transparency view, normally the payer and receiver party references are not used; however they may be provided if necessary for administrative activities such as Reporting Party Determination in FX. */ concept Payment extends PaymentBase { o Double discountFactor optional } /** * An abstract base class for payment types. */ abstract concept PaymentBase { o String id optional } /** * Base type for payments. */ abstract concept PaymentBaseExtended extends PaymentBase { } /** * A type defining the adjusted payment date and associated calculation period parameters required to calculate the actual or projected payment amount. This type forms part of the cashflow representation of a swap stream. */ concept PaymentCalculationPeriod { o DateTime unadjustedPaymentDate optional o DateTime adjustedPaymentDate optional o Double fixedPaymentAmount optional o Double discountFactor optional o String id optional } /** * A type defining parameters used to generate the payment dates schedule, including the specification of early or delayed payments. Payment dates are determined relative to the calculation period dates or the reset dates. */ concept PaymentDates { o DateTime firstPaymentDate optional o DateTime lastRegularPaymentDate optional o PayRelativeToEnum payRelativeTo o String id optional } /** * Reference to a payment dates structure. */ concept PaymentDatesReference extends Reference { } /** * */ concept PaymentDetail extends PaymentBase { } /** * Details on the referenced payment. e.g. Its cashflow components, settlement details. */ concept PaymentDetails { } /** * A structure that represents interest payment projections. */ concept PaymentProjection { o DateTime nextPaymentDate } /** * Reference to a payment. */ concept PaymentReference extends Reference { } /** * The abstract base type from which all calculation rules of the independent amount must be derived. */ abstract concept PaymentRule { } /** * */ concept PaymentType { o String value optional o String paymentTypeScheme optional } /** * */ concept PCDeliverableObligationCharac { o Boolean applicable o Boolean partialCashSettlement optional } /** * An event representing a change in the penalty rate applicable to outstanding loans. */ concept PenaltyRateChange extends FacilityRateChangeEvent { } /** * An event representing expiration of the penalty rate. */ concept PenaltyRateExpiry extends AbstractFacilityContractEvent { } /** * A structure representing a pending dividend or coupon payment. */ concept PendingPayment extends PaymentBase { o DateTime paymentDate } /** * A type defining a content model for a calculation rule defined as percentage of the notional amount. */ concept PercentageRule extends PaymentRule { o Double paymentPercent } /** * The acceptable tolerance in the delivered quantity of a physical commodity product in terms of a percentage of the agreed delivery quantity. */ concept PercentageTolerance { o Double postitive o Double negative } /** * A type to define recurring periods or time offsets. */ concept Period { o Integer periodMultiplier o PeriodEnum period o String id optional } /** * */ concept PeriodicDates { } /** * */ concept PeriodicPayment extends PaymentBase { o DateTime firstPeriodStartDate optional o DateTime firstPaymentDate optional o DateTime lastRegularPaymentDate optional o RollConventionEnum rollConvention optional } /** * A structure that represents a rate applicable against a well-defined or open-ended period. */ concept PeriodRate { o DateTime startDate o DateTime endDate optional o Double rate } /** * A type that represents information about a person connected with a trade or business process. */ concept Person { o String honorific optional o String firstName optional o String [] middleName optional o String [] initial optional o String surname optional o String suffix optional o DateTime dateOfBirth optional o String id optional } /** * An identifier used to identify an individual person. */ concept PersonId { o String value optional o String personIdScheme optional } /** * Reference to an individual. */ concept PersonReference extends Reference { } /** * A type describing a role played by a person in one or more transactions. Examples include roles such as Trader, Broker, MiddleOffice, Legal, etc. This can be extended to provide custom roles. */ concept PersonRole { o String value optional o String personRoleScheme optional } /** * The type of perturbation applied to compute a derivative perturbatively. */ concept PerturbationType { o String value optional o String perturbationTypeScheme optional } /** * The common components of a physically settled leg of a Commodity Forward. This is an abstract type and should be extended by commodity-specific types. */ abstract concept PhysicalForwardLeg extends CommodityForwardLeg { } /** * A structure that describes how an option settles into a physical trade. */ concept PhysicalSettlement { o String productGroup optional } /** * */ concept PhysicalSettlementPeriod { o Boolean businessDaysNotSpecified optional o Integer businessDays optional o Integer maximumBusinessDays optional } /** * */ concept PhysicalSettlementTerms extends SettlementTerms { o Boolean escrow optional o Boolean sixtyBusinessDaySettlementCap optional } /** * The common components of a physically settled leg of a Commodity Swap. This is an abstract type and should be extended by commodity-specific types. */ abstract concept PhysicalSwapLeg extends CommoditySwapLeg { } /** * A type representing an arbitary grouping of trade references. */ concept Portfolio { o String id optional } /** * A structure used to group together individual messages that can be acted on at a group level. */ concept PortfolioConstituentReference extends PortfolioReferenceBase { o Integer sequenceNumber } /** * The data type used for portfolio names. */ concept PortfolioName { o String value optional o String id optional o String portfolioNameScheme optional } /** * A structure used to group together individual messages that can be acted on at a group level. */ concept PortfolioReference extends PortfolioReferenceBase { o Integer sequenceNumber o Boolean submissionsComplete optional } /** * A structure used to identify a portfolio in a message. */ concept PortfolioReferenceBase { } /** * A type defining a positive money amount */ concept PositiveMoney extends MoneyBase { o Double amount } /** * Describes a postponement */ concept Postponement extends FxDisruptionFallback { o Integer maximumNumberOfDays optional } /** * A type for defining a premium. */ concept Premium extends SimplePayment { o PremiumTypeEnum premiumType optional o Double percentageOfNotional optional o Double discountFactor optional } /** * A type that describes the option premium as quoted. */ concept PremiumQuote { o Double value o PremiumQuoteBasisEnum quoteBasis } /** * A structure that represents the prepayment structure associated within a facility. */ concept Prepayment extends AbstractFacilityEvent { } /** * A type for defining PrePayment. */ concept PrePayment1 extends PaymentBase { o Boolean prePayment } /** * A loan servicing notification designed to communicate the specific business events associated with a pre-payment made by the borrower. */ concept PrepaymentNotification extends AbstractContractNotification { } /** * A type for defining a time with respect to a geographic location, for example 11:00 Phoenix, USA. This type should be used where a wider range of locations than those available as business centres is required. */ concept PrevailingTime { o HourMinuteTime hourMinuteTime } /** * A type describing the strike price. */ concept Price { o Double accruedInterestPrice optional o Double accruedInterestPrice1 optional o Double cleanNetPrice optional } /** * A structure describing the criteria for price materiality. */ concept PriceMateriality extends FxDisruptionEvent { o Double percentage } /** * The units in which a price is quoted. */ concept PriceQuoteUnits { o String value optional o String priceQuoteUnitsScheme optional } /** * A type defining the parameters used to get a price quote to replace the settlement rate option that is disrupted. */ concept PriceSourceDisruption { } /** * The reason a trade's price does not reflect the current market price. */ concept PricingContext { o String value optional o String pricingContextScheme optional } /** * A set of index values that identify a pricing data point. For example: (strike = 17%, expiration = 6M, term = 1Y. */ concept PricingDataPointCoordinate { o String [] pricingStructureIndexModel optional o Double [] strike optional o String id optional } /** * Reference to a Pricing Data Point Coordinate. */ concept PricingDataPointCoordinateReference extends Reference { } /** * The substitution of a pricing input (e.g. curve) for another, used in generating prices and risks for valuation scenarios. */ concept PricingInputReplacement { } /** * The type of pricing structure represented. */ concept PricingInputType { o String value optional o String pricingInputTypeScheme optional } /** * For an asset (e.g. a reference/benchmark asset), the pricing structure used to price it. Used, for example, to specify that the rateIndex "USD-LIBOR-Telerate" with term = 6M is priced using the "USD-LIBOR-Close" curve. */ concept PricingMethod { } /** * A scheme identifying the types of pricing model used to evaluate the price of an asset. Examples include Intrinsic, ClosedForm, MonteCarlo, BackwardInduction. */ concept PricingModel { o String value optional o String pricingModelScheme optional } /** * A definition of the mathematical derivative with respect to a specific pricing parameter. */ concept PricingParameterDerivative { o String description optional o String id optional } /** * Reference to a partial derivative. */ concept PricingParameterDerivativeReference extends Reference { } /** * A definition of a shift with respect to a specific pricing parameter. */ concept PricingParameterShift { o Double shift o String id optional } /** * An abstract pricing structure base type. Used as a base for structures such as yield curves and volatility matrices. */ abstract concept PricingStructure { o String name optional o String id optional } /** * A single valued point with a set of coordinates that define an arbitrary number of indentifying indexes (0 or more). Note that the collection of coordinates/coordinate references for a PricingStructurePoint must not define a given dimension (other than "generic") more than once. This is to avoid ambiguity. */ concept PricingStructurePoint { o String [] pricingCoordinateOrReferenceModel optional o String underlyingAssetGroup optional o Double value optional o QuotationSideEnum side optional o DateTime time optional o DateTime valuationDate optional o DateTime expiryTime optional o String id optional } /** * Reference to a pricing structure or any derived components (i.e. yield curve). */ concept PricingStructureReference extends Reference { } /** * An abstract pricing structure valuation base type. Used as a base for values of pricing structures such as yield curves and volatility matrices. Derived from the "Valuation" type. */ concept PricingStructureValuation extends Valuation { o DateTime buildDateTime optional } /** * A type defining a principal exchange amount and adjusted exchange date. The type forms part of the cashflow representation of a swap stream. */ concept PrincipalExchange { o DateTime unadjustedPrincipalExchangeDate optional o DateTime adjustedPrincipalExchangeDate optional o Double principalExchangeAmount optional o Double discountFactor optional o String id optional } /** * Specifies the principal exchange amount, either by explicitly defining it, or by point to an amount defined somewhere else in the swap document. */ concept PrincipalExchangeAmount { } /** * Specifies each of the characteristics of the principal exchange cashflows, in terms of paying/receiving counterparties, amounts and dates. */ concept PrincipalExchangeDescriptions { } /** * A type describing the principal exchange features of the return swap. */ concept PrincipalExchangeFeatures { } /** * A type defining which principal exchanges occur for the stream. */ concept PrincipalExchanges { o Boolean initialExchange o Boolean finalExchange o Boolean intermediateExchange o String id optional } /** * Provides a lexical location (i.e. a line number and character for bad XML) or an XPath location (i.e. place to identify the bad location for valid XML). */ concept ProblemLocation { o String value optional o String locationType optional } /** * The base type which all FpML products extend. */ abstract concept Product { o String id optional } /** * Deprecated: A type defining a USI for the a subproduct component of a strategy. */ concept ProductComponentIdentifier { } /** * */ concept ProductId { o String value optional o String productIdScheme optional } /** * Reference to a full FpML product. */ concept ProductReference extends Reference { } /** * Summary information about the product that was traded. This is intended primarily for trade reporting by TRs. */ concept ProductSummary { o DateTime finalSettlementDate optional o SettlementTypeEnum settlementType optional o Double indexFactor optional } /** * */ concept ProductType { o String value optional o String productTypeScheme optional } /** * The proposed collateral allocation. */ concept ProposedCollateralAllocation { o String [] group optional } /** * A structure that defines a restriction pertaining to which facilities must be traded on a pro-rata basis. */ concept ProRataFacilities { } /** * */ concept ProtectionTerms { o String id optional } /** * Reference to protectionTerms component. */ concept ProtectionTermsReference extends Reference { } /** * */ concept PubliclyAvailableInformation { o Boolean standardPublicSources optional o String [] publicSource optional o Integer specifiedNumber optional } /** * A pointer tyle reference to a Quantity defined elsewhere. */ concept QuantityReference extends Reference { } /** * */ concept QuantityUnit { o String value optional o String quantityUnitScheme optional } /** * Determines the currency rate that the seller of the equity amounts will apply at each valuation date for converting the respective amounts into a currency that is different from the currency denomination of the underlyer. */ concept Quanto { } /** * Some kind of numerical measure about an asset, eg. its NPV, together with characteristics of that measure, together with optional sensitivities. */ concept Quotation { o Double value optional o QuotationSideEnum side optional o DateTime time optional o DateTime valuationDate optional o DateTime expiryTime optional } /** * A type representing a set of characteristics that describe a quotation. */ concept QuotationCharacteristics { o QuotationSideEnum side optional o DateTime time optional o DateTime valuationDate optional o DateTime expiryTime optional } /** * A collection of quoted assets. */ concept QuotedAssetSet { } /** * A type that describes the composition of a rate that has been quoted or is to be quoted. This includes the two currencies and the quotation relationship between the two currencies and is used as a building block throughout the FX specification. */ concept QuotedCurrencyPair { o QuoteBasisEnum quoteBasis } /** * The type of the time of the quote. */ concept QuoteTiming { o String value optional o String quoteTimingScheme optional } /** * The abstract base class for all types which define interest rate streams. */ abstract concept Rate { o String id optional } /** * */ concept RateIndex extends UnderlyingAsset { } /** * A structure that defines the limits associated with rates that can be applied to a loan instrument. */ concept RateLimits { } /** * A type defining parameters associated with an individual observation or fixing. This type forms part of the cashflow representation of a stream. */ concept RateObservation { o DateTime resetDate optional o DateTime adjustedFixingDate optional o Double observedRate optional o Double treatedRate optional o Integer observationWeight o Double forecastRate optional o Double treatedForecastRate optional o String id optional } /** * Reference to any rate (floating, inflation) derived from the abstract Rate component. */ concept RateReference { } /** * */ concept RateSourcePage { o String value optional o String rateSourcePageScheme optional } /** * A type defining a content model for describing the nature and possible location of a error within a previous message. */ concept Reason { o String description optional } /** * Defines a list of machine interpretable error codes. */ concept ReasonCode { o String value optional o String reasonCodeScheme optional } /** * The abstract base class for all types which define intra-document pointers. */ abstract concept Reference { } /** * Specifies the reference amount using a scheme. */ concept ReferenceAmount { o String value optional o String referenceAmountScheme optional } /** * A type to describe an institution (party) identified by means of a coding scheme and an optional name. */ concept ReferenceBank { o String referenceBankName optional } /** * */ concept ReferenceBankId { o String value optional o String referenceBankIdScheme optional } /** * */ concept ReferenceInformation { o Boolean noReferenceObligation optional o Boolean unknownReferenceObligation optional o Boolean allGuarantees optional o Double referencePrice optional o Boolean referencePolicy optional o Boolean securedList optional } /** * */ concept ReferenceLevel { o Double amount } /** * CPD Reference Level: millimeters or inches of daily precipitation HDD Reference Level: degree-days CDD Reference Level: degree-days. */ concept ReferenceLevelUnit { o String value optional o String weatherIndexReferenceLevelScheme optional } /** * */ concept ReferenceObligation { o String [] group optional o Boolean standardReferenceObligation optional } /** * */ concept ReferencePair { o Boolean noReferenceObligation optional } /** * This type contains all the reference pool items to define the reference entity and reference obligation(s) in the basket. */ concept ReferencePool { } /** * This type contains all the constituent weight and reference information. */ concept ReferencePoolItem { } /** * A complex type used to specify the option and convertible bond option strike when expressed in reference to a swap curve. */ concept ReferenceSwapCurve { } /** * A code that describes the world region of a counterparty. For example, NorthAmerica, Europe, Asia. */ concept Region { o String value optional o String regionScheme optional } /** * An ID assigned by a regulator to an organization registered with it. (NOTE: should this just by represented by an alternate party ID?) */ concept RegulatorId { o String value optional o String regulatorIdScheme optional } /** * */ concept RelatedBusinessUnit { } /** * */ concept RelatedParty { } /** * */ concept RelatedPerson { } /** * A type defining a date (referred to as the derived date) as a relative offset from another date (referred to as the anchor date). If the anchor date is itself an adjustable date then the offset is assumed to be calculated from the adjusted anchor date. A number of different scenarios can be supported, namely; 1) the derived date may simply be a number of calendar periods (days, weeks, months or years) preceding or following the anchor date; 2) the unadjusted derived date may be a number of calendar periods (days, weeks, months or years) preceding or following the anchor date with the resulting unadjusted derived date subject to adjustment in accordance with a specified business day convention, i.e. the derived date must fall on a good business day; 3) the derived date may be a number of business days preceding or following the anchor date. Note that the businessDayConvention specifies any required adjustment to the unadjusted derived date. A negative or positive value in the periodMultiplier indicates whether the unadjusted derived precedes or follows the anchor date. The businessDayConvention should contain a value NONE if the day type element contains a value of Business (since specifying a negative or positive business days offset would already guarantee that the derived date would fall on a good business day in the specified business centers). */ concept RelativeDateOffset extends Offset { o BusinessDayConventionEnum businessDayConvention } /** * A type describing a set of dates defined as relative to another set of dates. */ concept RelativeDates extends RelativeDateOffset { o Integer periodSkip optional } /** * A type describing a date when this date is defined in reference to another date through one or several date offsets. */ concept RelativeDateSequence { } /** * A type which represents Pricing relative to a Benchmark. */ concept RelativePrice { o Double spread o String [] bondEquityModel optional } /** * Reference to relevant underlying date. */ concept RelevantUnderlyingDateReference extends Reference { o String href } /** * An event representing a principal repayment being made by the borrower. */ concept Repayment extends AbstractLoanContractEvent { o Double price optional o Boolean refusalAllowed o Boolean borrowerMandatory optional o Boolean scheduledRepayment optional } /** * A Repo, modeled as an FpML:Product. Note: this Repo model is a candidate model for further industry input. */ concept Repo extends Product { o RepoDurationEnum duration optional o CallingPartyEnum callingParty optional o String [] bondEquityModel optional } /** * A transaction leg for a repo is equivalent to a single cash transaction. It is augmented here to carry some values that are of interest for the repo. Also note that the BuyerSeller model in this transaction must be the exact opposite of the one found in the near leg. */ concept RepoFarLeg extends RepoLegBase { o Double repoInterest optional } /** * A transaction leg for a repo is equivalent to a single cash transaction. It is augmented here to carry some values that are of interest for the repo. Also note that the BuyerSeller model in this transaction must be the exact opposite of the one found in the near leg. */ concept RepoLegBase extends Leg { } /** * A transaction leg for a repo is equivalent to a single cash transaction. */ concept RepoNearLeg extends RepoLegBase { } /** * A type that can be used to hold an identifier for a report instance. */ concept ReportId { o String value optional o String reportIdScheme optional } /** * How a Boolean value is to be reported for this regulator. Typically "true" or "false", but for ESMA "X" is also allowed, to indicate not supplied. */ concept ReportingBoolean { o String value optional o String reportingBooleanScheme optional } /** * A scheme identifying the type of currency that was used to report the value of an asset. For example, this could contain values like SettlementCurrency, QuoteCurrency, UnitCurrency, etc. */ concept ReportingCurrencyType { o String value optional o String reportingCurrencyTypeScheme optional } /** * A type containing a code representing the level at which this is reported (e.g. Trade or Position) */ concept ReportingLevel { o String value optional o String id optional o String reportingLevelScheme optional } /** * A value that explains the reason or purpose that information is being reported. Examples might include RealTimePublic reporting, PrimaryEconomicTerms reporting, Confirmation reporting, or Snapshot reporting. */ concept ReportingPurpose { o String value optional o String reportingPurposeScheme optional } /** * Provides information about how the information in this message is applicable to a regulatory reporting process. */ concept ReportingRegime { o Boolean mandatoryFacilityExecution optional o Boolean mandatoryFacilityExecutionException optional o Boolean exceedsClearingThreshold optional o Boolean preEnactmentTrade optional o Boolean transmissionOfOrder optional } /** * A type that provides identification for reporting regimes. */ concept ReportingRegimeIdentifier { } /** * An identifier of an reporting regime or format used for regulatory reporting, for example DoddFrankAct, MiFID, HongKongOTCDRepository, etc. */ concept ReportingRegimeName { o String value optional o String reportingRegimeNameScheme optional } /** * A type containing a code representing the role of a party in a report, e.g. the originator, the recipient, the counterparty, etc. This is used to clarify which participant's information is being reported. */ concept ReportingRole { o String value optional o String id optional o String reportingRoleScheme optional } /** * A type that allows the specific report and section to be identified. */ concept ReportSectionIdentification { o Integer sectionNumber optional } /** * A type for defining ISDA 2002 Equity Derivative Representations. */ concept Representations { o Boolean nonReliance o Boolean agreementsRegardingHedging o Boolean indexDisclaimer optional o Boolean additionalAcknowledgements } /** * */ concept RepudiationMoratoriumEvent extends CreditEvent { } /** * A message requesting that a trade be split among several accounts. */ concept RequestAllocation extends CorrectableRequestMessage { } /** * A message withdrawing a request that a trade be split among several accounts. */ concept RequestAllocationRetracted extends NonCorrectableRequestMessage { } /** * A message requesting that a trade be cleared by a clearing service. */ concept RequestClearing extends CorrectableRequestMessage { o String additionalEventGroup optional } /** * */ concept RequestClearingEligibility extends CorrectableRequestMessage { o String additionalEventGroup optional } /** * A message withdrawing a request that a trade be cleared by a clearing service. */ concept RequestClearingRetracted extends NonCorrectableRequestMessage { o String additionalEventGroup optional } /** * */ concept RequestCollateralAllocation extends CorrectableRequestMessage { o String serviceName optional } /** * A message type defining the start of the confirmation process. The message may be used to request the confirmation of a new trade or any other event supported by FpML such as novation, terminations, amendments, etc. */ concept RequestConfirmation extends CorrectableRequestMessage { o String additionalEventGroup optional } /** * A message requesting that the sender be authorized by the recipient to peform an action. */ concept RequestConsent extends CorrectableRequestMessage { o String additionalEventGroup optional } /** * A message withdrawing a request that the sender be authorized by the recipient to peform an action. */ concept RequestConsentRetracted extends NonCorrectableRequestMessage { o String additionalEventGroup optional } /** * */ concept RequestedAction { o String value optional o String requestedActionScheme optional } /** * A type that describes whether a trade is to be cleared. */ concept RequestedClearingAction { o String value optional o String requestedClearingActionScheme optional } /** * A type that describes the type of collateral allocation action that is requested. The purpose is to allow FCMs to specify how the allocations are to be processed. */ concept RequestedCollateralAllocationAction { o String value optional o String requestedCollateralAllocationActionScheme optional } /** * A type that describes what the requester would like to see done to implement the withdrawal, e.g. ExpungeRecords, RetainRecords. */ concept RequestedWithdrawalAction { o String value optional o String requestedWithdrawalActionScheme optional } /** * A type defining the content model for a message allowing one party to query the status of one event (trade or post-trade event) previously sent to another party. */ concept RequestEventStatus extends NonCorrectableRequestMessage { } /** * A message requesting that an order be executed. */ concept RequestExecution extends CorrectableRequestMessage { o String additionalEventGroup optional } /** * A message withdrawing a request that an order be executed. */ concept RequestExecutionRetracted extends NonCorrectableRequestMessage { o String additionalEventGroup optional } /** * A type defining the basic content of a message that requests the receiver to perform some business operation determined by the message type and its content. */ abstract concept RequestMessage extends Message { } /** * A type refining the generic message header content to make it specific to request messages. */ concept RequestMessageHeader extends MessageHeader { o DateTime creationTimestamp o DateTime expiryTimestamp optional } /** * A message to request that a message be retransmitted. The original message will typically be a component of a group of messages, such as a portfolio or a report in multiple parts. */ concept RequestRetransmission extends NonCorrectableRequestMessage { } /** * Defines the structure for a message requesting information updates to a trade. The trade reference information should contain at least one trade identifier that the recipient is aware of. */ concept RequestTradeReferenceInformationUpdate extends CorrectableRequestMessage { } /** * Defines the structure for a message retracting a request to updated information about trade. */ concept RequestTradeReferenceInformationUpdateRetracted extends NonCorrectableRequestMessage { } /** * A date with a required identifier which can be referenced elsewhere. */ concept RequiredIdentifierDate { o DateTime value optional o String id } /** * A type defining the parameters used to generate the reset dates schedule and associated fixing dates. The reset dates are determined relative to the calculation periods schedules dates. */ concept ResetDates { o ResetRelativeToEnum resetRelativeTo optional o String id } /** * Reference to a reset dates component. */ concept ResetDatesReference extends Reference { } /** * A type defining the reset frequency. In the case of a weekly reset, also specifies the day of the week that the reset occurs. If the reset frequency is greater than the calculation period frequency the this implies that more or more reset dates is established for each calculation period and some form of rate averaginhg is applicable. The specific averaging method of calculation is specified in FloatingRateCalculation. In case the reset frequency is of value T (term), the period is defined by the swap\swapStream\calculationPerioDates\effectiveDate and the swap\swapStream\calculationPerioDates\terminationDate. */ concept ResetFrequency extends Frequency { o WeeklyRollConventionEnum weeklyRollConvention optional } /** * Describes the resource that contains the media representation of a business event (i.e used for stating the Publicly Available Information). For example, can describe a file or a URL that represents the event. This type is an extended version of a type defined by RIXML (www.rixml.org). */ concept Resource { o Double sizeInBytes optional o String name optional o String comments optional o String string optional o String hexadecimalBinary optional o String base64Binary optional o String url optional } /** * The data type used for resource identifiers. */ concept ResourceId { o String value optional o String resourceIdScheme optional } /** * The type that indicates the length of the resource. */ concept ResourceLength { o LengthUnitEnum lengthUnit o Double lengthValue } /** * The data type used for describing the type or purpose of a resource, e.g. "Confirmation". */ concept ResourceType { o String value optional o String resourceTypeScheme optional } /** * A type refining the generic message content model to make it specific to response messages. */ abstract concept ResponseMessage extends Message { o Integer sequenceNumber optional } /** * A type refining the generic message header to make it specific to response messages. */ concept ResponseMessageHeader extends MessageHeader { o DateTime creationTimestamp o DateTime expiryTimestamp optional } /** * */ concept Restructuring { o Boolean applicable o Boolean multipleHolderObligation optional o Boolean multipleCreditEventNotices optional } /** * */ concept RestructuringEvent extends CreditEvent { } /** * */ concept RestructuringType { o String value optional o String restructuringScheme optional } /** * A type describing the dividend return conditions applicable to the swap. */ concept Return { o ReturnTypeEnum returnType } /** * A type describing the return leg of a return type swap. */ concept ReturnLeg extends ReturnSwapLegUnderlyer { o NotionalAdjustmentEnum notionalAdjustments } /** * A type describing the initial and final valuation of the underlyer. */ concept ReturnLegValuation { o Boolean notionalReset optional } /** * */ concept ReturnLegValuationPrice extends Price { } /** * A type describing return swaps including return swaps (long form), total return swaps, and variance swaps. */ concept ReturnSwap extends ReturnSwapBase { } /** * A type describing the additional payment(s) between the principal parties to the trade. This component extends some of the features of the additionalPayment component previously developed in FpML. Appropriate discussions will determine whether it would be appropriate to extend the shared component in order to meet the further requirements of equity swaps. */ concept ReturnSwapAdditionalPayment extends PaymentBase { } /** * Specifies, in relation to each Payment Date, the amount to which the Payment Date relates. For Equity Swaps this element is equivalent to the Equity Amount term as defined in the ISDA 2002 Equity Derivatives Definitions. */ concept ReturnSwapAmount extends LegAmount { o Boolean cashSettlement o Boolean optionsExchangeDividends optional o Boolean additionalDividends optional o Boolean allDividends optional } /** * A type describing the components that are common for return type swaps, including short and long form return swaps representations. */ abstract concept ReturnSwapBase extends Product { o String [] returnSwapLegGroup } /** * A type describing the date from which each of the party may be allowed to terminate the trade. */ concept ReturnSwapEarlyTermination { } /** * A base class for all return leg types with an underlyer. */ abstract concept ReturnSwapLegUnderlyer extends DirectionalLeg { o SettlementTypeEnum settlementType optional } /** * Specifies the notional of return type swap. When used in the equity leg, the definition will typically combine the actual amount (using the notional component defined by the FpML industry group) and the determination method. When used in the interest leg, the definition will typically point to the definition of the equity leg. */ concept ReturnSwapNotional { o String id optional } /** * A reference to the return swap notional amount. */ concept ReturnSwapNotionalAmountReference extends Reference { } /** * A type describing the return payment dates of the swap. */ concept ReturnSwapPaymentDates { o String id optional } /** * A facility which allows a flexible line of credit which can be drawn and repaid multiple times over the life of the facility. */ concept Revolver extends AbstractFacility { } /** * An event representing the prepayment structure associated within a facility. */ concept Rollover extends AbstractFacilityEvent { o String [] group optional } /** * A loan servicing notification designed to communicate the combination of business events associated with a rollover transaction. */ concept RolloverNotification extends AbstractContractNotification { } /** * A type defining a rounding direction and precision to be used in the rounding of a rate. */ concept Rounding { o RoundingDirectionEnum roundingDirection o Integer precision } /** * A type that provides three alternative ways of identifying a party involved in the routing of a payment. The identification may use payment system identifiers only; actual name, address and other reference information; or a combination of both. */ concept Routing { } /** * A type that models name, address and supplementary textual information for the purposes of identifying a party involved in the routing of a payment. */ concept RoutingExplicitDetails { o String routingName o String routingAccountNumber optional o String [] routingReferenceText optional } /** * */ concept RoutingId { o String value optional o String routingIdCodeScheme optional } /** * A type that provides for identifying a party involved in the routing of a payment by means of one or more standard identification codes. For example, both a SWIFT BIC code and a national bank identifier may be required. */ concept RoutingIds { } /** * A type that provides a combination of payment system identification codes with physical postal address details, for the purposes of identifying a party involved in the routing of a payment. */ concept RoutingIdsAndExplicitDetails { o String routingName o String routingAccountNumber optional o String [] routingReferenceText optional } /** * A type defining a schedule of rates or amounts in terms of an initial value and then a series of step date and value pairs. On each step date the rate or amount changes to the new step value. The series of step date and value pairs are optional. If not specified, this implies that the initial value remains unchanged over time. */ concept Schedule { o Double initialValue o String id optional } /** * Reference to a schedule of rates or amounts. */ concept ScheduleReference extends Reference { } /** * The sensitivity of a value to a defined change in input parameters. */ concept Sensitivity { o Double value optional o String definitionRef optional o String name optional } /** * A set of characteristics describing a sensitivity. */ concept SensitivityDefinition { o String name optional o String [] pricingCoordinateOrReferenceModel optional o String id optional } /** * A collection of sensitivities. References a definition that explains the meaning/type of the sensitivities. */ concept SensitivitySet { o String name optional o String id optional } /** * A sensitivity report definition, consisting of a collection of sensitivity definitions. */ concept SensitivitySetDefinition { o String name optional o Double scale o String id optional } /** * A reference to a sensitivity set definition. */ concept SensitivitySetDefinitionReference extends Reference { } /** * A Disruption Fallback with the sequence in which it should be applied relative to other Disruption Fallbacks. */ concept SequencedDisruptionFallback { o Integer sequence } /** * A type defining the content model for a human-readable notification to the users of a service. */ concept ServiceAdvisory { o String description o DateTime effectiveFrom optional o DateTime effectiveTo optional } /** * A type that can be used to describe the category of an advisory message, e.g.. Availability, Rules, Products, etc., etc.. */ concept ServiceAdvisoryCategory { o String value optional o String serviceAdvisoryCategoryScheme optional } /** * A type defining the content model for a message that allows a service to send a notification message to a user of the service. */ concept ServiceNotification extends NotificationMessage { o String serviceName optional } /** * A type that can be used to describe the processing phase of a service. For example, EndOfDay, Intraday. */ concept ServiceProcessingCycle { o String value optional o String serviceProcessingCycleScheme optional } /** * A type that can be used to describe a stage or step in processing provided by a service, for example processing completed. */ concept ServiceProcessingEvent { o String value optional o String serviceProcessingEventScheme optional } /** * A type defining the content model for report on the status of the processing by a service. In the future we may wish to provide some kind of scope or other qualification for the event, e.g. the currencies, products, or books to which it applies. */ concept ServiceProcessingStatus { } /** * A type that can be used to describe what stage of processing a service is in. For example, Netting or Valuation. */ concept ServiceProcessingStep { o String value optional o String serviceProcessingStep optional } /** * A type that can be used to describe the availability or other state of a service, e.g. Available, Unavaialble. */ concept ServiceStatus { o String value optional o String serviceStatusScheme optional } /** * */ concept SettledEntityMatrix { o DateTime publicationDate optional } /** * A set of currency-specific settlement instructions. */ concept SettlementDetails { } /** * A type that represents the choice of methods for settling a potential currency payment resulting from a trade: by means of a standard settlement instruction, by netting it out with other payments, or with an explicit settlement instruction. */ concept SettlementInformation { o StandardSettlementStyleEnum standardSettlementStyle optional } /** * A type that models a complete instruction for settling a currency payment, including the settlement method to be used, the correspondent bank, any intermediary banks and the ultimate beneficary. */ concept SettlementInstruction { } /** * A type defining a cash settlement details identifier and qualifying scheme */ concept SettlementInstructionId { o String value optional o String settlementInstructionIdScheme } /** * */ concept SettlementMethod { o String value optional o String settlementMethodScheme optional } /** * */ abstract concept SettlementPeriod { o DateTime expiryDate o DateTime settlementDate o Double notionalAmount } /** * */ concept SettlementPeriodFixingDates { o DateTime [] fixingDate optional o DateTime startDate optional o DateTime endDate optional o Integer numberOfFixings optional } /** * */ concept SettlementPeriodLeverage { o Double ratio optional o Double notionalAmount optional o Double counterCurrencyAmount optional } /** * Specifies a set of Settlement Periods associated with an Electricity Transaction for delivery on an Applicable Day or for a series of Applicable Days. */ concept SettlementPeriods { o SettlementPeriodDurationEnum duration o DayOfWeekExtEnum[] applicableDay optional o DateTime timeDuration optional o String id optional } /** * A type defining the Fixed Price applicable to a range or ranges of Settlement Periods. */ concept SettlementPeriodsFixedPrice extends FixedPrice { } /** * Allows a set of Settlement Periods to reference one already defined elsewhere in the trade. */ concept SettlementPeriodsReference extends Reference { } /** * The specification of the Settlement Periods in which the electricity will be delivered for a "shaped" trade i.e. where different Settlement Period ranges will apply to different periods of the trade. */ concept SettlementPeriodsSchedule { } /** * A reference to the range of Settlement Periods that applies to a given period of a transaction. */ concept SettlementPeriodsStep { } /** * Coding scheme that specifies the settlement price default election. */ concept SettlementPriceDefaultElection { o String value optional o String settlementPriceDefaultElectionScheme optional } /** * The source from which the settlement price is to be obtained, e.g. a Reuters page, Prezzo di Riferimento, etc. */ concept SettlementPriceSource { o String value optional o String settlementPriceSourceScheme optional } /** * A type defining the specification of settlement terms, occuring when the settlement currency is different to the notional currency of the trade. */ concept SettlementProvision { } /** * A type defining the settlement rate options through a scheme reflecting the terms of the Annex A to the 1998 FX and Currency Option Definitions. */ concept SettlementRateOption { o String value optional o String settlementRateOptionScheme optional } /** * A type describing the method for obtaining a settlement rate. */ concept SettlementRateSource { } /** * */ concept SettlementTerms { o String id optional } /** * Reference to a settlement terms derived construct (cashSettlementTerms or physicalSettlementTerms). */ concept SettlementTermsReference extends Reference { } /** * TBA */ concept SharedAmericanExercise extends Exercise { } /** * A short sale concluded by an investment firm on its own behalf or on behalf of a client, as described in Article 11. */ concept ShortSale { o String value optional o String shortSaleScheme optional } /** * */ concept SimpleCreditDefaultSwap extends UnderlyingAsset { } /** * */ concept SimpleFra extends UnderlyingAsset { } /** * */ concept SimpleIRSwap extends UnderlyingAsset { } /** * A complex type to specified payments in a simpler fashion than the Payment type. This construct should be used from the version 4.3 onwards. */ concept SimplePayment extends PaymentBase { } /** * A type describing the buyer and seller of an option. */ concept SinglePartyOption { } /** * */ concept SinglePayment extends PaymentBase { o DateTime adjustablePaymentDate o DateTime adjustedPaymentDate optional } /** * A type describing a single underlyer */ concept SingleUnderlyer { o String underlyingAssetGroup o Double openUnits optional o Boolean depositoryReceipt optional } /** * */ concept SingleValuationDate { o Integer businessDays optional } /** * */ concept SpecifiedCurrency { o Boolean applicable } /** * A type that supports the division of a gross settlement amount into a number of split settlements, each requiring its own settlement instruction. */ concept SplitSettlement { } /** * Adds an optional spread type element to the Schedule to identify a long or short spread value. */ concept SpreadSchedule extends Schedule { } /** * Provides a reference to a spread schedule. */ concept SpreadScheduleReference extends Reference { } /** * Defines a Spread Type Scheme to identify a long or short spread value. */ concept SpreadScheduleType { o String value optional o String spreadScheduleTypeScheme optional } /** * Simple product representation providing key information about a variety of different products. Standard products - for use in Transparency reporting to define a product that represents a standardized OTC derivative transaction whose economics do not need to be fully described using an FpML schema because they are implied by the product ID. In other views, standard products are present for convenience to support internal messaging and workflows that are cross-product. Standard products are not full trade representations as such they are not intended to be used for confirming trades. */ concept StandardProduct extends Product { } /** * A type specifying the date from which the early termination clause can be exercised. */ concept StartingDate { } /** * A type defining a step date and step value pair. This step definitions are used to define varying rate or amount schedules, e.g. a notional amortization or a step-up coupon schedule. */ concept Step extends StepBase { o Double stepValue } /** * A type defining a step date and step value pair. This step definitions are used to define varying rate or amount schedules, e.g. a notional amortization or a step-up coupon schedule. */ abstract concept StepBase { o DateTime stepDate o String id optional } /** * A type defining a group of products making up a single trade. */ concept Strategy extends Product { o String [] productGroup } /** * Associates trade identifiers with components of a strategy. */ concept StrategyComponentIdentification { } /** * A type for definining equity option simple strike or calendar spread strategy features. */ concept StrategyFeature { } /** * A type that describes the set of street and building number information that identifies a postal address within a city. */ concept StreetAddress { o String [] streetLine } /** * A type describing a single cap or floor rate. */ concept Strike { o Double strikeRate o String id optional } /** * A pointer style reference to a basket in the document */ concept StrikePriceBasketReference extends Reference { } /** * A pointer style reference to a product leg in the document */ concept StrikePriceUnderlyingReference extends Reference { } /** * A type describing a schedule of cap or floor rates. */ concept StrikeSchedule extends Schedule { } /** * A type for defining a strike spread feature. */ concept StrikeSpread { o Double upperStrikeNumberOfOptions } /** * A type defining how a stub calculation period amount is calculated and the start and end date of the stub. A single floating rate tenor different to that used for the regular part of the calculation periods schedule may be specified, or two floating rate tenors many be specified. If two floating rate tenors are specified then Linear Interpolation (in accordance with the 2000 ISDA Definitions, Section 8.3 Interpolation) is assumed to apply. Alternatively, an actual known stub rate or stub amount may be specified. */ concept Stub extends StubValue { } /** * A type describing the Stub Calculation Period. */ concept StubCalculationPeriod { } /** * A type defining how the initial or final stub calculation period amounts is calculated. For example, the rate to be applied to the initial or final stub calculation period may be the linear interpolation of two different tenors for the floating rate index specified in the calculation period amount component, e.g. A two month stub period may used the linear interpolation of a one month and three month floating rate. The different rate tenors would be specified in this component. Note that a maximum of two rate tenors can be specified. If a stub period uses a single index tenor and this is the same as that specified in the calculation period amount component then the initial stub or final stub component, as the case may be, must not be included. */ concept StubCalculationPeriodAmount { } /** * A type defining a floating rate. */ concept StubFloatingRate extends Rate { o RateTreatmentEnum rateTreatment optional } /** * A type defining how a stub calculation period amount is calculated. A single floating rate tenor different to that used for the regular part of the calculation periods schedule may be specified, or two floating rate tenors many be specified. If two floating rate tenors are specified then Linear Interpolation (in accordance with the 2000 ISDA Definitions, Section 8.3 Interpolation) is assumed to apply. Alternatively, an actual known stub rate or stub amount may be specified. */ concept StubValue { o Double stubRate optional } /** * Provides information about a regulator or other supervisory body that an organization is registered with. */ concept SupervisorRegistration { } /** * An identifier of an organization that supervises or regulates trading activity, e.g. CFTC, SEC, FSA, ODRF, etc. */ concept SupervisoryBody { o String value optional o String supervisoryBodyScheme optional } /** * A type defining swap streams and additional payments between the principal parties involved in the swap. */ concept Swap extends Product { } /** * Additional terms to a swap contract. */ concept SwapAdditionalTerms { } /** * A complex type to specify a valuation swap curve, which is used as part of the strike construct for the bond and convertible bond options. */ concept SwapCurveValuation { o Double spread o QuotationSideEnum side optional } /** * A type to define an option on a swap. */ concept Swaption extends Product { o String exerciseGroup o Boolean swaptionStraddle } /** * A type describing the adjusted dates associated with swaption exercise and settlement. */ concept SwaptionAdjustedDates { } /** * */ concept SwaptionPhysicalSettlement { o Boolean clearedPhysicalSettlement } /** * A structure that defines a task identifier based on a qualifying scheme. */ concept TaskId { o String value optional o String taskIdScheme } /** * A type defining a task identifier issued by the indicated party. */ concept TaskIdentifier { o String id optional } /** * A structure that defines a tax form registration. */ concept TaxForm { o DateTime taxFormExpiryDate optional } /** * A scheme that describes tax form types. */ concept TaxFormType { o String value optional o String taxFormTypeScheme optional } /** * A structure that represents the withholding tax being applied to a particular cash flow. */ concept TaxWithholding { o Double taxRate optional } /** * A type that represents a telephonic contact. */ concept TelephoneNumber { o TelephoneTypeEnum type optional o String number } /** * A curve consisting only of values over a term. This is a restricted form of One Dimensional Structure. */ concept TermCurve { o Boolean extrapolationPermitted optional } /** * A class defining the content model for a term deposit product. */ concept TermDeposit extends Product { o DateTime startDate o DateTime maturityDate o FxTenorPeriodEnum tenorName optional o Double fixedRate } /** * */ concept TermDepositFeatures { } /** * A type that describes why a trade terminated. */ concept TerminatingEvent { o String value optional o String terminatingEventScheme optional } /** * A facility which is fully funded (utilized) at deal closing. */ concept TermLoan extends AbstractFacility { } /** * A value point that can have a time dimension. Allows bid, mid, ask, and spread values to be represented. */ concept TermPoint { o Double bid optional o Double mid optional o Double ask optional o Double spreadValue optional o String id optional } /** * The time dimensions of a term-structure. The user must supply either a tenor or a date or both. */ concept TimeDimension { o DateTime date optional } /** * The type or meaning of a timestamp. */ concept TimestampTypeScheme { o String value optional o String timestampScheme optional } /** * A geophraphic location for the purposes of defining a prevailing time according to the tz database. */ concept TimezoneLocation { o String value optional o String timezoneLocationScheme optional } /** * */ concept TouchRateObservation extends TriggerRateObservation { o ExerciseSideEnum exerciseSide optional o SettlementTypeEnum settlementType optional o Boolean isExercisable optional } /** * A type defining an FpML trade. */ concept Trade { o String productGroup o String id optional } /** * A structure describing a negotiated amendment. */ concept TradeAmendmentContent extends AbstractEvent { o DateTime agreementDate o DateTime effectiveDate o NotionalChangeEnum notionalChange optional } /** * A scheme used to categorize positions. */ concept TradeCategory { o String value optional o String categoryScheme optional } /** * Defines the structure for a message indicating that a trade is being changed due to a non-negotiated event. */ concept TradeChangeAdvice extends CorrectableRequestMessage { } /** * Defines the structure for a message retracting a prior change advice. */ concept TradeChangeAdviceRetracted extends NonCorrectableRequestMessage { } /** * A structure describing a trade change. */ concept TradeChangeBase extends AbstractEvent { o DateTime agreementDate o DateTime effectiveDate } /** * A structure describing a non-negotiated trade resulting from a market event. */ concept TradeChangeContent { o DateTime effectiveDate o String changeEventGroup } /** * A type used to record the details of a difference between two business objects/ */ concept TradeDifference { o DifferenceTypeEnum differenceType o DifferenceSeverityEnum differenceSeverity o String element o String basePath optional o String baseValue optional o String otherPath optional o String otherValue optional o String [] missingElement optional o String [] extraElement optional o String message } /** * A type defining trade related information which is not product specific. */ concept TradeHeader { } /** * A trade reference identifier allocated by a party. FpML does not define the domain values associated with this element. Note that the domain values for this element are not strictly an enumerated list. */ concept TradeId { o String value optional o String id optional o String tradeIdScheme } /** * A type defining a trade identifier issued by the indicated party. */ concept TradeIdentifier { o String [] group optional o String id optional } /** * A type defining a trade identifier with a reference to the party that this trade is associated with. */ concept TradeIdentifierExtended extends TradeIdentifier { } /** * A structure describing a change to the size of a single leg or stream of a trade. */ concept TradeLegPriceChange { o Double priceChangeAmount o Double newPrice } /** * A structure describing a change to the size of a single leg or stream of a trade. */ concept TradeLegSizeChange { o Double changeInNumberOfOptions optional o Double outstandingNumberOfOptions optional o Double changeInNumberOfUnits optional o Double outstandingNumberOfUnits optional } /** * A structure describing a trade maturing. */ concept TradeMaturity { o DateTime date } /** * A structure describing a change to the size of a trade. */ concept TradeNotionalChange extends TradeChangeBase { o Double changeInNumberOfOptions optional o Double outstandingNumberOfOptions optional o Double changeInNumberOfUnits optional o Double outstandingNumberOfUnits optional } /** * A structure describing a novation. */ concept TradeNovationContent extends AbstractEvent { o DateTime novationDate o DateTime novationTradeDate optional o Double novatedNumberOfOptions optional o Double remainingNumberOfOptions optional o Double novatedNumberOfUnits optional o Double remainingNumberOfUnits optional o Boolean fullFirstCalculationPeriod optional } /** * A bundle of trades collected together into a single unit for reporting. */ concept TradePackage { o String [] tradeReferenceInformationModel optional } /** * Allows timing information about when a trade was processed and reported to be recorded. */ concept TradeProcessingTimestamps { o DateTime orderEntered optional o DateTime orderSubmitted optional o DateTime publiclyReported optional o DateTime publicReportAccepted optional o DateTime publicReportUpdated optional o DateTime nonpubliclyReported optional o DateTime nonpublicReportAccepted optional o DateTime nonpublicReportUpdated optional o DateTime submittedForConfirmation optional o DateTime updatedForConfirmation optional o DateTime confirmed optional o DateTime submittedForClearing optional o DateTime updatedForClearing optional o DateTime cleared optional o DateTime allocationsSubmitted optional o DateTime allocationsUpdated optional o DateTime allocationsCompleted optional } /** * */ concept Trader { o String value optional o String traderScheme optional } /** * Defines a type that allows trade identifiers and/or trade information to be represented for a trade. */ concept TradeReferenceInformation { } /** * Summary information about the trade. */ concept TradeSummary { o Boolean isPackageTrade optional o Boolean isPrimeBrokerTrade optional } /** * A generic trade timestamp */ concept TradeTimestamp { o DateTime value } /** * The underlying asset/index/reference price etc. whose rate/price may be observed to compute the value of the cashflow. It can be an index, fixed rate, listed security, quoted currency pair, or a reference entity (for credit derivatives). For use with Generic products in Transparency reporting. Generic products define a product that represents an OTC derivative transaction whose economics are not fully described using an FpML schema. In other views, generic products are present for convenience to support internal messaging and workflows that are cross-product. Generic products are not full trade representations as such they are not intended to be used for confirming trades. */ concept TradeUnderlyer2 { o String underlyingAssetGroup optional o AveragingMethodEnum averagingMethod optional o String id optional } /** * A structure that contains a business event. */ concept TradeWrapper { } /** * A structure that identifies settlement instructions to override default settlement instructions, for a particular trade/allocation. */ concept TradingInstructionOverride { } /** * Indication as to whether the transaction was executed under a pre-trade waiver in accordance with Articles 4 and 9 of Regulation (EU) 600/2014. */ concept TradingWaiver { o String value optional o String tradingWaiverScheme optional } /** * This type represents a CDS Tranche. */ concept Tranche { o Double attachmentPoint o Double exhaustionPoint o Boolean incurredRecoveryApplicable optional } /** * A characteristic of a transaction used in declaring an end-user exception. */ concept TransactionCharacteristic { o String value optional o String transactionCharacteristicScheme optional } /** * A structure that represents the rules for payment of transfer fees to the agent. */ concept TransferFeeDefinition { } /** * A list of rules associated with the way in which transfer fees should be paid. */ concept TransferFeeRule { o String value optional o String transferFeeRuleScheme optional } /** * Trigger point at which feature is effective. */ concept Trigger { o Double level optional o Double levelPercentage optional o TriggerTypeEnum triggerType optional o TriggerTimeTypeEnum triggerTimeType optional } /** * Observation point for trigger. */ concept TriggerEvent { } /** * */ concept TriggerRateObservation { o DateTime observationDate o Double triggerRate optional o Double observedRate optional o TriggerConditionEnum triggerCondition } /** * The tri-party terms. */ concept TriParty { } /** * A type describing the whole set of possible underlyers: single underlyers or multiple underlyers, each of these having either security or index components. */ concept Underlyer { } /** * A type describing interest payments associated with and underlyer, such as financing */ concept UnderlyerInterestLeg extends DirectionalLeg { o Double fixedRate optional } /** * Defines stock loan information where this is required per underlyer. You must not duplicate infromation within dividend conditions at transaction level */ concept UnderlyerLoanRate { o Boolean lossOfStockBorrow optional o Double maximumStockLoanRate optional o Boolean increasedCostOfStockBorrow optional o Double initialStockLoanRate optional } /** * Reference to an underlyer */ concept UnderlyerReference extends Reference { o String href optional } /** * Abstract base class for all underlying assets. */ abstract concept UnderlyingAsset extends IdentifiedAsset { } /** * */ concept UnderlyingAssetTranche { o String value optional o String loanTrancheScheme optional } /** * A type used to record information about a unit, subdivision, desk, or other similar business entity. */ concept Unit { o String value optional o String unitScheme optional } /** * A quantity and associated unit. */ concept UnitQuantity { o Double quantity o String id optional } /** * A type defining a quantity and unit with a reference. */ concept UnitQuantityRef extends UnitQuantity { } /** * A type holding a structure that is unvalidated */ concept UnprocessedElementWrapper { o String any } /** * A structure that represents a fee, also known as Participation Fee, Arrangement Fee etc. This fee represents compensation to the members of the lending syndicate (and sometimes to institutional investors as well) in return for their commitment of capital. */ concept UpfrontFeePayment extends NonRecurringFeePayment { } /** * A structure which defines the total utilization and available credit levels for a given facility. */ concept UtilizationAmounts { o Double fundedAmount o Double unfundedAmount } /** * A schedule that incorporates all sub-periods of an interest accrual calculation. */ concept UtilizationPeriod { o DateTime startDate o DateTime endDate o Double numberOfDays } /** * A reference identifying a rule within a validation scheme. */ concept Validation { o String value optional o String validationScheme optional } /** * A valuation of an valuable object - an asset or a pricing input. This is an abstract type, used as a base for values of pricing structures such as yield curves as well as asset values. */ concept Valuation { o String id optional } /** * */ concept ValuationDate { } /** * Reference to a Valuation dates node. */ concept ValuationDatesReference extends Reference { } /** * A type defining a content model that includes valuation (pricing and risk) data without expressing any processing intention. */ concept ValuationDocument extends DataDocument { } /** * Specifies how long to wait to get a quote from a settlement rate option upon a price source disruption. */ concept ValuationPostponement { o Integer maximumDaysOfPostponement } /** * Reference to a Valuation or any derived structure such as PricingStructureValuation. */ concept ValuationReference extends Reference { } /** * A set of rules for generating a valuation. */ concept ValuationScenario { o String name optional o String id optional } /** * Reference to a valuation scenario. */ concept ValuationScenarioReference extends Reference { } /** * A set of valuation inputs and results. This structure can be used for requesting valuations, or for reporting them. In general, the request fills in fewer elements. */ concept ValuationSet { o String name optional o String id optional } /** * The amount of detail provided in the valuation set, e.g. is market environment data provided, are risk definitions provided, etc. */ concept ValuationSetDetail { o String value optional o String valuationSetDetailScheme optional } /** * A type describing the variance amount of a variance swap. */ concept Variance extends CalculationFromObservation { o Double volatilityStrikePrice optional o Double varianceStrikePrice optional o Boolean varianceCap optional o Double unadjustedVarianceCap optional o Double vegaNotionalAmount optional } /** * Calculation of a Variance Amount. */ concept VarianceAmount extends CalculatedAmount { } /** * A type describing return which is driven by a Variance Calculation. */ concept VarianceLeg extends DirectionalLegUnderlyerValuation { } /** * */ concept VarianceOptionTransactionSupplement extends OptionBase { o Boolean exchangeLookAlike optional o MethodOfAdjustmentEnum methodOfAdjustment optional o Double optionEntitlement optional o Double multiplier optional } /** * A Variance Swap. */ concept VarianceSwap extends NettedSwapBase { } /** * A Variance Swap Transaction Supplement. */ concept VarianceSwapTransactionSupplement extends Product { o Boolean multipleExchangeIndexAnnexFallback optional o Boolean componentSecurityIndexAnnexFallback optional } /** * */ concept Velocity { o Integer periodMultiplier o PeriodTimeEnum period } /** * A type used to represent the type of mechanism that can be used to verify a trade. */ concept VerificationMethod { o String value optional o String verificationMethodScheme optional } /** * The verification status of the position as reported by the sender (Verified, Disputed). */ concept VerificationStatus { o String value optional o String verificationStatusScheme optional } /** * */ concept VerificationStatusNotification extends NonCorrectableRequestMessage { } /** * Contract Id with Version Support */ concept VersionedContractId { o Integer version } /** * Trade Id with Version Support */ concept VersionedTradeId { o Integer version } /** * Under 2002 Definitions, When entering into the Transaction, the parties should specify whether, for purposes of determining the initial Share price, they are agreeing to (a) a specific initial price (in which case, the initialLevel element should be populated with the price) or (b) use the price of a Share at the close of the regular trading session on the Trade Date (in which case the closingLevel element should be populated as true) or (c) in the case of a forward starting transaction only, use the Official Settlement Price of the Expiring Contract on the Observation Start Date (in which case expiring Level element should be populated as true). Under 2011 definitions, When entering into the Transaction, the parties should specify whether, for purposes of determining the OPSD Pricing Election, they are agreeing to (a) an agreed price (in which case, the initialLevel element should be populated with the price) or (b) use the Index Close Pricing (Official), (in which case closingLevel element should be populated as true) or (c) use OSP Pricing (in which case the initialLevelSource element should be populated with “OSPPrice”). */ concept Volatility extends CalculationFromObservation { o Double volatilityStrikePrice o Double vegaNotionalAmount } /** * */ concept VolatilityAmount extends CalculatedAmount { } /** * */ concept VolatilityCap { o Boolean applicable o Double totalVolatilityCap optional o Double volatilityCapFactor optional o Double totalVolatilityCap1 optional } /** * */ concept VolatilityLeg extends DirectionalLegUnderlyerValuation { } /** * A matrix of volatilities with dimension 0-3. */ concept VolatilityMatrix extends PricingStructureValuation { } /** * A representation of volatilities of an asset. This is a generic structure whose values can be supplied in a specific volatility matrix. */ concept VolatilityRepresentation extends PricingStructure { } /** * A Volatility Swap. */ concept VolatilitySwap extends NettedSwapBase { } /** * */ concept VolatilitySwapTransactionSupplement extends Product { o Boolean multipleExchangeIndexAnnexFallback optional o Boolean componentSecurityIndexAnnexFallback optional } /** * A fee structure that represents a payment made by the borrower to the syndicate lenders for processing and accepting a waiver request. The request is sent by the borrower to obtain approval from the syndicate lenders formally requesting waivers around particular terms of the credit agreement. */ concept WaiverFeePayment extends NonRecurringFeePayment { } /** * The schedule of Calculation Period First Days and Lasts Days. If there is only one First Day - Last Day pair then the First is equal to the Effective Date and the Last Day is equal to the Termination Date. */ concept WeatherCalculationPeriod { } /** * The schedule of Calculation Period First Days and Lasts Days. If there is only one First Day - Last Day pair then the First is equal to the Effective Date and the Last Day is equal to the Termination Date. */ concept WeatherCalculationPeriods { o String id optional } /** * A type defining the Weather Index Level or Weather Index Strike Level. */ concept WeatherIndex { o Double quantity o String id optional } /** * */ concept WeatherIndexData { o Boolean finalEditedData o Boolean alternativeDataProvider o Boolean synopticDataFallback o Boolean adjustmentToFallbackWeatherStation optional } /** * A weather leg of a Commodity Swap defines Weather Index Swap transactions. Weather Index Swap transactions are OTC derivative transactions which settle financially based on an index calculated from observations of temperature, precipitation and other weather-related measurements at weather stations throughout the world. Sub-Annex C of the 2005 ISDA Commodity Definitions provides definitions and terms for a number of types of weather indices. These indices include: HDD (heating degree days), CDD (cooling degree days), CPD (critical precipitation days). Weather Index Swap transactions result in a cash flow to one of the two counterparties each Calculation Period depending on the relationship between the Settlement Level and the Weather Index Level. A Weather Index swap transaction always consists of a commodity swap element as a parent to two weatherLeg elements. */ concept WeatherLeg extends FinancialSwapLeg { } /** * A type to capture details of the calculation of the Payment Amount on a Weather Index Transaction. */ concept WeatherLegCalculation { o WeatherSettlementLevelEnum settlementLevel o Boolean referenceLevelEqualsZero o Boolean dataCorrection } /** * Weather Station. */ concept WeatherStation { } /** * A code identifying a Weather Station Airport (based on the the IATA standard). */ concept WeatherStationAirport { o String value optional o String id optional o String weatherStationAirportScheme optional } /** * A code identifying a Weather Station WBAN. */ concept WeatherStationWBAN { o String value optional o String id optional o String weatherStationWBANScheme optional } /** * A code identifying a Weather Index WMO. */ concept WeatherStationWMO { o String value optional o String id optional o String weatherStationWMOScheme optional } /** * A single weighted averaging observation. */ concept WeightedAveragingObservation { o DateTime dateTime optional o Integer observationNumber optional o Double weight } /** * A partial derivative multiplied by a weighting factor. */ concept WeightedPartialDerivative { o Double weight } /** * A structure describing the removal of a trade from a service, such as a reporting service. */ concept Withdrawal { o DateTime effectiveDate } /** * A type defining party-specific additional information that may be recorded against a trade, for withdrawal purposes. */ concept WithdrawalPartyTradeInformation { } /** * A type that describes why a trade was withdrawn. */ concept WithdrawalReason { o String value optional o String withdrawalReasonScheme optional } /** * A list of reasons for withholding tax being applied to a cash flow. */ concept WithholdingTaxReason { o String value optional o String withholdingTaxReasonScheme optional } /** * A generic yield curve object, which can be valued in a variety of ways. */ concept YieldCurve extends PricingStructure { o String algorithm optional } /** * A type defining the parameters required for each of the ISDA defined yield curve methods for cash settlement. */ concept YieldCurveMethod { o QuotationRateTypeEnum quotationRateType } /** * The values of a yield curve, including possibly inputs and outputs (dfs, forwards, zero rates). */ concept YieldCurveValuation extends PricingStructureValuation { } /** * A curve used to model a set of zero-coupon interest rates. */ concept ZeroRateCurve { }