Class: CalculationPeriodDates
A data for: defining the parameters used to generate the calculation period dates schedule, including the specification of any initial or final stub calculation periods. A calculation period schedule consists of an optional initial stub calculation period, one or more regular calculation periods and an optional final stub calculation period. In the absence of any initial or final stub calculation periods, the regular part of the calculation period schedule is assumed to be between the effective date and the termination date. No implicit stubs are allowed, i.e. stubs must be explicitly specified using an appropriate combination of firstPeriodStartDate, firstRegularPeriodStartDate and lastRegularPeriodEndDate.
URI: common_domain_model:CalculationPeriodDates
classDiagram
class CalculationPeriodDates
click CalculationPeriodDates href "../CalculationPeriodDates/"
CalculationPeriodDates : calculationPeriodDatesAdjustments
CalculationPeriodDates --> "0..1" BusinessDayAdjustments : calculationPeriodDatesAdjustments
click BusinessDayAdjustments href "../BusinessDayAdjustments/"
CalculationPeriodDates : calculationPeriodFrequency
CalculationPeriodDates --> "0..1" CalculationPeriodFrequency : calculationPeriodFrequency
click CalculationPeriodFrequency href "../CalculationPeriodFrequency/"
CalculationPeriodDates : effectiveDate
CalculationPeriodDates --> "0..1" AdjustableOrRelativeDate : effectiveDate
click AdjustableOrRelativeDate href "../AdjustableOrRelativeDate/"
CalculationPeriodDates : firstCompoundingPeriodEndDate
CalculationPeriodDates : firstPeriodStartDate
CalculationPeriodDates --> "0..1" AdjustableOrRelativeDate : firstPeriodStartDate
click AdjustableOrRelativeDate href "../AdjustableOrRelativeDate/"
CalculationPeriodDates : firstRegularPeriodStartDate
CalculationPeriodDates : lastRegularPeriodEndDate
CalculationPeriodDates : stubPeriodType
CalculationPeriodDates --> "*" StubPeriodTypeEnum : stubPeriodType
click StubPeriodTypeEnum href "../StubPeriodTypeEnum/"
CalculationPeriodDates : terminationDate
CalculationPeriodDates --> "0..1" AdjustableOrRelativeDate : terminationDate
click AdjustableOrRelativeDate href "../AdjustableOrRelativeDate/"
Slots
| Name | Cardinality and Range | Description | Inheritance |
|---|---|---|---|
| effectiveDate | 0..1 AdjustableOrRelativeDate |
The first day of the terms of the trade | direct |
| terminationDate | 0..1 AdjustableOrRelativeDate |
The last day of the terms of the trade | direct |
| calculationPeriodDatesAdjustments | 0..1 BusinessDayAdjustments |
The specification of the business day convention and financial business cente... | direct |
| firstPeriodStartDate | 0..1 AdjustableOrRelativeDate |
The start date of the calculation period | direct |
| firstRegularPeriodStartDate | 0..1 date |
The start date of the regular part of the calculation period schedule | direct |
| firstCompoundingPeriodEndDate | 0..1 date |
The end date of the initial compounding period when compounding is applicable | direct |
| lastRegularPeriodEndDate | 0..1 date |
The end date of the regular part of the calculation period schedule | direct |
| stubPeriodType | * StubPeriodTypeEnum |
Method to allocate any irregular period remaining after regular periods have ... | direct |
| calculationPeriodFrequency | 0..1 CalculationPeriodFrequency |
The frequency at which calculation period end dates occur with the regular pa... | direct |
Usages
Rules
| Rule Applied | Preconditions | Postconditions | Elseconditions |
|---|---|---|---|
| slot_conditions | {'firstRegularPeriodStartDate': {'required': True}, 'lastRegularPeriodEndDate': {'required': True}} |
In Subsets
Comments
- Rosetta condition: FpML_ird_16 — if firstRegularPeriodStartDate exists then terminationDate -> adjustableDate -> unadjustedDate > firstRegularPeriodStartDate
- Rosetta condition: FpML_ird_17 — if lastRegularPeriodEndDate exists then terminationDate -> adjustableDate -> unadjustedDate > lastRegularPeriodEndDate
- Rosetta condition: FpML_ird_18 — if firstRegularPeriodStartDate exists and lastRegularPeriodEndDate exists then lastRegularPeriodEndDate > firstRegularPeriodStartDate
- Rosetta condition: FpML_ird_20 — if lastRegularPeriodEndDate exists then lastRegularPeriodEndDate > effectiveDate -> adjustableDate -> unadjustedDate
- Rosetta condition: FpML_ird_21 — if firstPeriodStartDate exists and effectiveDate exists then firstPeriodStartDate -> adjustableDate -> unadjustedDate < effectiveDate -> adjustableDate -> unadjustedDate
- Rosetta condition: FpML_ird_22 — if firstPeriodStartDate exists and firstRegularPeriodStartDate exists then firstPeriodStartDate -> adjustableDate -> unadjustedDate < firstRegularPeriodStartDate
- Rosetta func: CalculationPeriod — 2006 ISDA Definition Section 4.13. 'Calculation Period' means, in respect of a Swap Transaction and a party, each period from, and including, one Period End Date of that party to, but excluding, the next following applicable Period End Date during the Term of the Swap Transaction, except that (a) the initial Calculation Period for the party will commence on, and include, the Effective Date and (b) the final Calculation Period for the party will end on, but exclude, the Termination Date.
- Rosetta func: CalculationPeriods — 2006 ISDA Definition Section 4.13. 'Calculation Period' means, in respect of a Swap Transaction and a party, each period from, and including, one Period End Date of that party to, but excluding, the next following applicable Period End Date during the Term of the Swap Transaction, except that (a) the initial Calculation Period for the party will commence on, and include, the Effective Date and (b) the final Calculation Period for the party will end on, but exclude, the Termination Date.
Identifier and Mapping Information
Annotations
| property | value |
|---|---|
| metadata_key | True |
| rosetta_functions | [{"name":"CalculationPeriod","description":"2006 ISDA Definition Section 4.13. 'Calculation Period' means, in respect of a Swap Transaction and a party, each period from, and including, one Period End Date of that party to, but excluding, the next following applicable Period End Date during the Term of the Swap Transaction, except that (a) the initial Calculation Period for the party will commence on, and include, the Effective Date and (b) the final Calculation Period for the party will end on, but exclude, the Termination Date.","inputs":[{"name":"calculationPeriodDates","type":"CalculationPeriodDates","cardinality":"1..1"},{"name":"date","type":"date","cardinality":"1..1"}],"output":{"name":"result","type":"CalculationPeriodData","cardinality":"1..1"},"code_implementation":true},{"name":"CalculationPeriods","description":"2006 ISDA Definition Section 4.13. 'Calculation Period' means, in respect of a Swap Transaction and a party, each period from, and including, one Period End Date of that party to, but excluding, the next following applicable Period End Date during the Term of the Swap Transaction, except that (a) the initial Calculation Period for the party will commence on, and include, the Effective Date and (b) the final Calculation Period for the party will end on, but exclude, the Termination Date.","inputs":[{"name":"calculationPeriodDates","type":"CalculationPeriodDates","cardinality":"1..1"}],"output":{"name":"result","type":"CalculationPeriodData","cardinality":"0..*"},"code_implementation":true}] |
Schema Source
- from schema: https://w3id.org/lmodel/common-domain-model
Mappings
| Mapping Type | Mapped Value |
|---|---|
| self | common_domain_model:CalculationPeriodDates |
| native | common_domain_model:CalculationPeriodDates |
| close | fpml_5_10:CalculationPeriodDates |
LinkML Source
Direct
name: CalculationPeriodDates
annotations:
metadata_key:
tag: metadata_key
value: true
rosetta_functions:
tag: rosetta_functions
value: '[{"name":"CalculationPeriod","description":"2006 ISDA Definition Section
4.13. ''Calculation Period'' means, in respect of a Swap Transaction and a party,
each period from, and including, one Period End Date of that party to, but excluding,
the next following applicable Period End Date during the Term of the Swap Transaction,
except that (a) the initial Calculation Period for the party will commence on,
and include, the Effective Date and (b) the final Calculation Period for the
party will end on, but exclude, the Termination Date.","inputs":[{"name":"calculationPeriodDates","type":"CalculationPeriodDates","cardinality":"1..1"},{"name":"date","type":"date","cardinality":"1..1"}],"output":{"name":"result","type":"CalculationPeriodData","cardinality":"1..1"},"code_implementation":true},{"name":"CalculationPeriods","description":"2006
ISDA Definition Section 4.13. ''Calculation Period'' means, in respect of a
Swap Transaction and a party, each period from, and including, one Period End
Date of that party to, but excluding, the next following applicable Period End
Date during the Term of the Swap Transaction, except that (a) the initial Calculation
Period for the party will commence on, and include, the Effective Date and (b)
the final Calculation Period for the party will end on, but exclude, the Termination
Date.","inputs":[{"name":"calculationPeriodDates","type":"CalculationPeriodDates","cardinality":"1..1"}],"output":{"name":"result","type":"CalculationPeriodData","cardinality":"0..*"},"code_implementation":true}]'
description: 'A data for: defining the parameters used to generate the calculation
period dates schedule, including the specification of any initial or final stub
calculation periods. A calculation period schedule consists of an optional initial
stub calculation period, one or more regular calculation periods and an optional
final stub calculation period. In the absence of any initial or final stub calculation
periods, the regular part of the calculation period schedule is assumed to be between
the effective date and the termination date. No implicit stubs are allowed, i.e.
stubs must be explicitly specified using an appropriate combination of firstPeriodStartDate,
firstRegularPeriodStartDate and lastRegularPeriodEndDate.'
comments:
- 'Rosetta condition: FpML_ird_16 — if firstRegularPeriodStartDate exists then terminationDate
-> adjustableDate -> unadjustedDate > firstRegularPeriodStartDate'
- 'Rosetta condition: FpML_ird_17 — if lastRegularPeriodEndDate exists then terminationDate
-> adjustableDate -> unadjustedDate > lastRegularPeriodEndDate'
- 'Rosetta condition: FpML_ird_18 — if firstRegularPeriodStartDate exists and lastRegularPeriodEndDate
exists then lastRegularPeriodEndDate > firstRegularPeriodStartDate'
- 'Rosetta condition: FpML_ird_20 — if lastRegularPeriodEndDate exists then lastRegularPeriodEndDate
> effectiveDate -> adjustableDate -> unadjustedDate'
- 'Rosetta condition: FpML_ird_21 — if firstPeriodStartDate exists and effectiveDate
exists then firstPeriodStartDate -> adjustableDate -> unadjustedDate < effectiveDate
-> adjustableDate -> unadjustedDate'
- 'Rosetta condition: FpML_ird_22 — if firstPeriodStartDate exists and firstRegularPeriodStartDate
exists then firstPeriodStartDate -> adjustableDate -> unadjustedDate < firstRegularPeriodStartDate'
- 'Rosetta func: CalculationPeriod — 2006 ISDA Definition Section 4.13. ''Calculation
Period'' means, in respect of a Swap Transaction and a party, each period from,
and including, one Period End Date of that party to, but excluding, the next following
applicable Period End Date during the Term of the Swap Transaction, except that
(a) the initial Calculation Period for the party will commence on, and include,
the Effective Date and (b) the final Calculation Period for the party will end on,
but exclude, the Termination Date.'
- 'Rosetta func: CalculationPeriods — 2006 ISDA Definition Section 4.13. ''Calculation
Period'' means, in respect of a Swap Transaction and a party, each period from,
and including, one Period End Date of that party to, but excluding, the next following
applicable Period End Date during the Term of the Swap Transaction, except that
(a) the initial Calculation Period for the party will commence on, and include,
the Effective Date and (b) the final Calculation Period for the party will end on,
but exclude, the Termination Date.'
in_subset:
- cdm_product_common_schedule
from_schema: https://w3id.org/lmodel/common-domain-model
close_mappings:
- fpml_5_10:CalculationPeriodDates
slots:
- effectiveDate
- terminationDate
- calculationPeriodDatesAdjustments
- firstPeriodStartDate
- firstRegularPeriodStartDate
- firstCompoundingPeriodEndDate
- lastRegularPeriodEndDate
- stubPeriodType
- calculationPeriodFrequency
slot_usage:
effectiveDate:
name: effectiveDate
description: The first day of the terms of the trade. This day may be subject
to adjustment in accordance with a business day convention.
range: AdjustableOrRelativeDate
rules:
- preconditions:
slot_conditions:
firstRegularPeriodStartDate:
name: firstRegularPeriodStartDate
required: true
lastRegularPeriodEndDate:
name: lastRegularPeriodEndDate
required: true
description: FpML validation rule ird-18 - If firstRegularPeriodStartDate exists,
and if lastRegularPeriodEndDate exists, then lastRegularPeriodEndDate must be
after firstRegularPeriodStartDate. This data rule applies within a given interest
rate payout component.
comments:
- 'Rosetta comparison: lastRegularPeriodEndDate > firstRegularPeriodStartDate'
Induced
name: CalculationPeriodDates
annotations:
metadata_key:
tag: metadata_key
value: true
rosetta_functions:
tag: rosetta_functions
value: '[{"name":"CalculationPeriod","description":"2006 ISDA Definition Section
4.13. ''Calculation Period'' means, in respect of a Swap Transaction and a party,
each period from, and including, one Period End Date of that party to, but excluding,
the next following applicable Period End Date during the Term of the Swap Transaction,
except that (a) the initial Calculation Period for the party will commence on,
and include, the Effective Date and (b) the final Calculation Period for the
party will end on, but exclude, the Termination Date.","inputs":[{"name":"calculationPeriodDates","type":"CalculationPeriodDates","cardinality":"1..1"},{"name":"date","type":"date","cardinality":"1..1"}],"output":{"name":"result","type":"CalculationPeriodData","cardinality":"1..1"},"code_implementation":true},{"name":"CalculationPeriods","description":"2006
ISDA Definition Section 4.13. ''Calculation Period'' means, in respect of a
Swap Transaction and a party, each period from, and including, one Period End
Date of that party to, but excluding, the next following applicable Period End
Date during the Term of the Swap Transaction, except that (a) the initial Calculation
Period for the party will commence on, and include, the Effective Date and (b)
the final Calculation Period for the party will end on, but exclude, the Termination
Date.","inputs":[{"name":"calculationPeriodDates","type":"CalculationPeriodDates","cardinality":"1..1"}],"output":{"name":"result","type":"CalculationPeriodData","cardinality":"0..*"},"code_implementation":true}]'
description: 'A data for: defining the parameters used to generate the calculation
period dates schedule, including the specification of any initial or final stub
calculation periods. A calculation period schedule consists of an optional initial
stub calculation period, one or more regular calculation periods and an optional
final stub calculation period. In the absence of any initial or final stub calculation
periods, the regular part of the calculation period schedule is assumed to be between
the effective date and the termination date. No implicit stubs are allowed, i.e.
stubs must be explicitly specified using an appropriate combination of firstPeriodStartDate,
firstRegularPeriodStartDate and lastRegularPeriodEndDate.'
comments:
- 'Rosetta condition: FpML_ird_16 — if firstRegularPeriodStartDate exists then terminationDate
-> adjustableDate -> unadjustedDate > firstRegularPeriodStartDate'
- 'Rosetta condition: FpML_ird_17 — if lastRegularPeriodEndDate exists then terminationDate
-> adjustableDate -> unadjustedDate > lastRegularPeriodEndDate'
- 'Rosetta condition: FpML_ird_18 — if firstRegularPeriodStartDate exists and lastRegularPeriodEndDate
exists then lastRegularPeriodEndDate > firstRegularPeriodStartDate'
- 'Rosetta condition: FpML_ird_20 — if lastRegularPeriodEndDate exists then lastRegularPeriodEndDate
> effectiveDate -> adjustableDate -> unadjustedDate'
- 'Rosetta condition: FpML_ird_21 — if firstPeriodStartDate exists and effectiveDate
exists then firstPeriodStartDate -> adjustableDate -> unadjustedDate < effectiveDate
-> adjustableDate -> unadjustedDate'
- 'Rosetta condition: FpML_ird_22 — if firstPeriodStartDate exists and firstRegularPeriodStartDate
exists then firstPeriodStartDate -> adjustableDate -> unadjustedDate < firstRegularPeriodStartDate'
- 'Rosetta func: CalculationPeriod — 2006 ISDA Definition Section 4.13. ''Calculation
Period'' means, in respect of a Swap Transaction and a party, each period from,
and including, one Period End Date of that party to, but excluding, the next following
applicable Period End Date during the Term of the Swap Transaction, except that
(a) the initial Calculation Period for the party will commence on, and include,
the Effective Date and (b) the final Calculation Period for the party will end on,
but exclude, the Termination Date.'
- 'Rosetta func: CalculationPeriods — 2006 ISDA Definition Section 4.13. ''Calculation
Period'' means, in respect of a Swap Transaction and a party, each period from,
and including, one Period End Date of that party to, but excluding, the next following
applicable Period End Date during the Term of the Swap Transaction, except that
(a) the initial Calculation Period for the party will commence on, and include,
the Effective Date and (b) the final Calculation Period for the party will end on,
but exclude, the Termination Date.'
in_subset:
- cdm_product_common_schedule
from_schema: https://w3id.org/lmodel/common-domain-model
close_mappings:
- fpml_5_10:CalculationPeriodDates
slot_usage:
effectiveDate:
name: effectiveDate
description: The first day of the terms of the trade. This day may be subject
to adjustment in accordance with a business day convention.
range: AdjustableOrRelativeDate
attributes:
effectiveDate:
name: effectiveDate
description: The first day of the terms of the trade. This day may be subject
to adjustment in accordance with a business day convention.
from_schema: https://w3id.org/lmodel/common-domain-model
close_mappings:
- fpml_5_10:CodeValue.effectiveDate
rank: 1000
owner: CalculationPeriodDates
domain_of:
- CodeValue
- CounterpartyPositionBusinessEvent
- IndexTransitionInstruction
- StockSplitInstruction
- ClosedState
- EventInstruction
- LegalAgreementBase
- MinimumTransferAmountAmendment
- TerminationCurrencyAmendment
- PriceQuantity
- FallbackRateParameters
- CalculationPeriodDates
- EconomicTerms
- CancelableProvision
range: AdjustableOrRelativeDate
terminationDate:
name: terminationDate
description: The last day of the terms of the trade. This date may be subject
to adjustments in accordance with the business day convention. It can also be
specified in relation to another scheduled date (e.g. the last payment date).
from_schema: https://w3id.org/lmodel/common-domain-model
close_mappings:
- fpml_5_10:CalculationPeriodDates.terminationDate
rank: 1000
owner: CalculationPeriodDates
domain_of:
- CalculationPeriodDates
- EconomicTerms
range: AdjustableOrRelativeDate
calculationPeriodDatesAdjustments:
name: calculationPeriodDatesAdjustments
description: The specification of the business day convention and financial business
centers used for adjusting any calculation period date if it would otherwise
fall on a day that is not a business day in the specified business center.
from_schema: https://w3id.org/lmodel/common-domain-model
close_mappings:
- fpml_5_10:CalculationPeriodDates.calculationPeriodDatesAdjustments
rank: 1000
owner: CalculationPeriodDates
domain_of:
- CalculationPeriodDates
range: BusinessDayAdjustments
firstPeriodStartDate:
name: firstPeriodStartDate
description: The start date of the calculation period. FpML specifies that for
interest rate swaps this date must only be specified if it is not equal to the
effective date. It is always specified in the case of equity swaps and credit
default swaps with periodic payments. This date may be subject to adjustment
in accordance with a business day convention.
from_schema: https://w3id.org/lmodel/common-domain-model
close_mappings:
- fpml_5_10:CalculationPeriodDates.firstPeriodStartDate
rank: 1000
owner: CalculationPeriodDates
domain_of:
- CalculationPeriodDates
range: AdjustableOrRelativeDate
firstRegularPeriodStartDate:
name: firstRegularPeriodStartDate
description: The start date of the regular part of the calculation period schedule.
It must only be specified if there is an initial stub calculation period. This
day may be subject to adjustment in accordance with any adjustments specified
in calculationPeriodDatesAdjustments.
from_schema: https://w3id.org/lmodel/common-domain-model
close_mappings:
- fpml_5_10:CalculationPeriodDates.firstRegularPeriodStartDate
rank: 1000
owner: CalculationPeriodDates
domain_of:
- CalculationPeriodDates
range: date
firstCompoundingPeriodEndDate:
name: firstCompoundingPeriodEndDate
description: The end date of the initial compounding period when compounding is
applicable. It must only be specified when the compoundingMethod element is
present and not equal to a value of None. This date may be subject to adjustment
in accordance with any adjustments specified in calculationPeriodDatesAdjustments.
from_schema: https://w3id.org/lmodel/common-domain-model
close_mappings:
- fpml_5_10:CalculationPeriodDates.firstCompoundingPeriodEndDate
rank: 1000
owner: CalculationPeriodDates
domain_of:
- CalculationPeriodDates
range: date
lastRegularPeriodEndDate:
name: lastRegularPeriodEndDate
description: The end date of the regular part of the calculation period schedule.
It must only be specified if there is a final stub calculation period. This
day may be subject to adjustment in accordance with any adjustments specified
in calculationPeriodDatesAdjustments.
from_schema: https://w3id.org/lmodel/common-domain-model
close_mappings:
- fpml_5_10:CalculationPeriodDates.lastRegularPeriodEndDate
rank: 1000
owner: CalculationPeriodDates
domain_of:
- CalculationPeriodDates
range: date
stubPeriodType:
name: stubPeriodType
description: Method to allocate any irregular period remaining after regular periods
have been allocated between the effective and termination date. The multiplicity
of 2 allows the possibility of expressing the type for both an initial and final
stub at the same time.
from_schema: https://w3id.org/lmodel/common-domain-model
close_mappings:
- fpml_5_10:CalculationPeriodDates.stubPeriodType
rank: 1000
owner: CalculationPeriodDates
domain_of:
- CalculationPeriodDates
range: StubPeriodTypeEnum
multivalued: true
calculationPeriodFrequency:
name: calculationPeriodFrequency
description: The frequency at which calculation period end dates occur with the
regular part of the calculation period schedule and their roll date convention.
from_schema: https://w3id.org/lmodel/common-domain-model
close_mappings:
- fpml_5_10:CalculationPeriodDates.calculationPeriodFrequency
rank: 1000
owner: CalculationPeriodDates
domain_of:
- CalculationPeriodDates
range: CalculationPeriodFrequency
rules:
- preconditions:
slot_conditions:
firstRegularPeriodStartDate:
name: firstRegularPeriodStartDate
required: true
lastRegularPeriodEndDate:
name: lastRegularPeriodEndDate
required: true
description: FpML validation rule ird-18 - If firstRegularPeriodStartDate exists,
and if lastRegularPeriodEndDate exists, then lastRegularPeriodEndDate must be
after firstRegularPeriodStartDate. This data rule applies within a given interest
rate payout component.
comments:
- 'Rosetta comparison: lastRegularPeriodEndDate > firstRegularPeriodStartDate'