[master] Adrian Jenks - Creation of an Agreement Event to support the capture of legal agreement changes (Update expectations)#4644
Conversation
…t the capture of legal agreement changes
…3867fe2e1f-AgreementAmendments_UpdExp
|
|
✅ Deploy Preview for finos-cdm ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
|
@AdrianJenksD2LT can you please complete the easy CLA authorisation. |
| [metadata key] | ||
| [rootType] | ||
|
|
||
| agreementEventInstruction EventBase (0..1) <"Specifies the date of the event and the effective date of the event associated with the agreement event triggered by an amendment"> |
There was a problem hiding this comment.
For consistency with BusinessEvent, this should extend event base rather than use it as an attribute.
Also, there is an unused type AgreementInstruction below that can be deleted.
There was a problem hiding this comment.
Change made as requested
| eventQualifier string (0..1) <"The CDM event qualifier, which corresponds to the outcome of the isEvent qualification logic which qualifies the lifecycle event as a function of its features (e.g. PartialTermination, ClearingSubmission, Novation, ...)."> | ||
| afterAgreement LegalAgreement (0..*) <"The agreement as it looks after the event"> | ||
|
|
||
| type AgreementEventInstruction: <"Specifies the date of the event and the effective date of the event."> |
There was a problem hiding this comment.
This type is unused and can be deleted.
There was a problem hiding this comment.
Change made as requested.
There was a problem hiding this comment.
I am still seeing the type
There was a problem hiding this comment.
This should follow the same structure as the BusinessEvent.
AgreementEvent extends AgreementEventInstruction
There was a problem hiding this comment.
And instruction should be inside AgreementEventInstruction
There was a problem hiding this comment.
Amended as requested and now aligned with original Business Event structure
| @@ -66,6 +70,48 @@ type BusinessEvent extends EventInstruction: <"A business event represents a lif | |||
| condition EventDate: | |||
| eventDate exists | |||
|
|
|||
| type AgreementEvent: <"An agreement event represents a life cycle event of a legal document. The combination of legal term amendments, contracting party cchanges or agreement status changes that are represented by an amendment agreement or application of a protocol that represents a change to the overal Legal agreement representation."> | |||
There was a problem hiding this comment.
Is there a reason why this doesn't extend AgreementInstruction which extends AgreementBase?
There was a problem hiding this comment.
Amended as requested
| type AgreementInstruction: <"Instruction to a function that will be used to perform an agreement event"> | ||
| [rootType] | ||
| primitiveInstruction AgreementPrimitiveInstruction (0..1) <"Specifies the primitive instructions that will be used to call the primitive Event function"> | ||
| beforeAgreement LegalAgreement (0..1) <"Specifies the Legal Agreement that will be acted upon by the primitive event function."> |
There was a problem hiding this comment.
This can just be called before. Agreement is implied.
There was a problem hiding this comment.
Amended as requested
| beforeAgreement LegalAgreement (0..1) <"Specifies the Legal Agreement that will be acted upon by the primitive event function."> | ||
| [metadata reference] | ||
|
|
||
| type AgreementPrimitiveInstruction: <"A Primitive Instruction describes the inputs required to pass into the corresponding AgreementPrimitiveEvent function."> |
There was a problem hiding this comment.
I don't think this needs to be split by CSA type - there is no difference between any of the change instruction types, and the party change is common across each.
Also, the party is defined at the top of the agreement, so I don't think the change needs to be applied within the IM/VM/Legacy documents themselves.
Review the existing party change instruction type and see if it can be reused here.
There was a problem hiding this comment.
The reason this has been split is due to different terms being applicable to different agreement types. I think we should retain the constraints we have within the agreement digitisation process to ensure only applicable terms are captured based on the agreement type.
We should also consider that organisations may use the amendment process to capture a complete digitised document. For example in the even that an amend and restate process is initiated where the original agreement terms have not been captured.
Regarding Party this change was intended to be outside of the terms change as I agree this does not need to be constrained at the agreement level. So the intention is to have a common Party change function but diversified agreement terms capture based on the agreement type.
There was a problem hiding this comment.
A party change should have its own primitive instruction because the parties will be updated agnostic to the type of agreement -the party is specified a level up at agreement Agreement. It doesn't need to be within each of the terms change types.
The agreement in question is passed in as the before agreement and will be used to set the after CSA agreement typew.
set after → agreementTerms → agreement -> CreditSupportAgreementElections: before -> agreementTerms → agreement -> CreditSupportAgreementElections
For terms change, I think it should be more granular than just the agreement type. This will let you change specific parts of an agreement rather than just overriding it with a new one. Furthermore, the way it is modelled currently, all agreement primitive instruction types use agreement. There's no actual difference between any of them, and you can just use agreement in each case.
There was a problem hiding this comment.
These are formatting changes and can be ignored.
| [metadata key] | ||
| [rootType] | ||
|
|
||
| agreementEventInstruction EventBase (0..1) <"Specifies the date of the event and the effective date of the event associated with the agreement event triggered by an amendment"> |
There was a problem hiding this comment.
agreementEventInstruction is not an appropriate name here. There is already an agreementInstruction attribute.
There was a problem hiding this comment.
Amended to eventInstruction
| agreementEventInstruction EventBase (0..1) <"Specifies the date of the event and the effective date of the event associated with the agreement event triggered by an amendment"> | ||
| agreementInstruction AgreementInstruction (0..*) <"Specifies the instruction associated with the agreement event triggered by an amendment."> | ||
| eventQualifier string (0..1) <"The CDM event qualifier, which corresponds to the outcome of the isEvent qualification logic which qualifies the lifecycle event as a function of its features (e.g. PartialTermination, ClearingSubmission, Novation, ...)."> | ||
| afterAgreement LegalAgreement (0..*) <"The agreement as it looks after the event"> |
There was a problem hiding this comment.
This can just be called before. Agreement is implied.
There was a problem hiding this comment.
Amended as requested
There was a problem hiding this comment.
I am still seeing afterAgreement - should just be called after
There was a problem hiding this comment.
amended as requested
| @@ -66,6 +70,48 @@ type BusinessEvent extends EventInstruction: <"A business event represents a lif | |||
| condition EventDate: | |||
| eventDate exists | |||
|
|
|||
| type AgreementEvent: <"An agreement event represents a life cycle event of a legal document. The combination of legal term amendments, contracting party cchanges or agreement status changes that are represented by an amendment agreement or application of a protocol that represents a change to the overal Legal agreement representation."> | |||
There was a problem hiding this comment.
Upon review of our discussion with Chris, I thought the approach was to extend an AgreementInstruction type which contained an intent and instruction. Let me know if you want to catch up!
There was a problem hiding this comment.
Having reviewed the Intent solution that currently exists this is both too broad and also does not contain some of the intent options that an amendment represents. I believe the AgreementEvent should describe the changes while the capturing of the details of the nature of the Amendment Agreement under type amendment - purpose allows the nature of the amendment agreement to be captured alongside any applicable Party and/or terms changes.
There was a problem hiding this comment.
Updated to add Intent to the Agreement Event and utilised new enum to reflect the events defined by an amendment document.
| [rootType] | ||
|
|
||
| agreementEventInstruction EventBase (0..1) <"Specifies the date of the event and the effective date of the event associated with the agreement event triggered by an amendment"> | ||
| agreementInstruction AgreementInstruction (0..*) <"Specifies the instruction associated with the agreement event triggered by an amendment."> |
There was a problem hiding this comment.
This can be called instruction. There is no need to use agreement in the attribute names
There was a problem hiding this comment.
Amended as requested
…ndments_UpdExp # Conflicts: # rosetta-source/src/main/resources/cdm-sample-files/createiq/other/sandbox/expectations.json # rosetta-source/src/main/resources/cdm-sample-files/createiq/test-pack/development/expectations.json # rosetta-source/src/main/resources/cdm-sample-files/createiq/test-pack/production/expectations.json # rosetta-source/src/main/resources/cdm-sample-files/createiq/test-pack/sandbox/expectations.json # rosetta-source/src/main/resources/mapping-analytics/createiq-other-sandbox-aggregated-mapping-failure-report.csv # rosetta-source/src/main/resources/mapping-analytics/createiq-other-sandbox-failed-mappings-report.csv # rosetta-source/src/main/resources/mapping-analytics/createiq-test-pack-development-aggregated-mapping-failure-report.csv # rosetta-source/src/main/resources/mapping-analytics/createiq-test-pack-development-failed-mappings-report.csv # rosetta-source/src/main/resources/mapping-analytics/createiq-test-pack-production-aggregated-mapping-failure-report.csv # rosetta-source/src/main/resources/mapping-analytics/createiq-test-pack-production-failed-mappings-report.csv # rosetta-source/src/main/resources/mapping-analytics/createiq-test-pack-sandbox-aggregated-mapping-failure-report.csv # rosetta-source/src/main/resources/mapping-analytics/createiq-test-pack-sandbox-failed-mappings-report.csv # rosetta-source/src/main/resources/result-json-files/createiq/other/sandbox/2016-clearstream-cta-eng-law/1.4/sample1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/other/sandbox/2016-clearstream-cta-ny-law/1.4/sample1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/other/sandbox/2016-clearstream-sa-lux-law/0.7/sample1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/other/sandbox/2016-euroclear-sa-bel-law/0.9/sample1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/other/sandbox/2016-im-csa-jpn-law/1.4/sample1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/other/sandbox/2016-im-csa-jpn-law/1.4/sample2_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/other/sandbox/2016-im-csa-jpn-law/1.4/sample3_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/other/sandbox/2016-im-csa-jpn-law/1.4/sample4_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/other/sandbox/2016-im-csa-jpn-law/1.4/sample5_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/other/sandbox/2016-im-csa-jpn-law/1.4/sample6_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/other/sandbox/2016-im-csd-eng-law/2.3/sample1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/other/sandbox/2016-im-csd-eng-law/2.3/sample2_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/other/sandbox/2016-im-csd-eng-law/2.3/sample3_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/other/sandbox/2016-im-csd-eng-law/2.3/sample4_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/other/sandbox/2016-im-csd-eng-law/2.3/sample5_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/other/sandbox/2016-im-csd-eng-law/2.3/sample6_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/other/sandbox/2017-clearstream-sa-lux-law/0.8/sample1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/other/sandbox/2017-euroclear-cta-eng-law/1.4/sample1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/other/sandbox/2017-euroclear-cta-ny-law/1.4/sample1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/other/sandbox/2018-euroclear-cta-eng-law/0.10/sample1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/other/sandbox/2018-euroclear-cta-ny-law/3.7/sample1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/other/sandbox/2018-euroclear-sa-bel-law/1.12/sample1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/other/sandbox/2019-euroclear-sa-bel-law/0.7/sample1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/other/sandbox/2019-isda-bank-custodian-sa-bel-law/0.1/sample1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/other/sandbox/2019-isda-bank-custodian-sa-lux-law/0.1/sample1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/development/2019-isda-bank-custodian-sa-ny-law/0.3/tp2-metadata3_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/development/2021-small-sample-document/0.1/tp2-metadata1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2002-isda-master-agreement-schedule-with-isda-clause-library/2.0/tp2-metadata1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2002-isda-master-agreement-schedule-with-isda-clause-library/2.0/tp2-metadata2_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2002-isda-master-agreement-schedule-with-isda-clause-library/2.0/tp2-metadata3_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2002-isda-master-agreement/2.1/tp2-metadata1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2002-isda-master-agreement/2.1/tp2-metadata2_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2002-isda-master-agreement/2.1/tp2-metadata3_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2016-im-csa-ny-law/0.5/tp1-metadata1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2016-im-csa-ny-law/0.5/tp1-metadata2_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2016-im-csa-ny-law/0.5/tp1-metadata3_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2018-im-csa-ny-law/2.2/tp2-metadata1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2018-im-csa-ny-law/2.2/tp2-metadata2_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2018-im-csa-ny-law/2.2/tp2-metadata3_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2018-im-csd-eng-law/1.2/tp2-metadata1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2018-im-csd-eng-law/1.2/tp2-metadata2_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2018-im-csd-eng-law/1.2/tp2-metadata3_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2018-im-csd-eng-law/1.2/tp2-metadata4_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2019-clearstream-cta/2.2/tp2-metadata1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2019-clearstream-cta/2.2/tp2-metadata2_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2019-clearstream-cta/2.2/tp2-metadata3_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2019-clearstream-sa-security-provider-lux-law/0.3/tp1-metadata1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2019-clearstream-sa-security-provider-lux-law/0.3/tp1-metadata2_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2019-clearstream-sa-security-provider-lux-law/0.3/tp1-metadata3_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2019-clearstream-sa-security-taker-lux-law/0.3/tp1-metadata1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2019-clearstream-sa-security-taker-lux-law/0.3/tp1-metadata2_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2019-clearstream-sa-security-taker-lux-law/0.3/tp1-metadata3_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2019-euroclear-cta/1.2/tp2-metadata1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2019-euroclear-cta/1.2/tp2-metadata2_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2019-euroclear-cta/1.2/tp2-metadata3_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2019-isda-bank-custodian-cta/2.1/tp2-metadata1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2019-isda-bank-custodian-cta/2.1/tp2-metadata2_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2019-isda-bank-custodian-cta/2.1/tp2-metadata3_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2019-isda-bank-custodian-sa-eng-law/0.3/tp1-metadata1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2019-isda-bank-custodian-sa-eng-law/0.3/tp1-metadata2_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2019-isda-bank-custodian-sa-eng-law/0.3/tp1-metadata3_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2019-isda-bank-custodian-sa-eng-law/0.5/tp2-metadata1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2019-isda-bank-custodian-sa-eng-law/0.5/tp2-metadata2_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2019-isda-bank-custodian-sa-eng-law/0.5/tp2-metadata3_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2019-isda-bank-custodian-sa-ny-law/1.1/tp1-metadata1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2019-isda-bank-custodian-sa-ny-law/1.1/tp1-metadata2_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/production/2019-isda-bank-custodian-sa-ny-law/1.1/tp1-metadata3_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2002-isda-master-agreement-with-clause-library/38.0/tp2-metadata1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2002-isda-master-agreement-with-clause-library/38.0/tp2-metadata2_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2002-isda-master-agreement-with-clause-library/38.0/tp2-metadata3_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2002-isda-master-agreement/13.1/tp2-metadata1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2002-isda-master-agreement/13.1/tp2-metadata2_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2002-isda-master-agreement/13.1/tp2-metadata3_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2016-im-csa-ny-law/0.10/tp1-metadata1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2016-im-csa-ny-law/0.10/tp1-metadata2_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2016-im-csa-ny-law/0.10/tp1-metadata3_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2018-im-csa-ny-law/2.4/tp2-metadata1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2018-im-csa-ny-law/2.4/tp2-metadata2_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2018-im-csa-ny-law/2.4/tp2-metadata3_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2018-im-csd-eng-law/2.4/tp2-metadata1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2018-im-csd-eng-law/2.4/tp2-metadata2_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2018-im-csd-eng-law/2.4/tp2-metadata3_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2019-clearstream-cta/3.2/tp2-metadata1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2019-clearstream-cta/3.2/tp2-metadata2_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2019-clearstream-cta/3.2/tp2-metadata3_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2019-clearstream-sa-security-provider-lux-law/0.8/tp1-metadata1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2019-clearstream-sa-security-provider-lux-law/0.8/tp1-metadata2_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2019-clearstream-sa-security-provider-lux-law/0.8/tp1-metadata3_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2019-clearstream-sa-security-taker-lux-law/0.7/tp1-metadata1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2019-clearstream-sa-security-taker-lux-law/0.7/tp1-metadata2_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2019-clearstream-sa-security-taker-lux-law/0.7/tp1-metadata3_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2019-euroclear-cta/3.2/tp2-metadata1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2019-euroclear-cta/3.2/tp2-metadata2_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2019-euroclear-cta/3.2/tp2-metadata3_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2019-isda-bank-custodian-cta/3.3/tp2-metadata1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2019-isda-bank-custodian-cta/3.3/tp2-metadata2_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2019-isda-bank-custodian-cta/3.3/tp2-metadata3_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2019-isda-bank-custodian-sa-eng-law/2.1/tp1-metadata1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2019-isda-bank-custodian-sa-eng-law/2.1/tp1-metadata2_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2019-isda-bank-custodian-sa-eng-law/2.1/tp1-metadata3_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2019-isda-bank-custodian-sa-eng-law/2.1/tp2-metadata1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2019-isda-bank-custodian-sa-eng-law/2.1/tp2-metadata2_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2019-isda-bank-custodian-sa-eng-law/2.1/tp2-metadata3_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2019-isda-bank-custodian-sa-ny-law/1.3/tp1-metadata1_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2019-isda-bank-custodian-sa-ny-law/1.3/tp1-metadata2_cdm.json # rosetta-source/src/main/resources/result-json-files/createiq/test-pack/sandbox/2019-isda-bank-custodian-sa-ny-law/1.3/tp1-metadata3_cdm.json
…cture of the types to ensure...
…3867fe2e1f-AgreementAmendments_UpdExp # Conflicts: # rosetta-source/src/main/resources/functions/business-event/contract-formation/contract-formation-swaption-func-output.json # rosetta-source/src/main/resources/functions/business-event/exercise/exercise-cancellable-option-func-output.json # rosetta-source/src/main/resources/functions/business-event/exercise/exercise-cash-settled-func-output.json # rosetta-source/src/main/resources/functions/business-event/exercise/exercise-partial-exercise-func-output.json # rosetta-source/src/main/resources/functions/business-event/exercise/exercise-swaption-full-physical-func-output.json # rosetta-source/src/main/resources/functions/business-event/index-transition/index-transition-xccy-swap-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-cleared-alpha-trade-CFTC-SEC-and-canada-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-ex52-execution-advice-trade-partial-novation-C02-00-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-ex53-execution-advice-trade-partial-novation-correction-C02-10-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-new-alpha-trade-CFTC-SEC-and-canada-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-new-beta-trade-CFTC-SEC-and-canada-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-new-trade-CFTC-SEC-and-canada-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-new-trade-CFTC-clearing-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-partial-termination-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-partial-termination-xccy-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-partial-termination-xccy-swap-func-output.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-incomplete-processes/msg-ex59-execution-advice-trade-amendment-F02-00.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-incomplete-processes/msg-ex60-execution-advice-trade-amendment-correction-F02-10.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-08-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-09-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-12-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-12-Submission-2.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-cleared-alpha-trade-CFTC-SEC-and-canada.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-ex52-execution-advice-trade-partial-novation-C02-00.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-ex53-execution-advice-trade-partial-novation-correction-C02-10.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-new-alpha-trade-CFTC-SEC-and-canada.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-new-beta-trade-CFTC-SEC-and-canada.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-new-trade-CFTC-SEC-and-canada.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-new-trade-CFTC-clearing.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-partial-termination-xccy-swap.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-partial-termination-xccy.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-partial-termination.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-13-processes-execution-advice/msg-ex52-execution-advice-trade-partial-novation-C02-00.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-13-processes-execution-advice/msg-ex53-execution-advice-trade-partial-novation-correction-C02-10.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-13-processes-execution-advice/msg-ex59-execution-advice-trade-amendment-F02-00.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-13-processes-execution-advice/msg-ex60-execution-advice-trade-amendment-correction-F02-10.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-13-processes-execution-advice/msg-ex70-execution-advice-commodity-swap-classification-termination-esma-emir-refit.json
…reementAmendments' into adria_635b9f93d2c223867fe2e1f-AgreementAmendments_UpdExp # Conflicts: # rosetta-source/src/main/rosetta/event-common-func.rosetta
| agreementTerms AgreementTerms (0..1) <"Specification of the content of the legal agreement."> | ||
| relatedAgreements LegalAgreement (0..*) <"Specifies the agreement(s) that govern the agreement, either as a reference to such agreements when specified as part of the CDM, or through identification of some of the key terms of those agreements, such as the type of agreement, the publisher, the vintage, the agreement identifier and the agreement date."> | ||
| umbrellaAgreement UmbrellaAgreement (0..1) <"Specifies a set of legal entities which are part of a legal agreement beyond the two contracting parties to that agreement."> | ||
| amendment AgreementAmendment (0..1) <"Specifies the existence and nature of an amendment agreement and the legal documents it amends. Where an amendment impacts the terms or contractual parties the agreement event function must be called to capture those amended terms and or parties."> |
There was a problem hiding this comment.
@AdrianJenksD2LT what is the purpose of this new type?
There was a problem hiding this comment.
This type allows us to capture the presence of an Amendment Document. It is important to have an understanding of all amendment documents that have been negotiated against a master or supporting document to allow the document and the associated changes to be linked. Where disputes occur it is critical that the document can be identified that initiated a change in terms. Additionally there are circumstances where an amendment document does not update parties or terms that have been identified as requiring to be digitised however it is still important that the existence of this document and its purpose is captured. Please note that amendments can often update multiple agreements for example it can contain modifications to the ISDA Master agreement as well as any or all underlying Credit Support Annex agreements covering all of Legacy, Initial Margin and Variation Margin agreements.
There was a problem hiding this comment.
New type has been removed and all previous elements now moved into the Agreement event.
| CreditSupportAgreementInitialMarginElections <"The set of elections which specify an Initial Margin Credit Support Annex or Deed."> | ||
| CreditSupportAgreementVariationMarginElections <"The set of elections which specify a Variation Margin Credit Support Annex or Deed."> | ||
| CreditSupportAgreementLegacyElections <"The set of elections which specify a Legacy (1994 or 1995) Credit Support Annex or Deed."> | ||
| IMCSAElections <"The set of elections which specify an Initial Margin Credit Support Annex or Deed."> |
There was a problem hiding this comment.
These should not be renamed - they were agreed on when implemented and are not in scope for this contribution.
There was a problem hiding this comment.
Reset to previous names
| legacyCSAPrimitiveInstruction LegacyCSAPrimitiveInstruction (0..1) <"A Primitive Instruction set for a VM CSA Agreement."> | ||
| partyChange AgreementPartyChange (0..1) <"A primitive Instruction set to capture any Party changes applicable to the agreement."> | ||
|
|
||
| type AgreementPartyChange extends PartyChangeInstruction: <"A primitive instruction to capture agreement party changes due to an amendment."> |
There was a problem hiding this comment.
You don't need to create a new type. PartyChangeInstruction is a generic instruction that can be used.
There was a problem hiding this comment.
Agreed and change applied
|
|
||
| type AgreementPartyChange extends PartyChangeInstruction: <"A primitive instruction to capture agreement party changes due to an amendment."> | ||
|
|
||
| type VMCSAPrimitiveInstruction: <"A Primitive Instruction set for a VM CSA Agreement."> |
There was a problem hiding this comment.
I would remove these types and just add the types directly in AgreementPrimitiveInstruction
There was a problem hiding this comment.
Agree and change made
There was a problem hiding this comment.
I am still seeing the types.
I am suggesting they be removed and added directly in AgreementPrimitiveInstruction
There was a problem hiding this comment.
Amended as requested
|
Hey @llynhiavu please could you review this when you have time? |
…ndments_UpdExp # Conflicts: # rosetta-source/src/main/resources/functions/business-event/allocation/allocation-func-output.json # rosetta-source/src/main/resources/functions/business-event/clearing/clearing-func-output.json # rosetta-source/src/main/resources/functions/business-event/compression/compression-func-output.json # rosetta-source/src/main/resources/functions/business-event/contract-formation/contract-formation-fra-func-output.json # rosetta-source/src/main/resources/functions/business-event/contract-formation/contract-formation-fx-forward-func-output.json # rosetta-source/src/main/resources/functions/business-event/contract-formation/contract-formation-ois-swap-func-output.json # rosetta-source/src/main/resources/functions/business-event/contract-formation/contract-formation-swaption-func-output.json # rosetta-source/src/main/resources/functions/business-event/exercise/exercise-cancellable-option-func-output.json # rosetta-source/src/main/resources/functions/business-event/exercise/exercise-cash-settled-func-output.json # rosetta-source/src/main/resources/functions/business-event/exercise/exercise-partial-exercise-func-output.json # rosetta-source/src/main/resources/functions/business-event/exercise/exercise-swaption-full-physical-func-output.json # rosetta-source/src/main/resources/functions/business-event/index-transition/index-transition-vanilla-swap-func-output.json # rosetta-source/src/main/resources/functions/business-event/index-transition/index-transition-xccy-swap-func-output.json # rosetta-source/src/main/resources/functions/business-event/novation/full-novation-func-output.json # rosetta-source/src/main/resources/functions/business-event/novation/partial-novation-func-output.json # rosetta-source/src/main/resources/functions/business-event/stock-split/stock-split-equity-swap-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-cleared-alpha-trade-CFTC-SEC-and-canada-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-ex52-execution-advice-trade-partial-novation-C02-00-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-ex53-execution-advice-trade-partial-novation-correction-C02-10-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-new-alpha-trade-CFTC-SEC-and-canada-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-new-beta-trade-CFTC-SEC-and-canada-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-new-trade-CFTC-SEC-and-canada-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-new-trade-CFTC-clearing-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-partial-termination-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-partial-termination-xccy-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-partial-termination-xccy-swap-func-output.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-incomplete-processes/msg-ex59-execution-advice-trade-amendment-F02-00.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-incomplete-processes/msg-ex60-execution-advice-trade-amendment-correction-F02-10.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-01-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-02-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-03-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-04-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-05-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-06-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-07-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-07-Submission-2.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-07-Submission-3.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-08-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-09-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-10-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-11-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-12-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-12-Submission-2.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-cleared-alpha-trade-CFTC-SEC-and-canada.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-ex52-execution-advice-trade-partial-novation-C02-00.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-ex53-execution-advice-trade-partial-novation-correction-C02-10.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-new-alpha-trade-CFTC-SEC-and-canada.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-new-beta-trade-CFTC-SEC-and-canada.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-new-trade-CFTC-SEC-and-canada.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-new-trade-CFTC-clearing.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-package-price.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-package-spread.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-partial-termination-xccy-swap.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-partial-termination-xccy.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-partial-termination.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-13-incomplete-processes-execution-advice/msg-ex68-execution-advice-warrant.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-13-processes-execution-advice/msg-ex52-execution-advice-trade-partial-novation-C02-00.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-13-processes-execution-advice/msg-ex53-execution-advice-trade-partial-novation-correction-C02-10.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-13-processes-execution-advice/msg-ex59-execution-advice-trade-amendment-F02-00.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-13-processes-execution-advice/msg-ex60-execution-advice-trade-amendment-correction-F02-10.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-13-processes-execution-advice/msg-ex70-execution-advice-commodity-swap-classification-termination-esma-emir-refit.json
…PR review process
…reementAmendments' into adria_635b9f93d2c223867fe2e1f-AgreementAmendments_UpdExp # Conflicts: # rosetta-source/src/main/resources/functions/business-event/allocation/allocation-func-output.json # rosetta-source/src/main/resources/functions/business-event/clearing/clearing-func-output.json # rosetta-source/src/main/resources/functions/business-event/compression/compression-func-output.json # rosetta-source/src/main/resources/functions/business-event/contract-formation/contract-formation-fra-func-output.json # rosetta-source/src/main/resources/functions/business-event/contract-formation/contract-formation-fx-forward-func-output.json # rosetta-source/src/main/resources/functions/business-event/contract-formation/contract-formation-ois-swap-func-output.json # rosetta-source/src/main/resources/functions/business-event/contract-formation/contract-formation-swaption-func-output.json # rosetta-source/src/main/resources/functions/business-event/exercise/exercise-cancellable-option-func-output.json # rosetta-source/src/main/resources/functions/business-event/exercise/exercise-cash-settled-func-output.json # rosetta-source/src/main/resources/functions/business-event/exercise/exercise-partial-exercise-func-output.json # rosetta-source/src/main/resources/functions/business-event/exercise/exercise-swaption-full-physical-func-output.json # rosetta-source/src/main/resources/functions/business-event/index-transition/index-transition-vanilla-swap-func-output.json # rosetta-source/src/main/resources/functions/business-event/index-transition/index-transition-xccy-swap-func-output.json # rosetta-source/src/main/resources/functions/business-event/novation/full-novation-func-output.json # rosetta-source/src/main/resources/functions/business-event/novation/partial-novation-func-output.json # rosetta-source/src/main/resources/functions/business-event/stock-split/stock-split-equity-swap-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-cleared-alpha-trade-CFTC-SEC-and-canada-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-ex52-execution-advice-trade-partial-novation-C02-00-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-ex53-execution-advice-trade-partial-novation-correction-C02-10-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-new-alpha-trade-CFTC-SEC-and-canada-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-new-beta-trade-CFTC-SEC-and-canada-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-new-trade-CFTC-SEC-and-canada-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-new-trade-CFTC-clearing-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-partial-termination-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-partial-termination-xccy-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-partial-termination-xccy-swap-func-output.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-incomplete-processes/msg-ex59-execution-advice-trade-amendment-F02-00.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-incomplete-processes/msg-ex60-execution-advice-trade-amendment-correction-F02-10.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-01-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-02-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-03-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-04-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-05-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-06-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-07-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-07-Submission-2.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-07-Submission-3.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-08-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-09-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-10-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-11-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-12-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-12-Submission-2.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-cleared-alpha-trade-CFTC-SEC-and-canada.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-ex52-execution-advice-trade-partial-novation-C02-00.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-ex53-execution-advice-trade-partial-novation-correction-C02-10.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-new-alpha-trade-CFTC-SEC-and-canada.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-new-beta-trade-CFTC-SEC-and-canada.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-new-trade-CFTC-SEC-and-canada.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-new-trade-CFTC-clearing.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-package-price.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-package-spread.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-partial-termination-xccy-swap.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-partial-termination-xccy.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-partial-termination.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-13-incomplete-processes-execution-advice/msg-ex68-execution-advice-warrant.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-13-processes-execution-advice/msg-ex52-execution-advice-trade-partial-novation-C02-00.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-13-processes-execution-advice/msg-ex53-execution-advice-trade-partial-novation-correction-C02-10.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-13-processes-execution-advice/msg-ex59-execution-advice-trade-amendment-F02-00.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-13-processes-execution-advice/msg-ex60-execution-advice-trade-amendment-correction-F02-10.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-13-processes-execution-advice/msg-ex70-execution-advice-commodity-swap-classification-termination-esma-emir-refit.json # rosetta-source/src/main/rosetta/event-common-func.rosetta # rosetta-source/src/main/rosetta/event-common-type.rosetta
…3867fe2e1f-AgreementAmendments_UpdExp
…reementAmendments_UpdExp' into adria_635b9f93d2c223867fe2e1f-AgreementAmendments_UpdExp # Conflicts: # rosetta-source/src/main/resources/functions/business-event/allocation/allocation-func-output.json # rosetta-source/src/main/resources/functions/business-event/clearing/clearing-func-output.json # rosetta-source/src/main/resources/functions/business-event/compression/compression-func-output.json # rosetta-source/src/main/resources/functions/business-event/contract-formation/contract-formation-fra-func-output.json # rosetta-source/src/main/resources/functions/business-event/contract-formation/contract-formation-fx-forward-func-output.json # rosetta-source/src/main/resources/functions/business-event/contract-formation/contract-formation-ois-swap-func-output.json # rosetta-source/src/main/resources/functions/business-event/contract-formation/contract-formation-swaption-func-output.json # rosetta-source/src/main/resources/functions/business-event/exercise/exercise-cancellable-option-func-output.json # rosetta-source/src/main/resources/functions/business-event/exercise/exercise-cash-settled-func-output.json # rosetta-source/src/main/resources/functions/business-event/exercise/exercise-partial-exercise-func-output.json # rosetta-source/src/main/resources/functions/business-event/exercise/exercise-swaption-full-physical-func-output.json # rosetta-source/src/main/resources/functions/business-event/index-transition/index-transition-vanilla-swap-func-output.json # rosetta-source/src/main/resources/functions/business-event/index-transition/index-transition-xccy-swap-func-output.json # rosetta-source/src/main/resources/functions/business-event/novation/full-novation-func-output.json # rosetta-source/src/main/resources/functions/business-event/novation/partial-novation-func-output.json # rosetta-source/src/main/resources/functions/business-event/stock-split/stock-split-equity-swap-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-cleared-alpha-trade-CFTC-SEC-and-canada-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-ex52-execution-advice-trade-partial-novation-C02-00-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-ex53-execution-advice-trade-partial-novation-correction-C02-10-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-new-alpha-trade-CFTC-SEC-and-canada-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-new-beta-trade-CFTC-SEC-and-canada-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-new-trade-CFTC-SEC-and-canada-func-output.json # rosetta-source/src/main/resources/functions/fpml-5-10/processes/msg-new-trade-CFTC-clearing-func-output.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-incomplete-processes/msg-ex59-execution-advice-trade-amendment-F02-00.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-incomplete-processes/msg-ex60-execution-advice-trade-amendment-correction-F02-10.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-01-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-02-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-03-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-04-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-05-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-06-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-07-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-07-Submission-2.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-07-Submission-3.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-08-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-09-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-10-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-11-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-12-Submission-1.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-native-cdm-events/Example-12-Submission-2.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-cleared-alpha-trade-CFTC-SEC-and-canada.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-ex52-execution-advice-trade-partial-novation-C02-00.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-ex53-execution-advice-trade-partial-novation-correction-C02-10.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-new-alpha-trade-CFTC-SEC-and-canada.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-new-beta-trade-CFTC-SEC-and-canada.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-new-trade-CFTC-SEC-and-canada.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-new-trade-CFTC-clearing.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-package-price.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-10-processes/msg-package-spread.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-13-incomplete-processes-execution-advice/msg-ex68-execution-advice-warrant.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-13-processes-execution-advice/msg-ex52-execution-advice-trade-partial-novation-C02-00.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-13-processes-execution-advice/msg-ex53-execution-advice-trade-partial-novation-correction-C02-10.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-13-processes-execution-advice/msg-ex59-execution-advice-trade-amendment-F02-00.json # rosetta-source/src/main/resources/ingest/output/fpml-confirmation-to-workflow-step/fpml-5-13-processes-execution-advice/msg-ex60-execution-advice-trade-amendment-correction-F02-10.json
| observation ObservationInstruction (0..1) <"Specifies inputs needed to process an observation."> | ||
| valuation ValuationInstruction (0..1) <"Specifies inputs needed to process an update of a valuation."> | ||
|
|
||
| type EventBase: <"Specifies a set of common instructions that can be extended through event type specific instructions."> |
There was a problem hiding this comment.
We agreed this morning to remove EventBase. Please add the attribute here back into the types
There was a problem hiding this comment.
Updated as requested and EventBase removed and code reset to previous position
| imCSAPrimitiveInstruction IMCSAPrimitiveInstruction (0..1) <"A Primitive Instruction set for a VM CSA Agreement."> | ||
| legacyCSAPrimitiveInstruction LegacyCSAPrimitiveInstruction (0..1) <"A Primitive Instruction set for a VM CSA Agreement."> | ||
| partyChange PartyChangeInstruction (0..1) <"A primitive Instruction set to capture any Party changes applicable to the agreement."> | ||
| beforeAgreement LegalAgreement (0..1) <"Specifies the Legal Agreement that will be acted upon by the primitive event function."> |
There was a problem hiding this comment.
This can just be called before. Agreement is implied
There was a problem hiding this comment.
Amended as requested
| steps WorkflowStep (1..*) | ||
|
|
||
| type EventInstruction: <"Specifies instructions to create a BusinessEvent."> | ||
| type EventInstruction extends EventBase: <"Specifies instructions to create a BusinessEvent."> |
There was a problem hiding this comment.
As discussed this morning - this extension can be removed and teh types eventDate and effectiveDate reinstated
There was a problem hiding this comment.
Amended as requested
…3867fe2e1f-AgreementAmendments_UpdExp
…and also restructure the Agr...
…reementAmendments' into adria_635b9f93d2c223867fe2e1f-AgreementAmendments_UpdExp # Conflicts: # rosetta-source/src/main/rosetta/event-common-func.rosetta # rosetta-source/src/main/rosetta/event-common-type.rosetta # rosetta-source/src/main/rosetta/legaldocumentation-common-enum.rosetta # rosetta-source/src/main/rosetta/legaldocumentation-common-type.rosetta
chrisisla
left a comment
There was a problem hiding this comment.
Comments at this stage but this will need a further review to iron out the event processing. Very minor point but there are also a few typos and missing punctuation marks (full stops) in the comments.
| AmendedTerms <"Represents an amendment to terms which apply to agreement which the amendment related to."> | ||
| AmendedParties <"Represents a change to the contractual parties to an agreement through the process of addition or deletion."> | ||
| Termination <"Represents a change that results in the related agreement being terminated."> | ||
| AmendandRestate <"Represents a change in terms and or parties where the agreement is required to be restated in its entirety."> |
There was a problem hiding this comment.
"AmendAndRestate" would be better please
| Terminated <"The contract has been subject of an early termination event."> | ||
|
|
||
| enum AgreementEventIntentEnum: <"The enumerated values to specify the intent of the agreement event."> | ||
| AmendedTerms <"Represents an amendment to terms which apply to agreement which the amendment related to."> |
There was a problem hiding this comment.
Not really sure what this comment is saying...?
|
|
||
| func Create_AgreementEvent: <"Creates a agreement event from instructions containing primitive instructions covering term or party changes associated with an amendment agreement"> | ||
| [creation AgreementEvent] | ||
| inputs: |
There was a problem hiding this comment.
Think this needs an intent as well.
intent is currently mandatory in AgreementEventInstruction but I think it should be optional
| then True | ||
| else False | ||
|
|
||
| func Create_AgreementEvent: <"Creates a agreement event from instructions containing primitive instructions covering term or party changes associated with an amendment agreement"> |
There was a problem hiding this comment.
I don't we need to specify the the type of events or amendments here, maybe just keep it generic: "Creates an agreement event from primitive instructions and their associated event and effective dates." maybe?
|
|
||
| BusinessEvent BusinessEvent (0..1) <"A business event function should take as its inputs the after state of previous business event or in case where the is no before state, all of the inputs required to produce the outcome BusinessEvent."> | ||
| WorkflowStep WorkflowStep (0..1) <"Create a proposed, accepted or rejected WorkflowStep with details about the message, identifiers, event timestamps, parties and accounts involved in the step and allow the action to be set to New, Correct or Cancel."> | ||
| AgreementEvent AgreementEvent (0..1) <"A Agreement event function should take as its inputs the after sate of the previous agreement event or in the case where there is no before state, all of the inputs required to produce the agreement event."> |
There was a problem hiding this comment.
"An Agreement..."
"... the after state..."
| func Create_AgreementPartyChange: <"Specifies the inputs, outputs and constraints when calculating the after agreementState based on a change to the parties."> | ||
| inputs: | ||
| partyChange PartyChangeInstruction (0..1) <"Instructions to be used as an input to the function when identifying party changes to the agreement."> | ||
| beforeAgreement LegalAgreement (1..1) <"States the current agreement parties to be amnended."> |
There was a problem hiding this comment.
This can be before as the fact it is an agreement is implied by the name of the function.
| partyChange PartyChangeInstruction (0..1) <"Instructions to be used as an input to the function when identifying party changes to the agreement."> | ||
| beforeAgreement LegalAgreement (1..1) <"States the current agreement parties to be amnended."> | ||
| output: | ||
| afterAgreement LegalAgreement (1..1) <"States the agreement parties after the amendment change has been processed"> |
There was a problem hiding this comment.
And this can just be after
| func Create_IMCSATermsChange: <"Specifies the inputs, outputs and constraints when calculating the after agreementState based on a change in terms due to an amendment agreement."> | ||
| inputs: | ||
| imCSATermsChange CreditSupportAgreementInitialMarginElections (0..1) <"Instructions to be used as an input to the function when identifying Agreement Term changes."> | ||
| beforeAgreement LegalAgreement (1..1) <"States the current Agreement terms to be amended."> |
| func Create_VMCSATermsChange: <"Specifies the inputs, outputs and constraints when calculating the after agreementState based on a change in terms due to an amendment agreement."> | ||
| inputs: | ||
| vmCSATermsChange CreditSupportAgreementVariationMarginElections (0..1) <"Instructions to be used as an input to the function when identifying Agreement Term changes."> | ||
| beforeAgreement LegalAgreement (1..1) <"States the current Agreement terms to be amended."> |
| alias agtPartyChange: <"Create agreementpartychange if agreementPartyChangeInstruction exists, if not, then before must exist."> | ||
| if partyChange is absent then beforeAgreement | ||
|
|
||
| func Create_VMCSATermsChange: <"Specifies the inputs, outputs and constraints when calculating the after agreementState based on a change in terms due to an amendment agreement."> |
There was a problem hiding this comment.
None of these Terms Change functions actually do anything, the after will always be empty. Is that intentional at this stage?
| eventDate date (1..1) <"Specifies the date of the agreement event."> | ||
| effectiveDate date (1..1) <"Specifies the effective date of the agreement event."> | ||
| instruction AgreementInstruction (1..*) <"Specifies the instruction associated with the agreement event triggered by an amendment."> | ||
| intent AgreementEventIntentEnum (1..*) <"Specifies the purposes for which the amendment agreement exists and how it will impact the agreement to which it applies."> |
There was a problem hiding this comment.
Should the cardinality be mandatory for all of these? Or should they be optional?
Update Expectations for #4626