Class: SettlementDate
A data defining the settlement date(s) for cash or physical settlement as either a set of explicit dates, together with applicable adjustments, or as a date relative to some other (anchor) date, or as any date in a range of contiguous business days. This data type provides a level of abstraction on top of the different legacy methods used to specify a settlement / payment date, which vary across product types, asset classes and delivery types.
URI: common_domain_model:SettlementDate
classDiagram
class SettlementDate
click SettlementDate href "../SettlementDate/"
SettlementDate : adjustableDates
SettlementDate --> "0..1" AdjustableDates : adjustableDates
click AdjustableDates href "../AdjustableDates/"
SettlementDate : adjustableOrRelativeDate
SettlementDate --> "0..1" AdjustableOrAdjustedOrRelativeDate : adjustableOrRelativeDate
click AdjustableOrAdjustedOrRelativeDate href "../AdjustableOrAdjustedOrRelativeDate/"
SettlementDate : businessDateRange
SettlementDate --> "0..1" BusinessDateRange : businessDateRange
click BusinessDateRange href "../BusinessDateRange/"
SettlementDate : cashSettlementBusinessDays
SettlementDate : paymentDelay
SettlementDate : valueDate
| Name | Cardinality and Range | Description | Inheritance |
|---|---|---|---|
| adjustableOrRelativeDate | 0..1 AdjustableOrAdjustedOrRelativeDate |
A single settlement date subject to adjustment or specified as relative to an… | direct |
| valueDate | 0..1 date |
The settlement date for a forward settling product | direct |
| adjustableDates | 0..1 AdjustableDates |
A series of dates that shall be subject to adjustment if they would otherwise… | direct |
| businessDateRange | 0..1 BusinessDateRange |
A range of contiguous business days | direct |
| cashSettlementBusinessDays | 0..1 Integer |
The number of business days used in the determination of the cash settlement … | direct |
| paymentDelay | 0..1 Boolean |
Applicable to CDS on MBS to specify whether payment delays are applicable to … | direct |
Expressions & Logic
All Of
Section titled “All Of”The class must satisfy all of:
- AnonymousClassExpression({ ‘description’: (’DateChoice: Settlement date must be specified either throught the ’ “‘settlementDate’ or ‘valueDate’ attribute. This is a temporary work-around “ “until such time when we can retire the ‘valueDate’ attribute.”), ‘exactly_one_of’: [AnonymousClassExpression({ ‘slot_conditions’: {‘adjustableOrRelativeDate’: SlotDefinition({‘name’: ‘adjustableOrRelativeDate’, ‘value_presence’: PresenceEnum(text=‘PRESENT’)})} }), AnonymousClassExpression({ ‘slot_conditions’: {‘valueDate’: SlotDefinition({‘name’: ‘valueDate’, ‘value_presence’: PresenceEnum(text=‘PRESENT’)})} }), AnonymousClassExpression({ ‘slot_conditions’: {‘adjustableDates’: SlotDefinition({‘name’: ‘adjustableDates’, ‘value_presence’: PresenceEnum(text=‘PRESENT’)})} }), AnonymousClassExpression({ ‘slot_conditions’: {‘businessDateRange’: SlotDefinition({‘name’: ‘businessDateRange’, ‘value_presence’: PresenceEnum(text=‘PRESENT’)})} }), AnonymousClassExpression({ ‘all_of’: [AnonymousClassExpression({ ‘slot_conditions’: {‘adjustableOrRelativeDate’: SlotDefinition({‘name’: ‘adjustableOrRelativeDate’, ‘value_presence’: PresenceEnum(text=‘ABSENT’)})} }), AnonymousClassExpression({ ‘slot_conditions’: {‘valueDate’: SlotDefinition({‘name’: ‘valueDate’, ‘value_presence’: PresenceEnum(text=‘ABSENT’)})} }), AnonymousClassExpression({ ‘slot_conditions’: {‘adjustableDates’: SlotDefinition({‘name’: ‘adjustableDates’, ‘value_presence’: PresenceEnum(text=‘ABSENT’)})} }), AnonymousClassExpression({ ‘slot_conditions’: {‘businessDateRange’: SlotDefinition({‘name’: ‘businessDateRange’, ‘value_presence’: PresenceEnum(text=‘ABSENT’)})} })] })] })
Usages
Section titled “Usages”| used by | used in | type | used |
|---|---|---|---|
| SettlementBase | settlementDate | range | SettlementDate |
| SettlementTerms | settlementDate | range | SettlementDate |
| Rule Applied | Preconditions | Postconditions | Elseconditions |
|---|---|---|---|
| slot_conditions | {'cashSettlementBusinessDays': {'value_presence': 'PRESENT'}} |
{'cashSettlementBusinessDays': {'minimum_value': 0, 'value_presence': 'PRESENT'}} |
|
| any_of | [{'slot_conditions': {'adjustableOrRelativeDate': {'value_presence': 'PRESENT'}}}, {'slot_conditions': {'valueDate': {'value_presence': 'PRESENT'}}}, {'slot_conditions': {'adjustableDates': {'value_presence': 'PRESENT'}}}, {'slot_conditions': {'businessDateRange': {'value_presence': 'PRESENT'}}}] |
Identifier and Mapping Information
Section titled “Identifier and Mapping Information”Annotations
Section titled “Annotations”| property | value |
|---|---|
| rosetta_metadata | key |
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:SettlementDate |
| native | common_domain_model:SettlementDate |
LinkML Source
Section titled “LinkML Source”Direct
Section titled “Direct”name: SettlementDateannotations: rosetta_metadata: tag: rosetta_metadata value: keydescription: A data defining the settlement date(s) for cash or physical settlement as either a set of explicit dates, together with applicable adjustments, or as a date relative to some other (anchor) date, or as any date in a range of contiguous business days. This data type provides a level of abstraction on top of the different legacy methods used to specify a settlement / payment date, which vary across product types, asset classes and delivery types.from_schema: https://w3id.org/lmodel/common-domain-modelattributes: adjustableOrRelativeDate: name: adjustableOrRelativeDate description: A single settlement date subject to adjustment or specified as relative to another date (e.g. the trade date). This attribute was formerly part of 'SettlementTerms', which is now being harmonised to include a common 'SettlementDate', as inherited from 'SettlementBase'. from_schema: https://w3id.org/lmodel/common-domain-model/cdm_product_common_settlement rank: 1000 domain_of: - SettlementDate range: AdjustableOrAdjustedOrRelativeDate valueDate: name: valueDate description: The settlement date for a forward settling product. For Foreign Exchange contracts, this represents a common settlement date between both currency legs. To specify different settlement dates for each currency leg, see the ForeignExchange class. This attribute was formerly part of 'SettlementTerms', which is now being harmonised to include a common 'SettlementDate', as inherited from 'SettlementBase'. from_schema: https://w3id.org/lmodel/common-domain-model/cdm_product_common_settlement domain_of: - FutureValueAmount - SettlementDate range: date adjustableDates: name: adjustableDates description: A series of dates that shall be subject to adjustment if they would otherwise fall on a day that is not a business day in the specified business centers, together with the convention for adjusting the date. This attributes was formerly part of 'CashSettlementPaymentDate' as included into 'OptionCashSettlement' (which is now merged into a unique 'CashSettlementTerms' data type. from_schema: https://w3id.org/lmodel/common-domain-model/cdm_product_common_settlement domain_of: - AdjustableOrRelativeDates - AdjustableRelativeOrPeriodicDates - SettlementDate range: AdjustableDates businessDateRange: name: businessDateRange description: A range of contiguous business days. This attribute is meant to be merged with the 'settlementDate' at some future point once we refactor 'Date' to use a single complex type across the model. This attributes was formerly part of 'CashSettlementPaymentDate', as included into 'OptionCashSettlement' (which is now merged into a unique 'CashSettlementTerms' data type. from_schema: https://w3id.org/lmodel/common-domain-model/cdm_product_common_settlement rank: 1000 domain_of: - SettlementDate range: BusinessDateRange cashSettlementBusinessDays: name: cashSettlementBusinessDays description: 'The number of business days used in the determination of the cash settlement payment date. If a cash settlement amount is specified, the cash settlement payment date will be this number of business days following the calculation of the final price. If a cash settlement amount is not specified, the cash settlement payment date will be this number of business days after all conditions to settlement are satisfied. ISDA 2003 Term: Cash Settlement Date. This attribute was formerly part of ''CashSettlementTerms'' as used for credit event settlement, which now includes a common ''SettlementDate'' attribute.' from_schema: https://w3id.org/lmodel/common-domain-model/cdm_product_common_settlement rank: 1000 domain_of: - SettlementDate range: integer paymentDelay: name: paymentDelay description: Applicable to CDS on MBS to specify whether payment delays are applicable to the fixed Amount. RMBS typically have a payment delay of 5 days between the coupon date of the reference obligation and the payment date of the synthetic swap. CMBS do not, on the other hand, with both payment dates being on the 25th of each month. from_schema: https://w3id.org/lmodel/common-domain-model/cdm_product_common_settlement domain_of: - InterestRatePayout - SettlementDate range: booleanrules:- preconditions: slot_conditions: cashSettlementBusinessDays: name: cashSettlementBusinessDays value_presence: PRESENT postconditions: slot_conditions: cashSettlementBusinessDays: name: cashSettlementBusinessDays minimum_value: 0 value_presence: PRESENT elseconditions: any_of: - slot_conditions: adjustableOrRelativeDate: name: adjustableOrRelativeDate value_presence: PRESENT - slot_conditions: valueDate: name: valueDate value_presence: PRESENT - slot_conditions: adjustableDates: name: adjustableDates value_presence: PRESENT - slot_conditions: businessDateRange: name: businessDateRange value_presence: PRESENT description: 'BusinessDays: FpML specifies cashSettlementBusinessDays as a nonNegativeInteger. If cashSettlementBusinessDays is not specified, then another settlement date method must be specified.'all_of:- description: 'DateChoice: Settlement date must be specified either throught the ''settlementDate'' or ''valueDate'' attribute. This is a temporary work-around until such time when we can retire the ''valueDate'' attribute.' exactly_one_of: - slot_conditions: adjustableOrRelativeDate: name: adjustableOrRelativeDate value_presence: PRESENT - slot_conditions: valueDate: name: valueDate value_presence: PRESENT - slot_conditions: adjustableDates: name: adjustableDates value_presence: PRESENT - slot_conditions: businessDateRange: name: businessDateRange value_presence: PRESENT - all_of: - slot_conditions: adjustableOrRelativeDate: name: adjustableOrRelativeDate value_presence: ABSENT - slot_conditions: valueDate: name: valueDate value_presence: ABSENT - slot_conditions: adjustableDates: name: adjustableDates value_presence: ABSENT - slot_conditions: businessDateRange: name: businessDateRange value_presence: ABSENTInduced
Section titled “Induced”name: SettlementDateannotations: rosetta_metadata: tag: rosetta_metadata value: keydescription: A data defining the settlement date(s) for cash or physical settlement as either a set of explicit dates, together with applicable adjustments, or as a date relative to some other (anchor) date, or as any date in a range of contiguous business days. This data type provides a level of abstraction on top of the different legacy methods used to specify a settlement / payment date, which vary across product types, asset classes and delivery types.from_schema: https://w3id.org/lmodel/common-domain-modelattributes: adjustableOrRelativeDate: name: adjustableOrRelativeDate description: A single settlement date subject to adjustment or specified as relative to another date (e.g. the trade date). This attribute was formerly part of 'SettlementTerms', which is now being harmonised to include a common 'SettlementDate', as inherited from 'SettlementBase'. from_schema: https://w3id.org/lmodel/common-domain-model/cdm_product_common_settlement rank: 1000 owner: SettlementDate domain_of: - SettlementDate range: AdjustableOrAdjustedOrRelativeDate valueDate: name: valueDate description: The settlement date for a forward settling product. For Foreign Exchange contracts, this represents a common settlement date between both currency legs. To specify different settlement dates for each currency leg, see the ForeignExchange class. This attribute was formerly part of 'SettlementTerms', which is now being harmonised to include a common 'SettlementDate', as inherited from 'SettlementBase'. from_schema: https://w3id.org/lmodel/common-domain-model/cdm_product_common_settlement owner: SettlementDate domain_of: - FutureValueAmount - SettlementDate range: date adjustableDates: name: adjustableDates description: A series of dates that shall be subject to adjustment if they would otherwise fall on a day that is not a business day in the specified business centers, together with the convention for adjusting the date. This attributes was formerly part of 'CashSettlementPaymentDate' as included into 'OptionCashSettlement' (which is now merged into a unique 'CashSettlementTerms' data type. from_schema: https://w3id.org/lmodel/common-domain-model/cdm_product_common_settlement owner: SettlementDate domain_of: - AdjustableOrRelativeDates - AdjustableRelativeOrPeriodicDates - SettlementDate range: AdjustableDates businessDateRange: name: businessDateRange description: A range of contiguous business days. This attribute is meant to be merged with the 'settlementDate' at some future point once we refactor 'Date' to use a single complex type across the model. This attributes was formerly part of 'CashSettlementPaymentDate', as included into 'OptionCashSettlement' (which is now merged into a unique 'CashSettlementTerms' data type. from_schema: https://w3id.org/lmodel/common-domain-model/cdm_product_common_settlement rank: 1000 owner: SettlementDate domain_of: - SettlementDate range: BusinessDateRange cashSettlementBusinessDays: name: cashSettlementBusinessDays description: 'The number of business days used in the determination of the cash settlement payment date. If a cash settlement amount is specified, the cash settlement payment date will be this number of business days following the calculation of the final price. If a cash settlement amount is not specified, the cash settlement payment date will be this number of business days after all conditions to settlement are satisfied. ISDA 2003 Term: Cash Settlement Date. This attribute was formerly part of ''CashSettlementTerms'' as used for credit event settlement, which now includes a common ''SettlementDate'' attribute.' from_schema: https://w3id.org/lmodel/common-domain-model/cdm_product_common_settlement rank: 1000 owner: SettlementDate domain_of: - SettlementDate range: integer paymentDelay: name: paymentDelay description: Applicable to CDS on MBS to specify whether payment delays are applicable to the fixed Amount. RMBS typically have a payment delay of 5 days between the coupon date of the reference obligation and the payment date of the synthetic swap. CMBS do not, on the other hand, with both payment dates being on the 25th of each month. from_schema: https://w3id.org/lmodel/common-domain-model/cdm_product_common_settlement owner: SettlementDate domain_of: - InterestRatePayout - SettlementDate range: booleanrules:- preconditions: slot_conditions: cashSettlementBusinessDays: name: cashSettlementBusinessDays value_presence: PRESENT postconditions: slot_conditions: cashSettlementBusinessDays: name: cashSettlementBusinessDays minimum_value: 0 value_presence: PRESENT elseconditions: any_of: - slot_conditions: adjustableOrRelativeDate: name: adjustableOrRelativeDate value_presence: PRESENT - slot_conditions: valueDate: name: valueDate value_presence: PRESENT - slot_conditions: adjustableDates: name: adjustableDates value_presence: PRESENT - slot_conditions: businessDateRange: name: businessDateRange value_presence: PRESENT description: 'BusinessDays: FpML specifies cashSettlementBusinessDays as a nonNegativeInteger. If cashSettlementBusinessDays is not specified, then another settlement date method must be specified.'all_of:- description: 'DateChoice: Settlement date must be specified either throught the ''settlementDate'' or ''valueDate'' attribute. This is a temporary work-around until such time when we can retire the ''valueDate'' attribute.' exactly_one_of: - slot_conditions: adjustableOrRelativeDate: name: adjustableOrRelativeDate value_presence: PRESENT - slot_conditions: valueDate: name: valueDate value_presence: PRESENT - slot_conditions: adjustableDates: name: adjustableDates value_presence: PRESENT - slot_conditions: businessDateRange: name: businessDateRange value_presence: PRESENT - all_of: - slot_conditions: adjustableOrRelativeDate: name: adjustableOrRelativeDate value_presence: ABSENT - slot_conditions: valueDate: name: valueDate value_presence: ABSENT - slot_conditions: adjustableDates: name: adjustableDates value_presence: ABSENT - slot_conditions: businessDateRange: name: businessDateRange value_presence: ABSENT