Skip to content

Class: AdjustableOrAdjustedOrRelativeDate

This Rosetta class specifies the date as either an unadjusted, adjusted or relative date. It supplements the features of the AdjustableOrAdjustedDate to support the credit default swap option premium, which uses the relative date construct.

URI: common_domain_model:AdjustableOrAdjustedOrRelativeDate

 classDiagram
    class AdjustableOrAdjustedOrRelativeDate
    click AdjustableOrAdjustedOrRelativeDate href "../AdjustableOrAdjustedOrRelativeDate/"
      AdjustableOrAdjustedOrRelativeDate : adjustedDate

      AdjustableOrAdjustedOrRelativeDate : dateAdjustments





        AdjustableOrAdjustedOrRelativeDate --> "0..1" BusinessDayAdjustments : dateAdjustments
        click BusinessDayAdjustments href "../BusinessDayAdjustments/"



      AdjustableOrAdjustedOrRelativeDate : relativeDate





        AdjustableOrAdjustedOrRelativeDate --> "0..1" RelativeDateOffset : relativeDate
        click RelativeDateOffset href "../RelativeDateOffset/"



      AdjustableOrAdjustedOrRelativeDate : unadjustedDate

Slots

Name Cardinality and Range Description Inheritance
unadjustedDate 0..1
date
A date subject to adjustment direct
dateAdjustments 0..1
BusinessDayAdjustments
The business day convention and financial business centers used for adjusting... direct
adjustedDate 0..1
date
The date once the adjustment has been performed direct
relativeDate 0..1
RelativeDateOffset
A date specified as some offset to another date (the anchor date) direct

Usages

used by used in type used
UnscheduledTransfer settlementDate range AdjustableOrAdjustedOrRelativeDate
ScheduledTransfer settlementDate range AdjustableOrAdjustedOrRelativeDate
TransferBase settlementDate range AdjustableOrAdjustedOrRelativeDate
AssetFlowBase settlementDate range AdjustableOrAdjustedOrRelativeDate
AssetFlow settlementDate range AdjustableOrAdjustedOrRelativeDate
SettlementDate adjustableOrRelativeDate range AdjustableOrAdjustedOrRelativeDate

Rules

Rule Applied Preconditions Postconditions Elseconditions

In Subsets

Comments

  • Rosetta condition: AdjustedDate — adjustedDate exists or relativeDate exists or unadjustedDate exists or (unadjustedDate exists and dateAdjustments exists and adjustedDate is absent)
  • Rosetta func: ConvertToAdjustableOrRelativeDate — Utility function to convert from AdjustableOrAdjustedOrRelativeDate to AdjustableOrRelativeDate
  • Rosetta func: ConvertToAdjustableOrAdjustedOrRelativeDate — Utility function to convert from AdjustableOrAdjustedOrRelativeDate to AdjustableOrAdjustedOrRelativeDate
  • Rosetta func: AdjustableOrAdjustedOrRelativeDateResolution — Prioritization of unadjustedDate over adjustedDate.

Identifier and Mapping Information

Annotations

property value
rosetta_functions [{"name":"ConvertToAdjustableOrRelativeDate","description":"Utility function to convert from AdjustableOrAdjustedOrRelativeDate to AdjustableOrRelativeDate","inputs":[{"name":"adjustableOrAdjustedOrRelativeDate","type":"AdjustableOrAdjustedOrRelativeDate","cardinality":"0..1"}],"output":{"name":"adjustableOrRelativeDate","type":"AdjustableOrRelativeDate","cardinality":"0..1"}},{"name":"ConvertToAdjustableOrAdjustedOrRelativeDate","description":"Utility function to convert from AdjustableOrAdjustedOrRelativeDate to AdjustableOrAdjustedOrRelativeDate","inputs":[{"name":"adjustableOrRelativeDate","type":"AdjustableOrRelativeDate","cardinality":"0..1"}],"output":{"name":"adjustableOrAdjustedOrRelativeDate","type":"AdjustableOrAdjustedOrRelativeDate","cardinality":"0..1"}},{"name":"AdjustableOrAdjustedOrRelativeDateResolution","description":"Prioritization of unadjustedDate over adjustedDate.","inputs":[{"name":"adjustableDate","type":"AdjustableOrAdjustedOrRelativeDate","cardinality":"1..1"}],"output":{"name":"date","type":"date","cardinality":"0..1"}}]

Schema Source

Mappings

Mapping Type Mapped Value
self common_domain_model:AdjustableOrAdjustedOrRelativeDate
native common_domain_model:AdjustableOrAdjustedOrRelativeDate
close fpml_5_10:AdjustableOrAdjustedOrRelativeDate

LinkML Source

Direct

name: AdjustableOrAdjustedOrRelativeDate
annotations:
  rosetta_functions:
    tag: rosetta_functions
    value: '[{"name":"ConvertToAdjustableOrRelativeDate","description":"Utility function
      to convert from AdjustableOrAdjustedOrRelativeDate to AdjustableOrRelativeDate","inputs":[{"name":"adjustableOrAdjustedOrRelativeDate","type":"AdjustableOrAdjustedOrRelativeDate","cardinality":"0..1"}],"output":{"name":"adjustableOrRelativeDate","type":"AdjustableOrRelativeDate","cardinality":"0..1"}},{"name":"ConvertToAdjustableOrAdjustedOrRelativeDate","description":"Utility
      function to convert from AdjustableOrAdjustedOrRelativeDate to AdjustableOrAdjustedOrRelativeDate","inputs":[{"name":"adjustableOrRelativeDate","type":"AdjustableOrRelativeDate","cardinality":"0..1"}],"output":{"name":"adjustableOrAdjustedOrRelativeDate","type":"AdjustableOrAdjustedOrRelativeDate","cardinality":"0..1"}},{"name":"AdjustableOrAdjustedOrRelativeDateResolution","description":"Prioritization
      of unadjustedDate over adjustedDate.","inputs":[{"name":"adjustableDate","type":"AdjustableOrAdjustedOrRelativeDate","cardinality":"1..1"}],"output":{"name":"date","type":"date","cardinality":"0..1"}}]'
description: This Rosetta class specifies the date as either an unadjusted, adjusted
  or relative date. It supplements the features of the AdjustableOrAdjustedDate to
  support the credit default swap option premium, which uses the relative date construct.
comments:
- 'Rosetta condition: AdjustedDate  adjustedDate exists or relativeDate exists or
  unadjustedDate exists or (unadjustedDate exists and dateAdjustments exists and adjustedDate
  is absent)'
- 'Rosetta func: ConvertToAdjustableOrRelativeDate  Utility function to convert from
  AdjustableOrAdjustedOrRelativeDate to AdjustableOrRelativeDate'
- 'Rosetta func: ConvertToAdjustableOrAdjustedOrRelativeDate  Utility function to
  convert from AdjustableOrAdjustedOrRelativeDate to AdjustableOrAdjustedOrRelativeDate'
- 'Rosetta func: AdjustableOrAdjustedOrRelativeDateResolution  Prioritization of
  unadjustedDate over adjustedDate.'
in_subset:
- cdm_base_datetime
from_schema: https://w3id.org/lmodel/common-domain-model
close_mappings:
- fpml_5_10:AdjustableOrAdjustedOrRelativeDate
slots:
- unadjustedDate
- dateAdjustments
- adjustedDate
- relativeDate
slot_usage:
  unadjustedDate:
    name: unadjustedDate
    description: A date subject to adjustment.
rules:
- postconditions:
    any_of:
    - slot_conditions:
        adjustedDate:
          name: adjustedDate
          required: true
    - slot_conditions:
        relativeDate:
          name: relativeDate
          required: true
    - slot_conditions:
        unadjustedDate:
          name: unadjustedDate
          required: true
    - slot_conditions:
        unadjustedDate:
          name: unadjustedDate
          required: true
        dateAdjustments:
          name: dateAdjustments
          required: true
        adjustedDate:
          name: adjustedDate
          required: false
  description: This data rule extends the data rule AdjustableOrAdjustedDate_adjustedDate
    by specifying logic applicable to the relative date.

Induced

name: AdjustableOrAdjustedOrRelativeDate
annotations:
  rosetta_functions:
    tag: rosetta_functions
    value: '[{"name":"ConvertToAdjustableOrRelativeDate","description":"Utility function
      to convert from AdjustableOrAdjustedOrRelativeDate to AdjustableOrRelativeDate","inputs":[{"name":"adjustableOrAdjustedOrRelativeDate","type":"AdjustableOrAdjustedOrRelativeDate","cardinality":"0..1"}],"output":{"name":"adjustableOrRelativeDate","type":"AdjustableOrRelativeDate","cardinality":"0..1"}},{"name":"ConvertToAdjustableOrAdjustedOrRelativeDate","description":"Utility
      function to convert from AdjustableOrAdjustedOrRelativeDate to AdjustableOrAdjustedOrRelativeDate","inputs":[{"name":"adjustableOrRelativeDate","type":"AdjustableOrRelativeDate","cardinality":"0..1"}],"output":{"name":"adjustableOrAdjustedOrRelativeDate","type":"AdjustableOrAdjustedOrRelativeDate","cardinality":"0..1"}},{"name":"AdjustableOrAdjustedOrRelativeDateResolution","description":"Prioritization
      of unadjustedDate over adjustedDate.","inputs":[{"name":"adjustableDate","type":"AdjustableOrAdjustedOrRelativeDate","cardinality":"1..1"}],"output":{"name":"date","type":"date","cardinality":"0..1"}}]'
description: This Rosetta class specifies the date as either an unadjusted, adjusted
  or relative date. It supplements the features of the AdjustableOrAdjustedDate to
  support the credit default swap option premium, which uses the relative date construct.
comments:
- 'Rosetta condition: AdjustedDate  adjustedDate exists or relativeDate exists or
  unadjustedDate exists or (unadjustedDate exists and dateAdjustments exists and adjustedDate
  is absent)'
- 'Rosetta func: ConvertToAdjustableOrRelativeDate  Utility function to convert from
  AdjustableOrAdjustedOrRelativeDate to AdjustableOrRelativeDate'
- 'Rosetta func: ConvertToAdjustableOrAdjustedOrRelativeDate  Utility function to
  convert from AdjustableOrAdjustedOrRelativeDate to AdjustableOrAdjustedOrRelativeDate'
- 'Rosetta func: AdjustableOrAdjustedOrRelativeDateResolution  Prioritization of
  unadjustedDate over adjustedDate.'
in_subset:
- cdm_base_datetime
from_schema: https://w3id.org/lmodel/common-domain-model
close_mappings:
- fpml_5_10:AdjustableOrAdjustedOrRelativeDate
slot_usage:
  unadjustedDate:
    name: unadjustedDate
    description: A date subject to adjustment.
attributes:
  unadjustedDate:
    name: unadjustedDate
    description: A date subject to adjustment.
    from_schema: https://w3id.org/lmodel/common-domain-model
    close_mappings:
    - fpml_5_10:AdjustableDate.unadjustedDate
    rank: 1000
    owner: AdjustableOrAdjustedOrRelativeDate
    domain_of:
    - AdjustableDate
    - AdjustableDates
    - AdjustableOrAdjustedDate
    - AdjustableOrAdjustedOrRelativeDate
    - ObservationDate
    range: date
  dateAdjustments:
    name: dateAdjustments
    description: The business day convention and financial business centers used for
      adjusting the date if it would otherwise fall on a day that is not a business
      date in the specified business centers.
    from_schema: https://w3id.org/lmodel/common-domain-model
    close_mappings:
    - fpml_5_10:AdjustableDate.dateAdjustments
    rank: 1000
    owner: AdjustableOrAdjustedOrRelativeDate
    domain_of:
    - AdjustableDate
    - AdjustableDates
    - AdjustableOrAdjustedDate
    - AdjustableOrAdjustedOrRelativeDate
    - DividendPeriod
    - ObservationSchedule
    - EconomicTerms
    range: BusinessDayAdjustments
  adjustedDate:
    name: adjustedDate
    description: The date once the adjustment has been performed. (Note that this
      date may change if the business center holidays change).
    from_schema: https://w3id.org/lmodel/common-domain-model
    close_mappings:
    - fpml_5_10:AdjustableDate.adjustedDate
    rank: 1000
    owner: AdjustableOrAdjustedOrRelativeDate
    domain_of:
    - AdjustableDate
    - AdjustableDates
    - AdjustableOrAdjustedDate
    - AdjustableOrAdjustedOrRelativeDate
    - RelativeDateOffset
    - ObservationDate
    range: date
  relativeDate:
    name: relativeDate
    description: A date specified as some offset to another date (the anchor date).
    from_schema: https://w3id.org/lmodel/common-domain-model
    close_mappings:
    - fpml_5_10:AdjustableOrAdjustedOrRelativeDate.relativeDate
    rank: 1000
    owner: AdjustableOrAdjustedOrRelativeDate
    domain_of:
    - AdjustableOrAdjustedOrRelativeDate
    - AdjustableOrRelativeDate
    - Composite
    range: RelativeDateOffset
rules:
- postconditions:
    any_of:
    - slot_conditions:
        adjustedDate:
          name: adjustedDate
          required: true
    - slot_conditions:
        relativeDate:
          name: relativeDate
          required: true
    - slot_conditions:
        unadjustedDate:
          name: unadjustedDate
          required: true
    - slot_conditions:
        unadjustedDate:
          name: unadjustedDate
          required: true
        dateAdjustments:
          name: dateAdjustments
          required: true
        adjustedDate:
          name: adjustedDate
          required: false
  description: This data rule extends the data rule AdjustableOrAdjustedDate_adjustedDate
    by specifying logic applicable to the relative date.