Class: QuantitySchedule
Specifies a quantity schedule to be associated to a financial product to represent a trade amount. This data type extends MeasureSchedule with several unit or multiplier attributes that are used to define financial quantities. This data type is generically based on a schedule and can also be used to represent a quantity as a single value.
URI: common_domain_model:QuantitySchedule
classDiagram
class QuantitySchedule
click QuantitySchedule href "../QuantitySchedule/"
MeasureSchedule <|-- QuantitySchedule
click MeasureSchedule href "../MeasureSchedule/"
QuantitySchedule <|-- Quantity
click Quantity href "../Quantity/"
QuantitySchedule <|-- NonNegativeQuantitySchedule
click NonNegativeQuantitySchedule href "../NonNegativeQuantitySchedule/"
QuantitySchedule : datedValue
QuantitySchedule --> "*" DatedValue : datedValue
click DatedValue href "../DatedValue/"
QuantitySchedule : frequency
QuantitySchedule --> "0..1" Frequency : frequency
click Frequency href "../Frequency/"
QuantitySchedule : multiplier
QuantitySchedule --> "0..1" Measure : multiplier
click Measure href "../Measure/"
QuantitySchedule : unit
QuantitySchedule --> "0..1" UnitType : unit
click UnitType href "../UnitType/"
QuantitySchedule : value
Inheritance
- MeasureBase
- MeasureSchedule
- QuantitySchedule
- MeasureSchedule
Slots
| Name | Cardinality and Range | Description | Inheritance |
|---|---|---|---|
| multiplier | 0..1 Measure |
Defines an optional number that the quantity should be multiplied by to deriv... | direct |
| frequency | 0..1 Frequency |
Defines the frequency to be used when defining a quantity | direct |
| datedValue | * DatedValue |
A schedule of step date and value pairs | MeasureSchedule |
| value | 0..1 Decimal |
Specifies the value of the measure as a number | MeasureBase |
| unit | 0..1 UnitType |
Qualifies the unit by which the amount is measured | MeasureBase |
Rules
| Rule Applied | Preconditions | Postconditions | Elseconditions |
|---|---|---|---|
In Subsets
Comments
- Rosetta condition: Quantity_multiplier — if multiplier exists then multiplier -> value >= 0.0
- Rosetta condition: UnitOfAmountExists — unit exists
- Rosetta func: FilterQuantityByCurrency — Filter list of quantities based on unit type.
- Rosetta func: FilterQuantityByCurrencyExists — Filter list of quantities based on unit type.
- Rosetta func: FilterQuantityByFinancialUnit — Filter list of quantities based on unit type.
Identifier and Mapping Information
Annotations
| property | value |
|---|---|
| rosetta_functions | [{"name":"FilterQuantityByCurrency","description":"Filter list of quantities based on unit type.","inputs":[{"name":"quantities","type":"QuantitySchedule","cardinality":"0.."},{"name":"currency","type":"string","cardinality":"1..1"}],"output":{"name":"filteredQuantities","type":"QuantitySchedule","cardinality":"0.."}},{"name":"FilterQuantityByCurrencyExists","description":"Filter list of quantities based on unit type.","inputs":[{"name":"quantities","type":"QuantitySchedule","cardinality":"0.."}],"output":{"name":"filteredQuantities","type":"QuantitySchedule","cardinality":"0.."}},{"name":"FilterQuantityByFinancialUnit","description":"Filter list of quantities based on unit type.","inputs":[{"name":"quantities","type":"QuantitySchedule","cardinality":"0.."},{"name":"financialUnit","type":"FinancialUnitEnum","cardinality":"1..1"}],"output":{"name":"filteredQuantities","type":"QuantitySchedule","cardinality":"0.."}}] |
Schema Source
- from schema: https://w3id.org/lmodel/common-domain-model
Mappings
| Mapping Type | Mapped Value |
|---|---|
| self | common_domain_model:QuantitySchedule |
| native | common_domain_model:QuantitySchedule |
LinkML Source
Direct
name: QuantitySchedule
annotations:
rosetta_functions:
tag: rosetta_functions
value: '[{"name":"FilterQuantityByCurrency","description":"Filter list of quantities
based on unit type.","inputs":[{"name":"quantities","type":"QuantitySchedule","cardinality":"0..*"},{"name":"currency","type":"string","cardinality":"1..1"}],"output":{"name":"filteredQuantities","type":"QuantitySchedule","cardinality":"0..*"}},{"name":"FilterQuantityByCurrencyExists","description":"Filter
list of quantities based on unit type.","inputs":[{"name":"quantities","type":"QuantitySchedule","cardinality":"0..*"}],"output":{"name":"filteredQuantities","type":"QuantitySchedule","cardinality":"0..*"}},{"name":"FilterQuantityByFinancialUnit","description":"Filter
list of quantities based on unit type.","inputs":[{"name":"quantities","type":"QuantitySchedule","cardinality":"0..*"},{"name":"financialUnit","type":"FinancialUnitEnum","cardinality":"1..1"}],"output":{"name":"filteredQuantities","type":"QuantitySchedule","cardinality":"0..*"}}]'
description: Specifies a quantity schedule to be associated to a financial product
to represent a trade amount. This data type extends MeasureSchedule with several
unit or multiplier attributes that are used to define financial quantities. This
data type is generically based on a schedule and can also be used to represent a
quantity as a single value.
comments:
- 'Rosetta condition: Quantity_multiplier — if multiplier exists then multiplier ->
value >= 0.0'
- 'Rosetta condition: UnitOfAmountExists — unit exists'
- 'Rosetta func: FilterQuantityByCurrency — Filter list of quantities based on unit
type.'
- 'Rosetta func: FilterQuantityByCurrencyExists — Filter list of quantities based
on unit type.'
- 'Rosetta func: FilterQuantityByFinancialUnit — Filter list of quantities based on
unit type.'
in_subset:
- cdm_base_math
from_schema: https://w3id.org/lmodel/common-domain-model
is_a: MeasureSchedule
slots:
- multiplier
- frequency
rules:
- postconditions:
slot_conditions:
unit:
name: unit
required: true
description: Requires that a unit of amount must be specified for any quantity.
Induced
name: QuantitySchedule
annotations:
rosetta_functions:
tag: rosetta_functions
value: '[{"name":"FilterQuantityByCurrency","description":"Filter list of quantities
based on unit type.","inputs":[{"name":"quantities","type":"QuantitySchedule","cardinality":"0..*"},{"name":"currency","type":"string","cardinality":"1..1"}],"output":{"name":"filteredQuantities","type":"QuantitySchedule","cardinality":"0..*"}},{"name":"FilterQuantityByCurrencyExists","description":"Filter
list of quantities based on unit type.","inputs":[{"name":"quantities","type":"QuantitySchedule","cardinality":"0..*"}],"output":{"name":"filteredQuantities","type":"QuantitySchedule","cardinality":"0..*"}},{"name":"FilterQuantityByFinancialUnit","description":"Filter
list of quantities based on unit type.","inputs":[{"name":"quantities","type":"QuantitySchedule","cardinality":"0..*"},{"name":"financialUnit","type":"FinancialUnitEnum","cardinality":"1..1"}],"output":{"name":"filteredQuantities","type":"QuantitySchedule","cardinality":"0..*"}}]'
description: Specifies a quantity schedule to be associated to a financial product
to represent a trade amount. This data type extends MeasureSchedule with several
unit or multiplier attributes that are used to define financial quantities. This
data type is generically based on a schedule and can also be used to represent a
quantity as a single value.
comments:
- 'Rosetta condition: Quantity_multiplier — if multiplier exists then multiplier ->
value >= 0.0'
- 'Rosetta condition: UnitOfAmountExists — unit exists'
- 'Rosetta func: FilterQuantityByCurrency — Filter list of quantities based on unit
type.'
- 'Rosetta func: FilterQuantityByCurrencyExists — Filter list of quantities based
on unit type.'
- 'Rosetta func: FilterQuantityByFinancialUnit — Filter list of quantities based on
unit type.'
in_subset:
- cdm_base_math
from_schema: https://w3id.org/lmodel/common-domain-model
is_a: MeasureSchedule
attributes:
multiplier:
name: multiplier
description: Defines an optional number that the quantity should be multiplied
by to derive a total quantity. This number is associated to a unit. For example
in the case of the Coal (API2) CIF ARA (ARGUS-McCloskey) Futures Contract on
the CME, where the unit would be contracts, the multiplier value would 1,000
and the mulitiplier unit would be 1,000 MT (Metric Tons).
from_schema: https://w3id.org/lmodel/common-domain-model
rank: 1000
owner: QuantitySchedule
domain_of:
- QuantitySchedule
- FloatingRateProcessingParameters
range: Measure
frequency:
name: frequency
description: Defines the frequency to be used when defining a quantity. For example
a quantity may be specified as a number of barrels of oil per day, which needs
multiplying by the number of days in the relevant period to get the total quantity
as a number of barrels.
from_schema: https://w3id.org/lmodel/common-domain-model
rank: 1000
owner: QuantitySchedule
domain_of:
- QuantitySchedule
- CSAValuationDate
range: Frequency
datedValue:
name: datedValue
description: A schedule of step date and value pairs. On each step date the associated
step value becomes effective. The step dates are used to order the steps by
ascending order. This attribute is optional so the data type may be used to
define a schedule with a single value.
from_schema: https://w3id.org/lmodel/common-domain-model
rank: 1000
owner: QuantitySchedule
domain_of:
- MeasureSchedule
- Schedule
range: DatedValue
multivalued: true
inlined: true
inlined_as_list: true
value:
name: value
description: Specifies the value of the measure as a number. Optional because
in a measure vector or schedule, this single value may be omitted.
from_schema: https://w3id.org/lmodel/common-domain-model
rank: 1000
owner: QuantitySchedule
domain_of:
- MeasureBase
- Schedule
- DatedValue
- Taxonomy
- TaxonomyClassification
- CodeValue
- AdjustmentFactor
- AccrualFactor
- DisputeResolution
- OtherEligibleAndPostedSupport
- CSAThresholdVariableSet
- CSAMinimumTransferAmountVariableSet
- MasterAgreementVariableSet
range: decimal
unit:
name: unit
description: Qualifies the unit by which the amount is measured. Optional because
a measure may be unit-less (e.g. when representing a ratio between amounts in
the same unit).
from_schema: https://w3id.org/lmodel/common-domain-model
rank: 1000
owner: QuantitySchedule
domain_of:
- MeasureBase
- Qty
- Term
range: UnitType
rules:
- postconditions:
slot_conditions:
unit:
name: unit
required: true
description: Requires that a unit of amount must be specified for any quantity.