Skip to content

Class: UnitType

Defines the unit to be used for price, quantity, or other purposes

URI: common_domain_model:UnitType

 classDiagram
    class UnitType
    click UnitType href "../UnitType/"
      UnitType : capacityUnit





        UnitType --> "0..1" CapacityUnitEnum : capacityUnit
        click CapacityUnitEnum href "../CapacityUnitEnum/"



      UnitType : currency

      UnitType : financialUnit





        UnitType --> "0..1" FinancialUnitEnum : financialUnit
        click FinancialUnitEnum href "../FinancialUnitEnum/"



      UnitType : weatherUnit





        UnitType --> "0..1" WeatherUnitEnum : weatherUnit
        click WeatherUnitEnum href "../WeatherUnitEnum/"



Slots

Name Cardinality and Range Description Inheritance
capacityUnit 0..1
CapacityUnitEnum
Provides an enumerated value for a capacity unit, generally used in the conte... direct
weatherUnit 0..1
WeatherUnitEnum
Provides an enumerated values for a weather unit, generally used in the conte... direct
financialUnit 0..1
FinancialUnitEnum
Provides an enumerated value for financial units, generally used in the conte... direct
currency 0..1
string
Defines the currency to be used as a unit for a price, quantity, or other pur... direct

Usages

used by used in type used
MeasureBase unit range UnitType
Measure unit range UnitType
MeasureSchedule unit range UnitType
QuantitySchedule unit range UnitType
Quantity unit range UnitType
NonNegativeQuantity unit range UnitType
NonNegativeQuantitySchedule unit range UnitType
PriceSchedule perUnitOf range UnitType
PriceSchedule unit range UnitType
Price perUnitOf range UnitType
Price unit range UnitType
Money unit range UnitType

Rules

Rule Applied Preconditions Postconditions Elseconditions

In Subsets

Comments

  • Rosetta condition: UnitType — one-of
  • Rosetta func: CompareQuantityByUnitOfAmount
  • Rosetta func: UnitEquals — Compares two UnitType to check if all attributes match.
  • Rosetta func: FilterQuantity — Filter list of quantities based on unit type.

Identifier and Mapping Information

Annotations

property value
rosetta_functions [{"name":"CompareQuantityByUnitOfAmount","inputs":[{"name":"quantity1","type":"Quantity","cardinality":"0.."},{"name":"op","type":"CompareOp","cardinality":"1..1"},{"name":"quantity2","type":"Quantity","cardinality":"0.."},{"name":"unitOfAmount","type":"UnitType","cardinality":"1..1"}],"output":{"name":"result","type":"boolean","cardinality":"1..1"}},{"name":"UnitEquals","description":"Compares two UnitType to check if all attributes match.","inputs":[{"name":"u1","type":"UnitType","cardinality":"0..1"},{"name":"u2","type":"UnitType","cardinality":"0..1"}],"output":{"name":"result","type":"boolean","cardinality":"1..1"}},{"name":"FilterQuantity","description":"Filter list of quantities based on unit type.","inputs":[{"name":"quantities","type":"Quantity","cardinality":"0.."},{"name":"unit","type":"UnitType","cardinality":"1..1"}],"output":{"name":"filteredQuantities","type":"Quantity","cardinality":"0.."}}]

Schema Source

Mappings

Mapping Type Mapped Value
self common_domain_model:UnitType
native common_domain_model:UnitType
close gist:UnitOfMeasure

LinkML Source

Direct

name: UnitType
annotations:
  rosetta_functions:
    tag: rosetta_functions
    value: '[{"name":"CompareQuantityByUnitOfAmount","inputs":[{"name":"quantity1","type":"Quantity","cardinality":"0..*"},{"name":"op","type":"CompareOp","cardinality":"1..1"},{"name":"quantity2","type":"Quantity","cardinality":"0..*"},{"name":"unitOfAmount","type":"UnitType","cardinality":"1..1"}],"output":{"name":"result","type":"boolean","cardinality":"1..1"}},{"name":"UnitEquals","description":"Compares
      two UnitType to check if all attributes match.","inputs":[{"name":"u1","type":"UnitType","cardinality":"0..1"},{"name":"u2","type":"UnitType","cardinality":"0..1"}],"output":{"name":"result","type":"boolean","cardinality":"1..1"}},{"name":"FilterQuantity","description":"Filter
      list of quantities based on unit type.","inputs":[{"name":"quantities","type":"Quantity","cardinality":"0..*"},{"name":"unit","type":"UnitType","cardinality":"1..1"}],"output":{"name":"filteredQuantities","type":"Quantity","cardinality":"0..*"}}]'
description: Defines the unit to be used for price, quantity, or other purposes
comments:
- 'Rosetta condition: UnitType  one-of'
- 'Rosetta func: CompareQuantityByUnitOfAmount'
- 'Rosetta func: UnitEquals  Compares two UnitType to check if all attributes match.'
- 'Rosetta func: FilterQuantity  Filter list of quantities based on unit type.'
in_subset:
- cdm_base_math
from_schema: https://w3id.org/lmodel/common-domain-model
close_mappings:
- gist:UnitOfMeasure
slots:
- capacityUnit
- weatherUnit
- financialUnit
- currency
rules:
- description: Requires that a unit type must be set.
  comments:
  - 'Rosetta one-of: exactly one slot must be present.'

Induced

name: UnitType
annotations:
  rosetta_functions:
    tag: rosetta_functions
    value: '[{"name":"CompareQuantityByUnitOfAmount","inputs":[{"name":"quantity1","type":"Quantity","cardinality":"0..*"},{"name":"op","type":"CompareOp","cardinality":"1..1"},{"name":"quantity2","type":"Quantity","cardinality":"0..*"},{"name":"unitOfAmount","type":"UnitType","cardinality":"1..1"}],"output":{"name":"result","type":"boolean","cardinality":"1..1"}},{"name":"UnitEquals","description":"Compares
      two UnitType to check if all attributes match.","inputs":[{"name":"u1","type":"UnitType","cardinality":"0..1"},{"name":"u2","type":"UnitType","cardinality":"0..1"}],"output":{"name":"result","type":"boolean","cardinality":"1..1"}},{"name":"FilterQuantity","description":"Filter
      list of quantities based on unit type.","inputs":[{"name":"quantities","type":"Quantity","cardinality":"0..*"},{"name":"unit","type":"UnitType","cardinality":"1..1"}],"output":{"name":"filteredQuantities","type":"Quantity","cardinality":"0..*"}}]'
description: Defines the unit to be used for price, quantity, or other purposes
comments:
- 'Rosetta condition: UnitType  one-of'
- 'Rosetta func: CompareQuantityByUnitOfAmount'
- 'Rosetta func: UnitEquals  Compares two UnitType to check if all attributes match.'
- 'Rosetta func: FilterQuantity  Filter list of quantities based on unit type.'
in_subset:
- cdm_base_math
from_schema: https://w3id.org/lmodel/common-domain-model
close_mappings:
- gist:UnitOfMeasure
attributes:
  capacityUnit:
    name: capacityUnit
    description: Provides an enumerated value for a capacity unit, generally used
      in the context of defining quantities for commodities.
    from_schema: https://w3id.org/lmodel/common-domain-model
    rank: 1000
    owner: UnitType
    domain_of:
    - UnitType
    - CommodityReferenceFramework
    range: CapacityUnitEnum
  weatherUnit:
    name: weatherUnit
    description: Provides an enumerated values for a weather unit, generally used
      in the context of defining quantities for commodities.
    from_schema: https://w3id.org/lmodel/common-domain-model
    rank: 1000
    owner: UnitType
    domain_of:
    - UnitType
    - CommodityReferenceFramework
    range: WeatherUnitEnum
  financialUnit:
    name: financialUnit
    description: Provides an enumerated value for financial units, generally used
      in the context of defining quantities for securities.
    from_schema: https://w3id.org/lmodel/common-domain-model
    rank: 1000
    owner: UnitType
    domain_of:
    - UnitType
    range: FinancialUnitEnum
  currency:
    name: currency
    annotations:
      metadata_scheme:
        tag: metadata_scheme
        value: true
    description: Defines the currency to be used as a unit for a price, quantity,
      or other purpose.
    from_schema: https://w3id.org/lmodel/common-domain-model
    rank: 1000
    owner: UnitType
    domain_of:
    - UnitType
    - CommodityReferenceFramework
    - NotDomesticCurrency
    - SpecifiedCurrency
    - LimitApplicable
    - CalculationCurrencyElection
    - CollateralRounding
    - TerminationCurrencyElection
    - ThresholdRatingsBased
    - MinimumTransferAmountRatingsBased
    - LegacyIndependentAmountRatingsBased
    - FloatingRateIndexIdentification
    - FeaturePayment
    - DividendCurrency
    - FutureValueAmount
    - AmountSchedule
    - CollateralInterestParameters
    - ComputedAmount
    range: string
rules:
- description: Requires that a unit type must be set.
  comments:
  - 'Rosetta one-of: exactly one slot must be present.'