Class: Trade
Defines the output of a financial transaction between parties - a Business Event. A Trade impacts the financial position (i.e. the balance sheet) of involved parties.
URI: common_domain_model:Trade
classDiagram
class Trade
click Trade href "../Trade/"
TradableProduct <|-- Trade
click TradableProduct href "../TradableProduct/"
Trade : adjustment
Trade --> "0..1" NotionalAdjustmentEnum : adjustment
click NotionalAdjustmentEnum href "../NotionalAdjustmentEnum/"
Trade : ancillaryParty
Trade --> "*" AncillaryParty : ancillaryParty
click AncillaryParty href "../AncillaryParty/"
Trade : collateral
Trade --> "0..1" Collateral : collateral
click Collateral href "../Collateral/"
Trade : contractDetails
Trade --> "0..1" ContractDetails : contractDetails
click ContractDetails href "../ContractDetails/"
Trade : counterparty
Trade --> "1..*" Counterparty : counterparty
click Counterparty href "../Counterparty/"
Trade : executionDetails
Trade --> "0..1" ExecutionDetails : executionDetails
click ExecutionDetails href "../ExecutionDetails/"
Trade : party
Trade --> "*" Party : party
click Party href "../Party/"
Trade : partyRole
Trade --> "*" PartyRole : partyRole
click PartyRole href "../PartyRole/"
Trade : product
Trade --> "1" NonTransferableProduct : product
click NonTransferableProduct href "../NonTransferableProduct/"
Trade : tradeDate
Trade : tradeIdentifier
Trade --> "1..*" TradeIdentifier : tradeIdentifier
click TradeIdentifier href "../TradeIdentifier/"
Trade : tradeLot
Trade --> "1..*" TradeLot : tradeLot
click TradeLot href "../TradeLot/"
Trade : tradeTime
Trade --> "0..1" TimeZone : tradeTime
click TimeZone href "../TimeZone/"
Inheritance
Section titled “Inheritance”- TradableProduct
- Trade
| Name | Cardinality and Range | Description | Inheritance |
|---|---|---|---|
| tradeIdentifier | 1..* TradeIdentifier |
Represents the identifier(s) that uniquely identify a trade for an identity i… | direct |
| tradeDate | 1 date |
Specifies the date which the trade was agreed | direct |
| tradeTime | 0..1 TimeZone |
Denotes the trade time and timezone as agreed by the parties to the trade | direct |
| party | * Party |
Represents the parties to the trade | direct |
| partyRole | * PartyRole |
Represents the role each specified party takes in the trade | direct |
| executionDetails | 0..1 ExecutionDetails |
Represents information specific to trades that arose from executions | direct |
| contractDetails | 0..1 ContractDetails |
Represents information specific to trades involving contractual products | direct |
| collateral | 0..1 Collateral |
Represents the collateral obligations of a party | direct |
| product | 1 NonTransferableProduct |
The underlying product to be included in a contract or execution | TradableProduct |
| tradeLot | 1..* TradeLot |
Specifies the price, quantity and effective date of each trade lot, when the … | TradableProduct |
| counterparty | 1..* Counterparty |
Specifies the parties which are the two counterparties to the transaction | TradableProduct |
| ancillaryParty | * AncillaryParty |
Specifies the parties with ancillary roles in the transaction | TradableProduct |
| adjustment | 0..1 NotionalAdjustmentEnum |
Specifies the conditions that govern the adjustment to the quantity of a prod… | TradableProduct |
Usages
Section titled “Usages”| used by | used in | type | used |
|---|---|---|---|
| Lineage | tradeReference | range | Trade |
| TradePricingReport | trade | range | Trade |
| TradeState | trade | range | Trade |
| AggregationParameters | tradeReference | range | Trade |
Comments
Section titled “Comments”- Rosetta condition SettlementPayout is not stated in LinkML: if SettlementPayoutOnlyExists (product -> economicTerms -> payout) then partyRole -> role contains PartyRoleEnum -> Buyer and partyRole -> role contains PartyRoleEnum -> Seller and tradeLot -> priceQuantity -> price exists
- Rosetta condition PackageTrade is not stated in LinkML: if executionDetails -> packageReference exists then executionDetails -> packageReference -> componentId -> assignedIdentifier contains tradeIdentifier -> assignedIdentifier
- Rosetta condition DeliverableObligationsPhysicalSettlementMatrix is not stated in LinkML: if (contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix -> matrixType all <> MatrixTypeEnum -> CreditDerivativesPhysicalSettlementMatrix or contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix -> matrixType is absent) and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations exists then (product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> notSubordinated exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> specifiedCurrency exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> notSovereignLender exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> notDomesticCurrency exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> notDomesticLaw exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> notContingent exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> notDomesticIssuance exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> assignableLoan exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> consentRequiredLoan exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> transferable exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> maximumMaturity exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> notBearer exists) and (product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> fullFaithAndCreditObLiability exists or product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> generalFundObligationLiability exists or product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> revenueObligationLiability exists)
- Rosetta condition ObligationsPhysicalSettlementMatrix is not stated in LinkML: if (contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix -> matrixType all <> MatrixTypeEnum -> CreditDerivativesPhysicalSettlementMatrix or contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix -> matrixType is absent) and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> obligations exists then (product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> obligations -> notSubordinated exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> obligations -> notSovereignLender exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> obligations -> notDomesticLaw exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> obligations -> notDomesticIssuance exists) and (product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> obligations -> fullFaithAndCreditObLiability exists or product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> obligations -> generalFundObligationLiability exists or product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> obligations -> revenueObligationLiability exists)
- Rosetta condition CreditEventsPhysicalSettlementMatrix is not stated in LinkML: if (contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix -> matrixType all <> MatrixTypeEnum -> CreditDerivativesPhysicalSettlementMatrix or contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix -> matrixType is absent) and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents exists then (product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> bankruptcy exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> obligationDefault exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> obligationAcceleration exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> repudiationMoratorium exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> governmentalIntervention exists)
- Rosetta condition RestructuringPhysicalSettlementMatrix is not stated in LinkML: if (contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix -> matrixType all <> MatrixTypeEnum -> CreditDerivativesPhysicalSettlementMatrix or contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix -> matrixType is absent) and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> restructuring exists then product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> restructuring -> multipleHolderObligation exists
- Rosetta condition AdditionalFixedPaymentsMortgages is not stated in LinkML: if ((product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation -> referenceObligation -> security -> securityType any = Debt and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation -> referenceObligation -> security -> debtType -> debtEconomics -> secured -> securedType any = AssetBacked) or contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualTermsSupplement -> contractualTermsSupplementType contains ContractualSupplementTypeEnum -> CDSonMBS) and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> floatingAmountEvents exists then (product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> floatingAmountEvents -> additionalFixedPayments -> interestShortfallReimbursement exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> floatingAmountEvents -> additionalFixedPayments -> principalShortfallReimbursement exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> floatingAmountEvents -> additionalFixedPayments -> writedownReimbursement exists)
- Rosetta condition FloatingAmountEventsMortgages is not stated in LinkML: if ((product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation -> referenceObligation -> security -> securityType any = Debt and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation -> referenceObligation -> security -> debtType -> debtEconomics -> secured -> securedType any = AssetBacked) or contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualTermsSupplement -> contractualTermsSupplementType contains ContractualSupplementTypeEnum -> CDSonMBS) and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> floatingAmountEvents exists then (product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> floatingAmountEvents -> failureToPayPrincipal exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> floatingAmountEvents -> writedown exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> floatingAmountEvents -> impliedWritedown exists)
- Rosetta condition CreditEventsMortgages is not stated in LinkML: if ((product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation -> referenceObligation -> security -> securityType any = Debt and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation -> referenceObligation -> security -> debtType -> debtEconomics -> secured -> securedType any = AssetBacked) or contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualTermsSupplement -> contractualTermsSupplementType contains ContractualSupplementTypeEnum -> CDSonMBS) and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents exists then (product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> failureToPayPrincipal exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> failureToPayInterest exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> distressedRatingsDowngrade exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> maturityExtension exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> writedown exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> impliedWritedown exists)
- Rosetta condition HedgingParty is not stated in LinkML: if partyRole -> role contains PartyRoleEnum -> HedgingParty then FilterPartyRole (partyRole, PartyRoleEnum -> HedgingParty) count <= 2
- Rosetta condition DeterminingParty is not stated in LinkML: if partyRole -> role contains PartyRoleEnum -> DeterminingParty then FilterPartyRole (partyRole, PartyRoleEnum -> DeterminingParty) count <= 2
- Rosetta condition BarrierDerterminationAgent is not stated in LinkML: if partyRole -> role contains PartyRoleEnum -> BarrierDeterminationAgent then FilterPartyRole (partyRole, PartyRoleEnum -> BarrierDeterminationAgent) count <= 1
- Rosetta condition FpML_cd_1 is not stated in LinkML: if product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation exists then tradeDate < product -> economicTerms -> effectiveDate -> adjustableDate -> unadjustedDate or tradeDate < product -> economicTerms -> effectiveDate -> adjustableDate -> adjustedDate
- Rosetta condition FpML_cd_7 is not stated in LinkML: if contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> masterConfirmationType is absent and contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix is absent and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation exists then product -> economicTerms -> payout as InterestRatePayout -> calculationPeriodDates -> effectiveDate -> adjustableDate -> dateAdjustments exists or tradeDate < product -> economicTerms -> effectiveDate -> adjustableDate -> adjustedDate
- Rosetta condition FpML_cd_8 is not stated in LinkML: if contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> masterConfirmationType is absent and contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix is absent and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation exists then product -> economicTerms -> terminationDate -> adjustableDate -> dateAdjustments exists
- Rosetta condition FpML_cd_11 is not stated in LinkML: if contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> masterConfirmationType is absent and contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix is absent and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation exists and contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualDefinitionsType any = ContractualDefinitionsEnum -> ISDA2003CreditDerivatives then product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation -> allGuarantees exists
- Rosetta condition FpML_cd_19 is not stated in LinkML: if contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualDefinitionsType any = ContractualDefinitionsEnum -> ISDA1999CreditDerivatives then product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> creditEventNotice -> businessCenter is absent and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> restructuring -> multipleHolderObligation is absent and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> restructuring -> multipleCreditEventNotices is absent and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation -> allGuarantees is absent and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> indexReferenceInformation is absent and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> substitution is absent and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> modifiedEquityDelivery is absent
- Rosetta condition FpML_cd_20 is not stated in LinkML: if contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualDefinitionsType any = ContractualDefinitionsEnum -> ISDA2003CreditDerivatives then product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> obligations -> notContingent is absent
- Rosetta condition FpML_cd_23 is not stated in LinkML: if contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> masterConfirmationType is absent and contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix is absent and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation exists then product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> cashSettlementTerms exists or product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms exists
- Rosetta condition FpML_cd_24 is not stated in LinkML: if contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> masterConfirmationType is absent and contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix is absent and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation exists then product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> creditEventNotice exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> obligations exists and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation -> referencePrice exists
- Rosetta condition FpML_cd_25 is not stated in LinkML: if contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> masterConfirmationType is absent and contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix is absent and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms exists then product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> settlementCurrency exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> physicalSettlementPeriod exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> escrow exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> accruedInterest exists
- Rosetta condition FpML_cd_32 is not stated in LinkML: if contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> masterConfirmationType is absent and contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix is absent and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation exists and product -> economicTerms -> payout as InterestRatePayout -> priceQuantity exists and tradeLot -> priceQuantity -> quantity -> value exists then product -> economicTerms -> payout as InterestRatePayout -> dayCountFraction exists
- Rosetta condition ExtraordinaryEvents is not stated in LinkML: if contractDetails -> documentation -> agreementTerms -> agreement -> transactionAdditionalTerms -> equityAdditionalTerms -> extraordinaryEvents exists then (product -> economicTerms -> payout as PerformancePayout -> returnTerms -> priceReturnTerms exists or product -> economicTerms -> payout as OptionPayout exists) and Qualify_AssetClass_Equity (product -> economicTerms)
- Rosetta condition DisruptionEventsDeterminingParty is not stated in LinkML: if contractDetails -> documentation -> agreementTerms -> agreement -> transactionAdditionalTerms -> equityAdditionalTerms -> extraordinaryEvents -> additionalDisruptionEvents -> determiningParty exists then ancillaryParty -> role contains AncillaryRoleEnum -> DisruptionEventsDeterminingParty and if ancillaryParty -> role contains AncillaryRoleEnum -> DisruptionEventsDeterminingParty then contractDetails -> documentation -> agreementTerms -> agreement -> transactionAdditionalTerms -> equityAdditionalTerms -> extraordinaryEvents -> additionalDisruptionEvents -> determiningParty exists
Identifier and Mapping Information
Section titled “Identifier and Mapping Information”Annotations
Section titled “Annotations”| property | value |
|---|---|
| rosetta_metadata | key |
| doc_reference | ICMA GMRA namingConvention Transaction |
Schema Source
Section titled “Schema Source”- from schema: https://w3id.org/lmodel/common-domain-model
Mappings
Section titled “Mappings”| Mapping Type | Mapped Value |
|---|---|
| self | common_domain_model:Trade |
| native | common_domain_model:Trade |
LinkML Source
Section titled “LinkML Source”Direct
Section titled “Direct”name: Tradeannotations: rosetta_metadata: tag: rosetta_metadata value: key doc_reference: tag: doc_reference value: ICMA GMRA namingConvention Transactiondescription: Defines the output of a financial transaction between parties - a Business Event. A Trade impacts the financial position (i.e. the balance sheet) of involved parties.comments:- 'Rosetta condition SettlementPayout is not stated in LinkML: if SettlementPayoutOnlyExists (product -> economicTerms -> payout) then partyRole -> role contains PartyRoleEnum -> Buyer and partyRole -> role contains PartyRoleEnum -> Seller and tradeLot -> priceQuantity -> price exists'- 'Rosetta condition PackageTrade is not stated in LinkML: if executionDetails -> packageReference exists then executionDetails -> packageReference -> componentId -> assignedIdentifier contains tradeIdentifier -> assignedIdentifier'- 'Rosetta condition DeliverableObligationsPhysicalSettlementMatrix is not stated in LinkML: if (contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix -> matrixType all <> MatrixTypeEnum -> CreditDerivativesPhysicalSettlementMatrix or contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix -> matrixType is absent) and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations exists then (product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> notSubordinated exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> specifiedCurrency exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> notSovereignLender exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> notDomesticCurrency exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> notDomesticLaw exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> notContingent exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> notDomesticIssuance exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> assignableLoan exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> consentRequiredLoan exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> transferable exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> maximumMaturity exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> notBearer exists) and (product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> fullFaithAndCreditObLiability exists or product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> generalFundObligationLiability exists or product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> revenueObligationLiability exists)'- 'Rosetta condition ObligationsPhysicalSettlementMatrix is not stated in LinkML: if (contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix -> matrixType all <> MatrixTypeEnum -> CreditDerivativesPhysicalSettlementMatrix or contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix -> matrixType is absent) and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> obligations exists then (product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> obligations -> notSubordinated exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> obligations -> notSovereignLender exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> obligations -> notDomesticLaw exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> obligations -> notDomesticIssuance exists) and (product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> obligations -> fullFaithAndCreditObLiability exists or product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> obligations -> generalFundObligationLiability exists or product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> obligations -> revenueObligationLiability exists)'- 'Rosetta condition CreditEventsPhysicalSettlementMatrix is not stated in LinkML: if (contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix -> matrixType all <> MatrixTypeEnum -> CreditDerivativesPhysicalSettlementMatrix or contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix -> matrixType is absent) and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents exists then (product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> bankruptcy exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> obligationDefault exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> obligationAcceleration exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> repudiationMoratorium exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> governmentalIntervention exists)'- 'Rosetta condition RestructuringPhysicalSettlementMatrix is not stated in LinkML: if (contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix -> matrixType all <> MatrixTypeEnum -> CreditDerivativesPhysicalSettlementMatrix or contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix -> matrixType is absent) and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> restructuring exists then product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> restructuring -> multipleHolderObligation exists'- 'Rosetta condition AdditionalFixedPaymentsMortgages is not stated in LinkML: if ((product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation -> referenceObligation -> security -> securityType any = Debt and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation -> referenceObligation -> security -> debtType -> debtEconomics -> secured -> securedType any = AssetBacked) or contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualTermsSupplement -> contractualTermsSupplementType contains ContractualSupplementTypeEnum -> CDSonMBS) and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> floatingAmountEvents exists then (product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> floatingAmountEvents -> additionalFixedPayments -> interestShortfallReimbursement exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> floatingAmountEvents -> additionalFixedPayments -> principalShortfallReimbursement exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> floatingAmountEvents -> additionalFixedPayments -> writedownReimbursement exists)'- 'Rosetta condition FloatingAmountEventsMortgages is not stated in LinkML: if ((product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation -> referenceObligation -> security -> securityType any = Debt and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation -> referenceObligation -> security -> debtType -> debtEconomics -> secured -> securedType any = AssetBacked) or contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualTermsSupplement -> contractualTermsSupplementType contains ContractualSupplementTypeEnum -> CDSonMBS) and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> floatingAmountEvents exists then (product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> floatingAmountEvents -> failureToPayPrincipal exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> floatingAmountEvents -> writedown exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> floatingAmountEvents -> impliedWritedown exists)'- 'Rosetta condition CreditEventsMortgages is not stated in LinkML: if ((product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation -> referenceObligation -> security -> securityType any = Debt and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation -> referenceObligation -> security -> debtType -> debtEconomics -> secured -> securedType any = AssetBacked) or contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualTermsSupplement -> contractualTermsSupplementType contains ContractualSupplementTypeEnum -> CDSonMBS) and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents exists then (product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> failureToPayPrincipal exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> failureToPayInterest exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> distressedRatingsDowngrade exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> maturityExtension exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> writedown exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> impliedWritedown exists)'- 'Rosetta condition HedgingParty is not stated in LinkML: if partyRole -> role contains PartyRoleEnum -> HedgingParty then FilterPartyRole (partyRole, PartyRoleEnum -> HedgingParty) count <= 2'- 'Rosetta condition DeterminingParty is not stated in LinkML: if partyRole -> role contains PartyRoleEnum -> DeterminingParty then FilterPartyRole (partyRole, PartyRoleEnum -> DeterminingParty) count <= 2'- 'Rosetta condition BarrierDerterminationAgent is not stated in LinkML: if partyRole -> role contains PartyRoleEnum -> BarrierDeterminationAgent then FilterPartyRole (partyRole, PartyRoleEnum -> BarrierDeterminationAgent) count <= 1'- 'Rosetta condition FpML_cd_1 is not stated in LinkML: if product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation exists then tradeDate < product -> economicTerms -> effectiveDate -> adjustableDate -> unadjustedDate or tradeDate < product -> economicTerms -> effectiveDate -> adjustableDate -> adjustedDate'- 'Rosetta condition FpML_cd_7 is not stated in LinkML: if contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> masterConfirmationType is absent and contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix is absent and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation exists then product -> economicTerms -> payout as InterestRatePayout -> calculationPeriodDates -> effectiveDate -> adjustableDate -> dateAdjustments exists or tradeDate < product -> economicTerms -> effectiveDate -> adjustableDate -> adjustedDate'- 'Rosetta condition FpML_cd_8 is not stated in LinkML: if contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> masterConfirmationType is absent and contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix is absent and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation exists then product -> economicTerms -> terminationDate -> adjustableDate -> dateAdjustments exists'- 'Rosetta condition FpML_cd_11 is not stated in LinkML: if contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> masterConfirmationType is absent and contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix is absent and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation exists and contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualDefinitionsType any = ContractualDefinitionsEnum -> ISDA2003CreditDerivatives then product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation -> allGuarantees exists'- 'Rosetta condition FpML_cd_19 is not stated in LinkML: if contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualDefinitionsType any = ContractualDefinitionsEnum -> ISDA1999CreditDerivatives then product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> creditEventNotice -> businessCenter is absent and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> restructuring -> multipleHolderObligation is absent and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> restructuring -> multipleCreditEventNotices is absent and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation -> allGuarantees is absent and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> indexReferenceInformation is absent and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> substitution is absent and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> modifiedEquityDelivery is absent'- 'Rosetta condition FpML_cd_20 is not stated in LinkML: if contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualDefinitionsType any = ContractualDefinitionsEnum -> ISDA2003CreditDerivatives then product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> obligations -> notContingent is absent'- 'Rosetta condition FpML_cd_23 is not stated in LinkML: if contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> masterConfirmationType is absent and contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix is absent and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation exists then product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> cashSettlementTerms exists or product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms exists'- 'Rosetta condition FpML_cd_24 is not stated in LinkML: if contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> masterConfirmationType is absent and contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix is absent and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation exists then product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> creditEventNotice exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> obligations exists and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation -> referencePrice exists'- 'Rosetta condition FpML_cd_25 is not stated in LinkML: if contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> masterConfirmationType is absent and contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix is absent and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms exists then product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> settlementCurrency exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> physicalSettlementPeriod exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> escrow exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> accruedInterest exists'- 'Rosetta condition FpML_cd_32 is not stated in LinkML: if contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> masterConfirmationType is absent and contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix is absent and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation exists and product -> economicTerms -> payout as InterestRatePayout -> priceQuantity exists and tradeLot -> priceQuantity -> quantity -> value exists then product -> economicTerms -> payout as InterestRatePayout -> dayCountFraction exists'- 'Rosetta condition ExtraordinaryEvents is not stated in LinkML: if contractDetails -> documentation -> agreementTerms -> agreement -> transactionAdditionalTerms -> equityAdditionalTerms -> extraordinaryEvents exists then (product -> economicTerms -> payout as PerformancePayout -> returnTerms -> priceReturnTerms exists or product -> economicTerms -> payout as OptionPayout exists) and Qualify_AssetClass_Equity (product -> economicTerms)'- 'Rosetta condition DisruptionEventsDeterminingParty is not stated in LinkML: if contractDetails -> documentation -> agreementTerms -> agreement -> transactionAdditionalTerms -> equityAdditionalTerms -> extraordinaryEvents -> additionalDisruptionEvents -> determiningParty exists then ancillaryParty -> role contains AncillaryRoleEnum -> DisruptionEventsDeterminingParty and if ancillaryParty -> role contains AncillaryRoleEnum -> DisruptionEventsDeterminingParty then contractDetails -> documentation -> agreementTerms -> agreement -> transactionAdditionalTerms -> equityAdditionalTerms -> extraordinaryEvents -> additionalDisruptionEvents -> determiningParty exists'from_schema: https://w3id.org/lmodel/common-domain-modelis_a: TradableProductattributes: tradeIdentifier: name: tradeIdentifier description: Represents the identifier(s) that uniquely identify a trade for an identity issuer. A trade can include multiple identifiers, for example a trade that is reportable to both the CFTC and ESMA, and then has an associated USI (Unique Swap Identifier) UTI (Unique Trade Identifier). from_schema: https://w3id.org/lmodel/common-domain-model/cdm_event_common domain_of: - ExecutionInstruction - Trade range: TradeIdentifier required: true multivalued: true tradeDate: name: tradeDate annotations: rosetta_metadata: tag: rosetta_metadata value: id description: Specifies the date which the trade was agreed. from_schema: https://w3id.org/lmodel/common-domain-model/cdm_event_common domain_of: - ExecutionInstruction - Trade - CollectFloatingRateOptionInstruction - ResetInstructionState range: date required: true tradeTime: name: tradeTime annotations: rosetta_metadata: tag: rosetta_metadata value: id description: Denotes the trade time and timezone as agreed by the parties to the trade. from_schema: https://w3id.org/lmodel/common-domain-model/cdm_event_common domain_of: - ExecutionInstruction - Trade range: TimeZone party: name: party description: Represents the parties to the trade. The cardinality is optional to address the case where the trade is defined within a BusinessEvent data type, in which case the party is specified in BusinessEvent. from_schema: https://w3id.org/lmodel/common-domain-model/cdm_event_common domain_of: - AssetBase - DebtRedemption - MarginCallBase - Trade - UmbrellaAgreementParty - UmbrellaAgreementSet - AggregationParameters - AvailableInventory - CounterpartyPosition - WorkflowStep - WorkflowStepApproval - AdditionalObligations - AdditionalRepresentationElection - CalculationAgentTerms - CalculationCurrencyElection - CollateralManagementAgreementElection - ControlAgreementElections - ControlAgreementNecEventElection - CreditSupportDocumentElection - CreditSupportProviderElection - CustodianElection - CustodianRiskElection - ElectiveAmountElection - FrenchLawAddendumElection - HoldingAndUsingPostedCollateralElection - LegacyExposureScopeElection - LegacyIndependentAmountParty - MinimumTransferAmountElection - NotificationTimeElection - PledgeeRepresentativeRider - PostingObligationsElection - RecalculationOfValueElection - RegimeTerms - SecuredPartyRightsEventElection - SecurityInterestForObligations - SecurityProviderRightsEventElection - SensitivityMethodologiesPartyElection - SinglePostingParty - SpecifiedOrAccessConditionPartyElection - SubstitutedRegimeElection - SubstitutionPartyElection - TerminationCurrencyElection - ThresholdElection - ValuationAgent - ValuationCalculationDateLocationElection - AdditionalTerminationEventElection - AutomaticEarlyTerminationElection - CreditEventUponMergerElection - PartyTerminationCurrencySelection - SpecifiedEntity - EventsOfDefaultElection - EligibleCollateralSpecification range: Party multivalued: true partyRole: name: partyRole description: Represents the role each specified party takes in the trade. further to the principal roles, payer and receiver. from_schema: https://w3id.org/lmodel/common-domain-model/cdm_event_common domain_of: - AssetBase - MarginCallBase - PartyChangeInstruction - Trade - UmbrellaAgreementParty - AvailableInventory - AvailableInventoryRecord - CounterpartyPosition - EligibleCollateralSpecification range: PartyRole multivalued: true executionDetails: name: executionDetails description: Represents information specific to trades that arose from executions. from_schema: https://w3id.org/lmodel/common-domain-model/cdm_event_common domain_of: - ExecutionInstruction - Trade - ContractBase range: ExecutionDetails contractDetails: name: contractDetails description: Represents information specific to trades involving contractual products. from_schema: https://w3id.org/lmodel/common-domain-model/cdm_event_common rank: 1000 domain_of: - Trade - ContractBase range: ContractDetails collateral: name: collateral description: Represents the collateral obligations of a party. from_schema: https://w3id.org/lmodel/common-domain-model/cdm_event_common domain_of: - ExecutionInstruction - Trade - AvailableInventoryRecord - ContractBase - GlobalMasterSecuritiesLendingAgreement - EconomicTerms range: CollateralInduced
Section titled “Induced”name: Tradeannotations: rosetta_metadata: tag: rosetta_metadata value: key doc_reference: tag: doc_reference value: ICMA GMRA namingConvention Transactiondescription: Defines the output of a financial transaction between parties - a Business Event. A Trade impacts the financial position (i.e. the balance sheet) of involved parties.comments:- 'Rosetta condition SettlementPayout is not stated in LinkML: if SettlementPayoutOnlyExists (product -> economicTerms -> payout) then partyRole -> role contains PartyRoleEnum -> Buyer and partyRole -> role contains PartyRoleEnum -> Seller and tradeLot -> priceQuantity -> price exists'- 'Rosetta condition PackageTrade is not stated in LinkML: if executionDetails -> packageReference exists then executionDetails -> packageReference -> componentId -> assignedIdentifier contains tradeIdentifier -> assignedIdentifier'- 'Rosetta condition DeliverableObligationsPhysicalSettlementMatrix is not stated in LinkML: if (contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix -> matrixType all <> MatrixTypeEnum -> CreditDerivativesPhysicalSettlementMatrix or contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix -> matrixType is absent) and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations exists then (product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> notSubordinated exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> specifiedCurrency exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> notSovereignLender exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> notDomesticCurrency exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> notDomesticLaw exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> notContingent exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> notDomesticIssuance exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> assignableLoan exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> consentRequiredLoan exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> transferable exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> maximumMaturity exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> notBearer exists) and (product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> fullFaithAndCreditObLiability exists or product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> generalFundObligationLiability exists or product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> revenueObligationLiability exists)'- 'Rosetta condition ObligationsPhysicalSettlementMatrix is not stated in LinkML: if (contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix -> matrixType all <> MatrixTypeEnum -> CreditDerivativesPhysicalSettlementMatrix or contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix -> matrixType is absent) and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> obligations exists then (product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> obligations -> notSubordinated exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> obligations -> notSovereignLender exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> obligations -> notDomesticLaw exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> obligations -> notDomesticIssuance exists) and (product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> obligations -> fullFaithAndCreditObLiability exists or product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> obligations -> generalFundObligationLiability exists or product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> obligations -> revenueObligationLiability exists)'- 'Rosetta condition CreditEventsPhysicalSettlementMatrix is not stated in LinkML: if (contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix -> matrixType all <> MatrixTypeEnum -> CreditDerivativesPhysicalSettlementMatrix or contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix -> matrixType is absent) and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents exists then (product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> bankruptcy exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> obligationDefault exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> obligationAcceleration exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> repudiationMoratorium exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> governmentalIntervention exists)'- 'Rosetta condition RestructuringPhysicalSettlementMatrix is not stated in LinkML: if (contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix -> matrixType all <> MatrixTypeEnum -> CreditDerivativesPhysicalSettlementMatrix or contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix -> matrixType is absent) and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> restructuring exists then product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> restructuring -> multipleHolderObligation exists'- 'Rosetta condition AdditionalFixedPaymentsMortgages is not stated in LinkML: if ((product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation -> referenceObligation -> security -> securityType any = Debt and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation -> referenceObligation -> security -> debtType -> debtEconomics -> secured -> securedType any = AssetBacked) or contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualTermsSupplement -> contractualTermsSupplementType contains ContractualSupplementTypeEnum -> CDSonMBS) and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> floatingAmountEvents exists then (product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> floatingAmountEvents -> additionalFixedPayments -> interestShortfallReimbursement exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> floatingAmountEvents -> additionalFixedPayments -> principalShortfallReimbursement exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> floatingAmountEvents -> additionalFixedPayments -> writedownReimbursement exists)'- 'Rosetta condition FloatingAmountEventsMortgages is not stated in LinkML: if ((product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation -> referenceObligation -> security -> securityType any = Debt and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation -> referenceObligation -> security -> debtType -> debtEconomics -> secured -> securedType any = AssetBacked) or contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualTermsSupplement -> contractualTermsSupplementType contains ContractualSupplementTypeEnum -> CDSonMBS) and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> floatingAmountEvents exists then (product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> floatingAmountEvents -> failureToPayPrincipal exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> floatingAmountEvents -> writedown exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> floatingAmountEvents -> impliedWritedown exists)'- 'Rosetta condition CreditEventsMortgages is not stated in LinkML: if ((product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation -> referenceObligation -> security -> securityType any = Debt and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation -> referenceObligation -> security -> debtType -> debtEconomics -> secured -> securedType any = AssetBacked) or contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualTermsSupplement -> contractualTermsSupplementType contains ContractualSupplementTypeEnum -> CDSonMBS) and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents exists then (product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> failureToPayPrincipal exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> failureToPayInterest exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> distressedRatingsDowngrade exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> maturityExtension exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> writedown exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> impliedWritedown exists)'- 'Rosetta condition HedgingParty is not stated in LinkML: if partyRole -> role contains PartyRoleEnum -> HedgingParty then FilterPartyRole (partyRole, PartyRoleEnum -> HedgingParty) count <= 2'- 'Rosetta condition DeterminingParty is not stated in LinkML: if partyRole -> role contains PartyRoleEnum -> DeterminingParty then FilterPartyRole (partyRole, PartyRoleEnum -> DeterminingParty) count <= 2'- 'Rosetta condition BarrierDerterminationAgent is not stated in LinkML: if partyRole -> role contains PartyRoleEnum -> BarrierDeterminationAgent then FilterPartyRole (partyRole, PartyRoleEnum -> BarrierDeterminationAgent) count <= 1'- 'Rosetta condition FpML_cd_1 is not stated in LinkML: if product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation exists then tradeDate < product -> economicTerms -> effectiveDate -> adjustableDate -> unadjustedDate or tradeDate < product -> economicTerms -> effectiveDate -> adjustableDate -> adjustedDate'- 'Rosetta condition FpML_cd_7 is not stated in LinkML: if contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> masterConfirmationType is absent and contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix is absent and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation exists then product -> economicTerms -> payout as InterestRatePayout -> calculationPeriodDates -> effectiveDate -> adjustableDate -> dateAdjustments exists or tradeDate < product -> economicTerms -> effectiveDate -> adjustableDate -> adjustedDate'- 'Rosetta condition FpML_cd_8 is not stated in LinkML: if contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> masterConfirmationType is absent and contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix is absent and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation exists then product -> economicTerms -> terminationDate -> adjustableDate -> dateAdjustments exists'- 'Rosetta condition FpML_cd_11 is not stated in LinkML: if contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> masterConfirmationType is absent and contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix is absent and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation exists and contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualDefinitionsType any = ContractualDefinitionsEnum -> ISDA2003CreditDerivatives then product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation -> allGuarantees exists'- 'Rosetta condition FpML_cd_19 is not stated in LinkML: if contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualDefinitionsType any = ContractualDefinitionsEnum -> ISDA1999CreditDerivatives then product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> creditEventNotice -> businessCenter is absent and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> restructuring -> multipleHolderObligation is absent and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> restructuring -> multipleCreditEventNotices is absent and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation -> allGuarantees is absent and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> indexReferenceInformation is absent and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> substitution is absent and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> modifiedEquityDelivery is absent'- 'Rosetta condition FpML_cd_20 is not stated in LinkML: if contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualDefinitionsType any = ContractualDefinitionsEnum -> ISDA2003CreditDerivatives then product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> obligations -> notContingent is absent'- 'Rosetta condition FpML_cd_23 is not stated in LinkML: if contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> masterConfirmationType is absent and contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix is absent and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation exists then product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> cashSettlementTerms exists or product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms exists'- 'Rosetta condition FpML_cd_24 is not stated in LinkML: if contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> masterConfirmationType is absent and contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix is absent and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation exists then product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> creditEvents -> creditEventNotice exists and product -> economicTerms -> payout as CreditDefaultPayout -> protectionTerms -> obligations exists and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation -> referencePrice exists'- 'Rosetta condition FpML_cd_25 is not stated in LinkML: if contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> masterConfirmationType is absent and contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix is absent and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms exists then product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> settlementCurrency exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> physicalSettlementPeriod exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> escrow exists and product -> economicTerms -> payout as CreditDefaultPayout -> settlementTerms -> physicalSettlementTerms -> deliverableObligations -> accruedInterest exists'- 'Rosetta condition FpML_cd_32 is not stated in LinkML: if contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> masterConfirmationType is absent and contractDetails -> documentation -> legalAgreementIdentification -> agreementName -> contractualMatrix is absent and product -> economicTerms -> payout as CreditDefaultPayout -> generalTerms -> referenceInformation exists and product -> economicTerms -> payout as InterestRatePayout -> priceQuantity exists and tradeLot -> priceQuantity -> quantity -> value exists then product -> economicTerms -> payout as InterestRatePayout -> dayCountFraction exists'- 'Rosetta condition ExtraordinaryEvents is not stated in LinkML: if contractDetails -> documentation -> agreementTerms -> agreement -> transactionAdditionalTerms -> equityAdditionalTerms -> extraordinaryEvents exists then (product -> economicTerms -> payout as PerformancePayout -> returnTerms -> priceReturnTerms exists or product -> economicTerms -> payout as OptionPayout exists) and Qualify_AssetClass_Equity (product -> economicTerms)'- 'Rosetta condition DisruptionEventsDeterminingParty is not stated in LinkML: if contractDetails -> documentation -> agreementTerms -> agreement -> transactionAdditionalTerms -> equityAdditionalTerms -> extraordinaryEvents -> additionalDisruptionEvents -> determiningParty exists then ancillaryParty -> role contains AncillaryRoleEnum -> DisruptionEventsDeterminingParty and if ancillaryParty -> role contains AncillaryRoleEnum -> DisruptionEventsDeterminingParty then contractDetails -> documentation -> agreementTerms -> agreement -> transactionAdditionalTerms -> equityAdditionalTerms -> extraordinaryEvents -> additionalDisruptionEvents -> determiningParty exists'from_schema: https://w3id.org/lmodel/common-domain-modelis_a: TradableProductattributes: tradeIdentifier: name: tradeIdentifier description: Represents the identifier(s) that uniquely identify a trade for an identity issuer. A trade can include multiple identifiers, for example a trade that is reportable to both the CFTC and ESMA, and then has an associated USI (Unique Swap Identifier) UTI (Unique Trade Identifier). from_schema: https://w3id.org/lmodel/common-domain-model/cdm_event_common owner: Trade domain_of: - ExecutionInstruction - Trade range: TradeIdentifier required: true multivalued: true tradeDate: name: tradeDate annotations: rosetta_metadata: tag: rosetta_metadata value: id description: Specifies the date which the trade was agreed. from_schema: https://w3id.org/lmodel/common-domain-model/cdm_event_common owner: Trade domain_of: - ExecutionInstruction - Trade - CollectFloatingRateOptionInstruction - ResetInstructionState range: date required: true tradeTime: name: tradeTime annotations: rosetta_metadata: tag: rosetta_metadata value: id description: Denotes the trade time and timezone as agreed by the parties to the trade. from_schema: https://w3id.org/lmodel/common-domain-model/cdm_event_common owner: Trade domain_of: - ExecutionInstruction - Trade range: TimeZone party: name: party description: Represents the parties to the trade. The cardinality is optional to address the case where the trade is defined within a BusinessEvent data type, in which case the party is specified in BusinessEvent. from_schema: https://w3id.org/lmodel/common-domain-model/cdm_event_common owner: Trade domain_of: - AssetBase - DebtRedemption - MarginCallBase - Trade - UmbrellaAgreementParty - UmbrellaAgreementSet - AggregationParameters - AvailableInventory - CounterpartyPosition - WorkflowStep - WorkflowStepApproval - AdditionalObligations - AdditionalRepresentationElection - CalculationAgentTerms - CalculationCurrencyElection - CollateralManagementAgreementElection - ControlAgreementElections - ControlAgreementNecEventElection - CreditSupportDocumentElection - CreditSupportProviderElection - CustodianElection - CustodianRiskElection - ElectiveAmountElection - FrenchLawAddendumElection - HoldingAndUsingPostedCollateralElection - LegacyExposureScopeElection - LegacyIndependentAmountParty - MinimumTransferAmountElection - NotificationTimeElection - PledgeeRepresentativeRider - PostingObligationsElection - RecalculationOfValueElection - RegimeTerms - SecuredPartyRightsEventElection - SecurityInterestForObligations - SecurityProviderRightsEventElection - SensitivityMethodologiesPartyElection - SinglePostingParty - SpecifiedOrAccessConditionPartyElection - SubstitutedRegimeElection - SubstitutionPartyElection - TerminationCurrencyElection - ThresholdElection - ValuationAgent - ValuationCalculationDateLocationElection - AdditionalTerminationEventElection - AutomaticEarlyTerminationElection - CreditEventUponMergerElection - PartyTerminationCurrencySelection - SpecifiedEntity - EventsOfDefaultElection - EligibleCollateralSpecification range: Party multivalued: true partyRole: name: partyRole description: Represents the role each specified party takes in the trade. further to the principal roles, payer and receiver. from_schema: https://w3id.org/lmodel/common-domain-model/cdm_event_common owner: Trade domain_of: - AssetBase - MarginCallBase - PartyChangeInstruction - Trade - UmbrellaAgreementParty - AvailableInventory - AvailableInventoryRecord - CounterpartyPosition - EligibleCollateralSpecification range: PartyRole multivalued: true executionDetails: name: executionDetails description: Represents information specific to trades that arose from executions. from_schema: https://w3id.org/lmodel/common-domain-model/cdm_event_common owner: Trade domain_of: - ExecutionInstruction - Trade - ContractBase range: ExecutionDetails contractDetails: name: contractDetails description: Represents information specific to trades involving contractual products. from_schema: https://w3id.org/lmodel/common-domain-model/cdm_event_common rank: 1000 owner: Trade domain_of: - Trade - ContractBase range: ContractDetails collateral: name: collateral description: Represents the collateral obligations of a party. from_schema: https://w3id.org/lmodel/common-domain-model/cdm_event_common owner: Trade domain_of: - ExecutionInstruction - Trade - AvailableInventoryRecord - ContractBase - GlobalMasterSecuritiesLendingAgreement - EconomicTerms range: Collateral product: name: product description: The underlying product to be included in a contract or execution. from_schema: https://w3id.org/lmodel/common-domain-model/cdm_product_template owner: Trade domain_of: - ExecutionInstruction - TermsChangeInstruction - AggregationParameters - PositionBase - ExcludedProducts - TradableProduct range: NonTransferableProduct required: true tradeLot: name: tradeLot description: Specifies the price, quantity and effective date of each trade lot, when the same product may be traded multiple times in different lots with the same counterparty. In a trade increase, a new trade lot is added to the list, with the corresponding effective date. In a trade decrease, the existing trade lot(s) are decreased of the corresponding quantity (and an unwind fee may have to be settled). The multiple cardinality and the ability to increase existing trades is used for Equity Swaps in particular. from_schema: https://w3id.org/lmodel/common-domain-model/cdm_product_template rank: 1000 owner: Trade domain_of: - TradableProduct range: TradeLot required: true multivalued: true counterparty: name: counterparty annotations: doc_reference: tag: doc_reference value: ICMA GMRA namingConvention Party description: Specifies the parties which are the two counterparties to the transaction. The product is agnostic to the actual parties to the transaction, with the party references abstracted away from the product definition and replaced by the counterparty enum (e.g. CounterpartyEnum values Party1 or Party2). The counterparty enum can then be positioned in the product (e.g. to specify which counterparty is the payer, receiver etc) and this counterparties attribute, which is positioned outside of the product definition, allows the counterparty enum to be associated with an actual party reference. from_schema: https://w3id.org/lmodel/common-domain-model/cdm_product_template owner: Trade domain_of: - ExecutionInstruction - PartyChangeInstruction - AgreementTerms - ClauseLibraryClause - ClauseLibraryClauseVariant - EligibleCollateralSpecification - TradableProduct range: Counterparty required: true multivalued: true minimum_cardinality: 2 maximum_cardinality: 2 ancillaryParty: name: ancillaryParty description: Specifies the parties with ancillary roles in the transaction. The product is agnostic to the actual parties involved in the transaction, with the party references abstracted away from the product definition and replaced by the AncillaryRoleEnum. The AncillaryRoleEnum can then be positioned in the product and this AncillaryParty type, which is positioned outside of the product definition, allows the AncillaryRoleEnum to be associated with an actual party reference. from_schema: https://w3id.org/lmodel/common-domain-model/cdm_product_template owner: Trade domain_of: - AncillaryEntity - ExecutionInstruction - PartyChangeInstruction - TermsChangeInstruction - TradableProduct range: AncillaryParty multivalued: true adjustment: name: adjustment description: 'Specifies the conditions that govern the adjustment to the quantity of a product being traded: e.g. execution, portfolio rebalancing etc. It is typically used in the context of Equity Swaps.' from_schema: https://w3id.org/lmodel/common-domain-model/cdm_product_template owner: Trade domain_of: - TermsChangeInstruction - TradableProduct range: NotionalAdjustmentEnum