Skip to content

Commit

Permalink
Restyled by whitespace
Browse files Browse the repository at this point in the history
  • Loading branch information
restyled-commits authored and sam bacha committed Jul 23, 2020
1 parent 9a25fdd commit cef299d
Show file tree
Hide file tree
Showing 19 changed files with 83 additions and 70 deletions.
34 changes: 17 additions & 17 deletions lib/ISDA/cdm.xtext.cdm
Original file line number Diff line number Diff line change
Expand Up @@ -231,7 +231,7 @@ type CalculationAndTiming: <"A class to specify the Calculation, Valuation and T
calculationDateLocation CalculationDateLocation (0..1) <"The specified location where the credit exposure will be calculated by the respective parties.">
[synonym ISDA_Create_1_0 value "calculation_date_location"]
[synonym ISDA_Create_1_0 value "calculation_date"]
[synonym ISDA_Create_1_0 value "designated_city"]
[synonym ISDA_Create_1_0 value "designated_city"]
// [documentReference Euroclear CtaInitialMargin 2019 paragraph "13" section "4c"]
notificationTime NotificationTime (1..1) <"The time by which a demand for the Transfer of Eligible Credit Support (IM) or Posted Credit Support (IM) needs to be made in order for the transfer to take place in accordance with the Transfer Timing provisions.">
[synonym ISDA_Create_1_0 value "notification_time"]
Expand Down Expand Up @@ -282,7 +282,7 @@ type CalculationDateLocationElection: <"A class to specify each of the party ele
customLocation string (0..1) <"The Calculation Date Location when specified a location which doesn't correspond to the FpML list of business centers or cannot be mapped to it.">
[synonym ISDA_Create_1_0 value "partyA_specify"]
[synonym ISDA_Create_1_0 value "partyB_specify"]

condition Choice : <"The Calculation Date Location is specified either as a standard business center or as a custom location.">
required choice businessCenter, customLocation

Expand Down Expand Up @@ -335,11 +335,11 @@ type CollateralTransferAgreementElections: <"The set of elections which specify
// [documentReference Euroclear CtaInitialMargin 2019 paragraph "13" section "General Principles (e)"]
identifiedCrossCurrencySwap boolean (0..1) <"The qualification of whether cross-currency swaps need to be identified in the Confirmation so that the obligations to exchange principal be disregarded for the purpose of determining the Delivery Amount or Return Amount.">
[synonym ISDA_Create_1_0 set to True when "cross_currency_swap->yey_ney" = "true", set to False when "cross_currency_swap->yey_ney" = "false"]
// [documentReference Euroclear CtaInitialMargin 2018 paragraph "13" section "(g)"]
// [documentReference Euroclear CtaInitialMargin 2018 paragraph "13" section "(g)"]
sensitivityMethodologies SensitivityMethodologies (1..1) <"The specification of methodologies to compute sensitivities specific to the agreement.">
fxHaircutCurrency FxHaircutCurrency (0..1) <"The reference currency for the purpose of specifying the FX Haircut relating to a posting obligation, as being either the Termination Currency or an FX Designated Currency.">
[synonym ISDA_Create_1_0 value "fx_haircut_percentage"]
// [documentReference Euroclear CtaInitialMargin 2018 English Law paragraph "13" section "(h)"]
// [documentReference Euroclear CtaInitialMargin 2018 English Law paragraph "13" section "(h)"]
postingObligations PostingObligations (1..1) <"The security providers posting obligations.">
[synonym ISDA_Create_1_0 value "security_provider_posting_obligations"]
// [documentReference ISDA CtaInitialMargin 2019 paragraph "13" section "General Principles (ii)"]
Expand Down Expand Up @@ -370,15 +370,15 @@ type CollateralTransferAgreementElections: <"The set of elections which specify
// [documentReference Euroclear CtaInitialMargin 2019 paragraph "13" section "12"]
addressesForTransfer ContactElection (0..1) <"The optional specification of address for transfer as specified by the respective parties to the agreement.">
[synonym ISDA_Create_1_0 value "addresses_for_transfers"]
// [documentReference Euroclear CtaInitialMargin 2018 English Law paragraph "13" section "12"]
// [documentReference Euroclear CtaInitialMargin 2018 English Law paragraph "13" section "12"]
otherCsa string (0..1) <"The bespoke definition of Other CSA as specified by the parties to the agreement.">
[synonym ISDA_Create_1_0 value "other_csa->specify" set when "other_csa->specified" = "true"]
// [documentReference Euroclear CtaInitialMargin 2018 English Law paragraph "13" section "13"]
// [documentReference Euroclear CtaInitialMargin 2018 English Law paragraph "13" section "13"]
terminationCurrencyAmendment TerminationCurrencyAmendment (1..1) <"The bespoke provision that might be specified by the parties to the agreement applicable to Termination Currency. Unless specified the definition of Termination Currency has the meaning specified in the Schedule to the ISDA Master Agreement.">
[synonym ISDA_Create_1_0 value "amendment_to_termination_currency"]
[synonym ISDA_Create_1_0 value "security_provider_posting_obligations"]
// [documentReference Euroclear CtaInitialMargin 2019 paragraph "13" section "13"]
minimumTransferAmountAmendment MinimumTransferAmountAmendment (1..1) <"The bespoke provision that might be specified by the parties to the agreement applicable to Minimum Transfer Amount. Unless specified the definition of Minimum Transfer Amount in any Other Regulatory CSA has the meaning specified in such Other Regulatory CSA.">
minimumTransferAmountAmendment MinimumTransferAmountAmendment (1..1) <"The bespoke provision that might be specified by the parties to the agreement applicable to Minimum Transfer Amount. Unless specified the definition of Minimum Transfer Amount in any Other Regulatory CSA has the meaning specified in such Other Regulatory CSA.">
[synonym ISDA_Create_1_0 value "amendment_to_minimum_transfer_amount" mapper "MinimumTransferAmountAmendment"]
// [documentReference Euroclear CtaInitialMargin 2019 paragraph "13" section "14"]
interpretationTerms string (0..1) <"The bespoke provision that might be specified by the parties to the agreement applicable to Interpretations.">
Expand Down Expand Up @@ -531,11 +531,11 @@ type CreditSupportAgreementElections: <"The set of elections which specify a Cre
// [documentReference Euroclear CtaInitialMargin 2019 paragraph "13" section "General Principles (e)"]
identifiedCrossCurrencySwap boolean (0..1) <"The qualification of whether cross-currency swaps need to be identified in the Confirmation so that the obligations to exchange principal be disregarded for the purpose of determining the Delivery Amount or Return Amount.">
[synonym ISDA_Create_1_0 set to True when "cross_currency_swap->yey_ney" = "true", set to False when "cross_currency_swap->yey_ney" = "false"]
// [documentReference Euroclear CtaInitialMargin 2018 paragraph "13" section "(g)"]
// [documentReference Euroclear CtaInitialMargin 2018 paragraph "13" section "(g)"]
sensitivityMethodologies SensitivityMethodologies (1..1) <"The specification of methodologies to compute sensitivities specific to the agreement.">
fxHaircutCurrency FxHaircutCurrency (0..1) <"The reference currency for the purpose of specifying the FX Haircut relating to a posting obligation, as being either the Termination Currency or an FX Designated Currency.">
[synonym ISDA_Create_1_0 value "fx_haircut_percentage"]
// [documentReference Euroclear CtaInitialMargin 2018 English Law paragraph "13" section "(h)"]
// [documentReference Euroclear CtaInitialMargin 2018 English Law paragraph "13" section "(h)"]
postingObligations PostingObligations (1..1) <"The security providers posting obligations.">
[synonym ISDA_Create_1_0 value "chargor_posting_obligations"]
[synonym ISDA_Create_1_0 value "pledgor_posting_obligations"]
Expand Down Expand Up @@ -571,10 +571,10 @@ type CreditSupportAgreementElections: <"The set of elections which specify a Cre
// [documentReference Euroclear CtaInitialMargin 2019 paragraph "13" section "12"]
addressesForTransfer ContactElection (0..1) <"The optional specification of address for transfer as specified by the respective parties to the agreement.">
[synonym ISDA_Create_1_0 value "addresses_for_transfers"]
// [documentReference Euroclear CtaInitialMargin 2018 English Law paragraph "13" section "12"]
// [documentReference Euroclear CtaInitialMargin 2018 English Law paragraph "13" section "12"]
otherCsa OtherAgreements (0..1) <"The bespoke definition of Other CSA as specified by the parties to the agreement.">
[synonym ISDA_Create_1_0 value "other_csa"]
// [documentReference Euroclear CtaInitialMargin 2018 English Law paragraph "13" section "13"]
// [documentReference Euroclear CtaInitialMargin 2018 English Law paragraph "13" section "13"]
japaneseLawCsa OtherAgreements (0..1) <"The bespoke definition of whether Japanese Law CSA (VM) are specified by the parties to the agreement. ISDA 2016 Credit Support Annex for Initial Margin, paragraph 13, General Principles, (s)(ii): Japanese Law CSA (VM).">
[synonym ISDA_Create_1_0 value "japanese_law_csa_vm"]
terminationCurrencyAmendment TerminationCurrencyAmendment (1..1) <"The bespoke provision that might be specified by the parties to the agreement applicable to Termination Currency. Unless specified the definition of Termination Currency has the meaning specified in the Schedule to the ISDA Master Agreement.">
Expand All @@ -583,7 +583,7 @@ type CreditSupportAgreementElections: <"The set of elections which specify a Cre
[synonym ISDA_Create_1_0 value "chargor_posting_obligations"]
[synonym ISDA_Create_1_0 value "obligor_posting_obligations"]
// [documentReference Euroclear CtaInitialMargin 2019 paragraph "13" section "13"]
minimumTransferAmountAmendment MinimumTransferAmountAmendment (1..1) <"The bespoke provision that might be specified by the parties to the agreement applicable to Minimum Transfer Amount. Unless specified the definition of Minimum Transfer Amount in any Other Regulatory CSA has the meaning specified in such Other Regulatory CSA.">
minimumTransferAmountAmendment MinimumTransferAmountAmendment (1..1) <"The bespoke provision that might be specified by the parties to the agreement applicable to Minimum Transfer Amount. Unless specified the definition of Minimum Transfer Amount in any Other Regulatory CSA has the meaning specified in such Other Regulatory CSA.">
[synonym ISDA_Create_1_0 value "amendment_to_minimum_transfer_amount" mapper "MinimumTransferAmountAmendment"]
// [documentReference Euroclear CtaInitialMargin 2019 paragraph "13" section "14"]
interpretationTerms string (0..1) <"The bespoke provision that might be specified by the parties to the agreement applicable to Interpretations.">
Expand Down Expand Up @@ -986,7 +986,7 @@ type ExecutionTerms: <"A class to specify execution location and language of exe
type FrenchLawAddendum: <"A class to specify party specific elections when a Collateral Transfer Agreement is governed by French Law.">

isApplicable boolean (1..1) <"The qualification of whether the French Law Addendum is deemed applicable by the parties (True) or not (False).">
[synonym ISDA_Create_1_0 set to True when "is_applicable" = "applicable", set to False when "is_applicable" = "not_applicable"]
[synonym ISDA_Create_1_0 set to True when "is_applicable" = "applicable", set to False when "is_applicable" = "not_applicable"]
partyElection FrenchLawAddendumElection (2..2) <"The parties French Law Addendum Elections.">

condition Applicable: <"A data rule to enforce that the French Law Addendum party elections must be specified when applicable.">
Expand Down Expand Up @@ -1296,7 +1296,7 @@ type PostingObligations: <"A class to specify the security provider(s) collatera
[synonym ISDA_Create_1_0 value "obligor"]
[synonym ISDA_Create_1_0 value "security_provider"]
partyElection PostingObligationsElection (1..2) <"The security provider party(ies) to which the posting obligations apply to, which can be either one of the parties to the legal agreement, or both of those.">

type PostingObligationsElection: <"A class to specify the collateral posting obligations as specified under the terms of the ISDA 2016 Credit Support Annex for Initial Margin, paragraph 13, General Principles, (ii).">

party string (1..1) <"The elective party.">
Expand Down Expand Up @@ -1569,7 +1569,7 @@ type SensitivityMethodology: <"A class to specify the methodology according to w
condition: one-of

type SimmCalculationCurrency: <"A class to specify the SIMM Calculation Currency elections by each party to the agreement.">

partyElection CalculationCurrencyElection (2..2) <"The parties' SIMM Calculation Currency election.">

type SimmException: <"A class to specify the SIMM exception to the regulatory regime clause of the ISDA 2016 and 2018 CSA for Initial Margin as either a normalized value specified as part of an enumeration or a customized value specified of type string. ISDA 2016 Credit Support Annex for Initial Margin paragraph 13, Regime: SIMM Exception.">
Expand Down Expand Up @@ -1699,7 +1699,7 @@ type UmbrellaAgreement: <"A class to specify a set of legal entities which are p
[synonym ISDA_Create_1_0 value "language" maps 2] // TODO: remove "maps 2" once migration complete
parties UmbrellaAgreementEntity (0..*) <"Underlying principals to the umbrella agreement.">
[synonym ISDA_Create_1_0 value "principal_identification_schedule" mapper "UmbrellaAgreementEntity"]

condition UmbrellaAgreementExists: <"Umbrella Agreement language and parties should not exist when Umbrella Agreement terms are Not Applicable.">
if isApplicable = True
then (language and parties) exists
Expand All @@ -1713,7 +1713,7 @@ func SaIsdaBankCustodian2019NewYorkLaw:
// [validation agreement]
inputs: agreementTerms AgreementTerms (1..1)
output: is_agreement boolean (1..1)

assign-output is_agreement:
agreementTerms -> relatedAgreements -> legalAgreement -> agreementType -> name = LegalAgreementNameEnum->CollateralTransferAgreement //The agreement is a CTA
and agreementTerms -> relatedAgreements -> legalAgreement -> agreementType -> publisher = LegalAgreementPublisherEnum->ISDA //published by ISDA
Expand Down
Loading

0 comments on commit cef299d

Please sign in to comment.