Class: Price
Specifies a price as a single value to be associated to a financial product. This data type extends PriceSchedule and requires that only the amount value exists.
URI: common_domain_model:Price
classDiagram
class Price
click Price href "../Price/"
PriceSchedule <|-- Price
click PriceSchedule href "../PriceSchedule/"
Price : arithmeticOperator
Price --> "0..1" ArithmeticOperationEnum : arithmeticOperator
click ArithmeticOperationEnum href "../ArithmeticOperationEnum/"
Price : composite
Price --> "0..1" PriceComposite : composite
click PriceComposite href "../PriceComposite/"
Price : datedValue
Price --> "*" DatedValue : datedValue
click DatedValue href "../DatedValue/"
Price : perUnitOf
Price --> "0..1" UnitType : perUnitOf
click UnitType href "../UnitType/"
Price : premiumType
Price --> "0..1" PremiumTypeEnum : premiumType
click PremiumTypeEnum href "../PremiumTypeEnum/"
Price : priceExpression
Price --> "0..1" PriceExpressionEnum : priceExpression
click PriceExpressionEnum href "../PriceExpressionEnum/"
Price : priceSubType
Price --> "0..1" PriceSubTypeEnum : priceSubType
click PriceSubTypeEnum href "../PriceSubTypeEnum/"
Price : priceType
Price --> "1" PriceTypeEnum : priceType
click PriceTypeEnum href "../PriceTypeEnum/"
Price : unit
Price --> "0..1" UnitType : unit
click UnitType href "../UnitType/"
Price : value
Inheritance
Slots
| Name | Cardinality and Range | Description | Inheritance |
|---|---|---|---|
| perUnitOf | 0..1 UnitType |
Provides an attribute to define the unit of the thing being priced | PriceSchedule |
| priceType | 1 PriceTypeEnum |
Specifies the price type as an enumeration: interest rate, exchange rate, ass... | PriceSchedule |
| priceSubType | 0..1 PriceSubTypeEnum |
Allows further classification of the chosen price type | PriceSchedule |
| priceExpression | 0..1 PriceExpressionEnum |
(Optionally) Specifies whether the price is expressed in absolute or percenta... | PriceSchedule |
| composite | 0..1 PriceComposite |
(Optionally) Specifies the underlying price components if the price can be ex... | PriceSchedule |
| arithmeticOperator | 0..1 ArithmeticOperationEnum |
(Optionally) When the price is to be understood as an operator to apply to an... | PriceSchedule |
| premiumType | 0..1 PremiumTypeEnum |
(Optionally) Additional attribute that can further define any premium to the ... | PriceSchedule |
| 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 |
Usages
Rules
| Rule Applied | Preconditions | Postconditions | Elseconditions |
|---|---|---|---|
In Subsets
Comments
- Rosetta condition: AmountOnlyExists — value exists and datedValue is absent
Identifier and Mapping Information
Schema Source
- from schema: https://w3id.org/lmodel/common-domain-model
Mappings
| Mapping Type | Mapped Value |
|---|---|
| self | common_domain_model:Price |
| native | common_domain_model:Price |
| related | gist:Magnitude |
LinkML Source
Direct
name: Price
description: Specifies a price as a single value to be associated to a financial product.
This data type extends PriceSchedule and requires that only the amount value exists.
comments:
- 'Rosetta condition: AmountOnlyExists — value exists and datedValue is absent'
in_subset:
- cdm_observable_asset
from_schema: https://w3id.org/lmodel/common-domain-model
related_mappings:
- gist:Magnitude
is_a: PriceSchedule
rules:
- postconditions:
slot_conditions:
value:
name: value
required: true
datedValue:
name: datedValue
required: false
description: The amount must exist when the price represents a single value, and
steps must be absent.
Induced
name: Price
description: Specifies a price as a single value to be associated to a financial product.
This data type extends PriceSchedule and requires that only the amount value exists.
comments:
- 'Rosetta condition: AmountOnlyExists — value exists and datedValue is absent'
in_subset:
- cdm_observable_asset
from_schema: https://w3id.org/lmodel/common-domain-model
related_mappings:
- gist:Magnitude
is_a: PriceSchedule
attributes:
perUnitOf:
name: perUnitOf
description: Provides an attribute to define the unit of the thing being priced.
For example, {amount, unitOfAmount, PerUnitOfAmount} = [10, EUR, Shares] = (10.00
EUR/SHARE) * (300,000 SHARES) = EUR 3,000,000.00 (Shares cancel out in the calculation).
from_schema: https://w3id.org/lmodel/common-domain-model
rank: 1000
owner: Price
domain_of:
- PriceSchedule
range: UnitType
priceType:
name: priceType
description: 'Specifies the price type as an enumeration: interest rate, exchange
rate, asset price etc. This attribute is mandatory so that prices can always
be clasiffied according to their type. The price type implies some constraints
on the price''s units.'
from_schema: https://w3id.org/lmodel/common-domain-model
rank: 1000
owner: Price
domain_of:
- PriceSchedule
range: PriceTypeEnum
required: true
priceSubType:
name: priceSubType
description: Allows further classification of the chosen price type.
from_schema: https://w3id.org/lmodel/common-domain-model
rank: 1000
owner: Price
domain_of:
- PriceSchedule
range: PriceSubTypeEnum
priceExpression:
name: priceExpression
description: (Optionally) Specifies whether the price is expressed in absolute
or percentage terms.
from_schema: https://w3id.org/lmodel/common-domain-model
rank: 1000
owner: Price
domain_of:
- PriceSchedule
range: PriceExpressionEnum
composite:
name: composite
description: '(Optionally) Specifies the underlying price components if the price
can be expressed as a composite: e.g. dirty price = clean price + accrued.'
from_schema: https://w3id.org/lmodel/common-domain-model
rank: 1000
owner: Price
domain_of:
- PriceSchedule
- FxFeature
range: PriceComposite
arithmeticOperator:
name: arithmeticOperator
description: (Optionally) When the price is to be understood as an operator to
apply to an observable, i.e. a spread, multiplier or min/max.
from_schema: https://w3id.org/lmodel/common-domain-model
rank: 1000
owner: Price
domain_of:
- PriceComposite
- PriceSchedule
range: ArithmeticOperationEnum
required: false
premiumType:
name: premiumType
description: (Optionally) Additional attribute that can further define any premium
to the price.
from_schema: https://w3id.org/lmodel/common-domain-model
rank: 1000
owner: Price
domain_of:
- PriceSchedule
range: PremiumTypeEnum
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: Price
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: Price
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: Price
domain_of:
- MeasureBase
- Qty
- Term
range: UnitType
rules:
- postconditions:
slot_conditions:
value:
name: value
required: true
datedValue:
name: datedValue
required: false
description: The amount must exist when the price represents a single value, and
steps must be absent.