Skip to content

Commit

Permalink
Merge pull request finos#3386 from rosetta-models/oscar.twomeySTORY-3…
Browse files Browse the repository at this point in the history
…633-release

Oscar Twomey Moved ClosedStateEnum, ClosedState to event.common - Release
  • Loading branch information
lolabeis authored Feb 10, 2025
2 parents d452691 + 894acf2 commit abf5187
Show file tree
Hide file tree
Showing 6 changed files with 43 additions and 18 deletions.
28 changes: 27 additions & 1 deletion RELEASE.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,29 @@
# *CDM - A CDM user can access a contract's closed status component*

_Background_

The ISDA Foundations project is a model extension built on top of the CDM that contains legal IP (contained in legal documentation references) only available to ISDA members. Additions or updates to the ISDA Foundations project can cause it to go out of sync with the CDM.

The issue [#3348](https://github.com/finos/common-domain-model/issues/3348) proposes to migrate the ISDA Foundations project to the CDM, without the ISDA legal documentation IP

Preparation must be first be done in the CDM to synchronise it with the ISDA Foundations project and simplify the migration of any ISDA Foundations components.

_What is being released?_

As part of the preparation for the migration of any ISDA Foundations components to the CDM, this release allows CDM users to access a contract’s closed status component in the event namespace.

1. Moved `ClosedStateEnum` to `event.common.enum`
2. Moved `ClosedState` to `event.common.type`


_Backward-incompatible changes_

None.

_Review Directions_

The change can be reviewed in PR: [#3386](https://github.com/finos/common-domain-model/pull/3386).

# *CDM - Addition of changedCriteria to outputSpecification when using the CloneEligibleCollateralWithChangedTreatment function*

_Background_
Expand Down Expand Up @@ -52,4 +78,4 @@ This release fixes usage of GitHub Actions APIs that have been deprecated, as pe

_Review directions_

The changes can be reviewed in PR: [#3379](https://github.com/finos/common-domain-model/pull/3379)
The changes can be reviewed in PR: [#3379](https://github.com/finos/common-domain-model/pull/3379)
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@
import cdm.event.workflow.EventTimestampQualificationEnum;
import cdm.event.workflow.WorkflowStep;
import cdm.event.workflow.functions.Create_AcceptedWorkflowStepFromInstruction;
import cdm.legaldocumentation.common.ClosedStateEnum;
import cdm.observable.asset.PriceQuantity;
import com.google.common.collect.Lists;
import com.google.inject.Inject;
Expand Down
9 changes: 9 additions & 0 deletions rosetta-source/src/main/rosetta/event-common-enum.rosetta
Original file line number Diff line number Diff line change
Expand Up @@ -164,3 +164,12 @@ enum ValuationSourceEnum: <"Source for the valuation of the transaction by the v
enum PriceTimingEnum:
ClosingPrice <"The last price anyone paid for a share of a product during the business hours of the exchange where the product is traded on a business day.">
OpeningPrice <"The first price anyone paid for a share of a product during the business hours of the exchange where the product is traded on a business day.">

enum ClosedStateEnum: <"The enumerated values to specify what led to the contract or execution closure.">
Allocated <"The execution or contract has been allocated.">
Cancelled <"The execution or contract has been cancelled.">
Exercised <"The (option) contract has been exercised.">
Expired <"The (option) contract has expired without being exercised.">
Matured <"The contract has reached its contractual termination date.">
Novated <"The contract has been novated. This state applies to the stepped-out contract component of the novation event.">
Terminated <"The contract has been subject of an early termination event.">
7 changes: 7 additions & 0 deletions rosetta-source/src/main/rosetta/event-common-type.rosetta
Original file line number Diff line number Diff line change
Expand Up @@ -679,3 +679,10 @@ type MarginCallResponse extends MarginCallBase: <"Represents common attributes r
marginCallResponseAction MarginCallResponseAction (1..*) <"Specifies the margin call action details, including collateral to be moved and direction.">
marginResponseType MarginCallResponseTypeEnum (1..1) <"Indicates the response type, such as, is the margin call response a 'full' 'part' agreement or 'dispute'.">
agreedAmountBaseCurrency Money (1..1) <"Indicates the amount that posting entity agrees to remit in response to margin call (in base currency).">

type ClosedState: <" A class to qualify the closed state of an execution or a contract through the combination or a state (e.g. terminated, novated) and a set of dates: activity date, effective date and, when relevant, last payment date.">

state ClosedStateEnum (1..1) <"The qualification of what gave way to the contract or execution closure, e.g. allocation, termination, ...">
activityDate date (1..1) <"The activity date on which the closing state took place, i.e. either the event date of the closing event (e.g. option exercise, contract early termination) or the contractual termination date.">
effectiveDate date (0..1) <"The date on which the closing event contractually takes effect, when different from the activity date. When an explicit event effective date attribute is associated with the closing event, it will be that date. In the case of a cancellation event, it will be the date on which the cancelled event took place.">
lastPaymentDate date (0..1) <"The date associated with the last payment in relation to the artefact (e.g. contract) to which this closed state applies. As an example, in the case of an early termination event, it would be the settlement date of the associated fee, if applicable.">
Original file line number Diff line number Diff line change
Expand Up @@ -280,12 +280,3 @@ enum TerminationCurrencyConditionEnum:
FreelyAvailable <"A currency that is freely available.">
PaymentsDueAndFreelyAvailable <"A currency in which payments would be due under one or more Transactions and that is freely available.">
Specified <"Termination Currency Conditions are specified.">

enum ClosedStateEnum: <"The enumerated values to specify what led to the contract or execution closure.">
Allocated <"The execution or contract has been allocated.">
Cancelled <"The execution or contract has been cancelled.">
Exercised <"The (option) contract has been exercised.">
Expired <"The (option) contract has expired without being exercised.">
Matured <"The contract has reached its contractual termination date.">
Novated <"The contract has been novated. This state applies to the stepped-out contract component of the novation event.">
Terminated <"The contract has been subject of an early termination event.">
Original file line number Diff line number Diff line change
Expand Up @@ -178,10 +178,3 @@ type OtherAgreementTerms: <"A class to specify a related legal agreement. For ex

condition LegalDocumentSpecified: <"A data rule to enforce that the related legal agreement should be referenced if it is deemed as specified as part of the boolean attribute.">
if isSpecified = True then legalDocument exists

type ClosedState: <" A class to qualify the closed state of an execution or a contract through the combination or a state (e.g. terminated, novated) and a set of dates: activity date, effective date and, when relevant, last payment date.">

state ClosedStateEnum (1..1) <"The qualification of what gave way to the contract or execution closure, e.g. allocation, termination, ...">
activityDate date (1..1) <"The activity date on which the closing state took place, i.e. either the event date of the closing event (e.g. option exercise, contract early termination) or the contractual termination date.">
effectiveDate date (0..1) <"The date on which the closing event contractually takes effect, when different from the activity date. When an explicit event effective date attribute is associated with the closing event, it will be that date. In the case of a cancellation event, it will be the date on which the cancelled event took place.">
lastPaymentDate date (0..1) <"The date associated with the last payment in relation to the artefact (e.g. contract) to which this closed state applies. As an example, in the case of an early termination event, it would be the settlement date of the associated fee, if applicable.">

0 comments on commit abf5187

Please sign in to comment.