Skip to content

Class: Frequency

A class for defining a date frequency, e.g. one day, three months, through the combination of an integer value and a standardized period value that is specified as part of an enumeration.

URI: common_domain_model:Frequency

 classDiagram
    class Frequency
    click Frequency href "../Frequency/"
      Frequency <|-- CalculationPeriodFrequency
        click CalculationPeriodFrequency href "../CalculationPeriodFrequency/"
      Frequency <|-- ResetFrequency
        click ResetFrequency href "../ResetFrequency/"

      Frequency : period





        Frequency --> "1" PeriodExtendedEnum : period
        click PeriodExtendedEnum href "../PeriodExtendedEnum/"



      Frequency : periodMultiplier

Inheritance

Slots

Name Cardinality and Range Description Inheritance
periodMultiplier 1
Integer
A time period multiplier, e direct
period 1
PeriodExtendedEnum
A time period, e direct

Usages

used by used in type used
QuantitySchedule frequency range Frequency
Quantity frequency range Frequency
NonNegativeQuantity frequency range Frequency
NonNegativeQuantitySchedule frequency range Frequency
Money frequency range Frequency
PaymentDates paymentFrequency range Frequency

Rules

Rule Applied Preconditions Postconditions Elseconditions
slot_conditions {'period': {'equals_string': 'PeriodExtendedEnum.T'}} {'periodMultiplier': {'equals_string': '1'}}

Rule Applied Preconditions Postconditions Elseconditions

In Subsets

Comments

  • Rosetta condition: TermPeriod — if period = PeriodExtendedEnum -> T then periodMultiplier = 1
  • Rosetta condition: PositivePeriodMultiplier — periodMultiplier > 0

Identifier and Mapping Information

Annotations

property value
metadata_key True

Schema Source

Mappings

Mapping Type Mapped Value
self common_domain_model:Frequency
native common_domain_model:Frequency

LinkML Source

Direct

name: Frequency
annotations:
  metadata_key:
    tag: metadata_key
    value: true
description: A class for defining a date frequency, e.g. one day, three months, through
  the combination of an integer value and a standardized period value that is specified
  as part of an enumeration.
comments:
- 'Rosetta condition: TermPeriod  if period = PeriodExtendedEnum -> T then periodMultiplier
  = 1'
- 'Rosetta condition: PositivePeriodMultiplier  periodMultiplier > 0'
in_subset:
- cdm_base_datetime
from_schema: https://w3id.org/lmodel/common-domain-model
slots:
- periodMultiplier
- period
rules:
- preconditions:
    slot_conditions:
      period:
        name: period
        equals_string: PeriodExtendedEnum.T
  postconditions:
    slot_conditions:
      periodMultiplier:
        name: periodMultiplier
        equals_string: '1'
  description: FpML specifies that if period value is T (Term) then periodMultiplier
    must contain the value 1.
- postconditions:
    slot_conditions:
      periodMultiplier:
        name: periodMultiplier
        comments:
        - 'Rosetta: strictly greater than'
        minimum_value: 0
  description: FpML specifies periodMultiplier as a positive integer.

Induced

name: Frequency
annotations:
  metadata_key:
    tag: metadata_key
    value: true
description: A class for defining a date frequency, e.g. one day, three months, through
  the combination of an integer value and a standardized period value that is specified
  as part of an enumeration.
comments:
- 'Rosetta condition: TermPeriod  if period = PeriodExtendedEnum -> T then periodMultiplier
  = 1'
- 'Rosetta condition: PositivePeriodMultiplier  periodMultiplier > 0'
in_subset:
- cdm_base_datetime
from_schema: https://w3id.org/lmodel/common-domain-model
attributes:
  periodMultiplier:
    name: periodMultiplier
    description: A time period multiplier, e.g. 1, 2, or 3. If the period value is
      T (Term) then period multiplier must contain the value 1.
    from_schema: https://w3id.org/lmodel/common-domain-model
    rank: 1000
    owner: Frequency
    domain_of:
    - Frequency
    - Period
    - Velocity
    range: integer
    required: true
  period:
    name: period
    description: A time period, e.g. a day, week, month, year or term of the stream.
    from_schema: https://w3id.org/lmodel/common-domain-model
    rank: 1000
    owner: Frequency
    domain_of:
    - Frequency
    - Period
    - PeriodBound
    - CalculationFrequency
    - Velocity
    - AverageTradingVolume
    range: PeriodExtendedEnum
    required: true
rules:
- preconditions:
    slot_conditions:
      period:
        name: period
        equals_string: PeriodExtendedEnum.T
  postconditions:
    slot_conditions:
      periodMultiplier:
        name: periodMultiplier
        equals_string: '1'
  description: FpML specifies that if period value is T (Term) then periodMultiplier
    must contain the value 1.
- postconditions:
    slot_conditions:
      periodMultiplier:
        name: periodMultiplier
        comments:
        - 'Rosetta: strictly greater than'
        minimum_value: 0
  description: FpML specifies periodMultiplier as a positive integer.