Class: TradeIdentifier
Defines a trade identifier as a special case of the generic identifier type, that also includes the trade identifier class.
URI: common_domain_model:TradeIdentifier
classDiagram
class TradeIdentifier
click TradeIdentifier href "../TradeIdentifier/"
Identifier <|-- TradeIdentifier
click Identifier href "../Identifier/"
TradeIdentifier : assignedIdentifier
TradeIdentifier --> "1..*" AssignedIdentifier : assignedIdentifier
click AssignedIdentifier href "../AssignedIdentifier/"
TradeIdentifier : identifierType
TradeIdentifier --> "0..1" TradeIdentifierTypeEnum : identifierType
click TradeIdentifierTypeEnum href "../TradeIdentifierTypeEnum/"
TradeIdentifier : issuer
TradeIdentifier : issuerReference
TradeIdentifier --> "0..1" Party : issuerReference
click Party href "../Party/"
Inheritance
- Identifier
- TradeIdentifier
Slots
| Name | Cardinality and Range | Description | Inheritance |
|---|---|---|---|
| identifierType | 0..1 TradeIdentifierTypeEnum |
The enumerated classification of the identifier | direct |
| issuerReference | 0..1 Party |
The identifier issuer, when specified by reference to a party specified as pa... | Identifier |
| issuer | 0..1 string |
The identifier issuer, when specified explicitly alongside the identifier val... | Identifier |
| assignedIdentifier | 1..* AssignedIdentifier |
The identifier value | Identifier |
Usages
| used by | used in | type | used |
|---|---|---|---|
| ExecutionInstruction | tradeIdentifier | range | TradeIdentifier |
| ExerciseInstruction | replacementTradeIdentifier | range | TradeIdentifier |
| PartyChangeInstruction | tradeId | range | TradeIdentifier |
| Trade | tradeIdentifier | range | TradeIdentifier |
In Subsets
Comments
- Rosetta func: Create_PartyChange — Defines the logic for changing one of the counterparties on a trade. A new trade identifier must be specified as a change of party results in a new trade. An ancillary party can also be specified, for instance to refer to the original executing party on the new trade.
Identifier and Mapping Information
Annotations
| property | value |
|---|---|
| rosetta_functions | [{"name":"Create_PartyChange","description":"Defines the logic for changing one of the counterparties on a trade. A new trade identifier must be specified as a change of party results in a new trade. An ancillary party can also be specified, for instance to refer to the original executing party on the new trade.","inputs":[{"name":"counterparty","type":"Counterparty","cardinality":"1..1"},{"name":"ancillaryParty","type":"AncillaryParty","cardinality":"0..1"},{"name":"partyRole","type":"PartyRole","cardinality":"0..1"},{"name":"tradeId","type":"TradeIdentifier","cardinality":"1..*"},{"name":"originalTrade","type":"TradeState","cardinality":"1..1"}],"output":{"name":"newTrade","type":"TradeState","cardinality":"1..1"}}] |
Schema Source
- from schema: https://w3id.org/lmodel/common-domain-model
Mappings
| Mapping Type | Mapped Value |
|---|---|
| self | common_domain_model:TradeIdentifier |
| native | common_domain_model:TradeIdentifier |
LinkML Source
Direct
name: TradeIdentifier
annotations:
rosetta_functions:
tag: rosetta_functions
value: '[{"name":"Create_PartyChange","description":"Defines the logic for changing
one of the counterparties on a trade. A new trade identifier must be specified
as a change of party results in a new trade. An ancillary party can also be
specified, for instance to refer to the original executing party on the new
trade.","inputs":[{"name":"counterparty","type":"Counterparty","cardinality":"1..1"},{"name":"ancillaryParty","type":"AncillaryParty","cardinality":"0..1"},{"name":"partyRole","type":"PartyRole","cardinality":"0..1"},{"name":"tradeId","type":"TradeIdentifier","cardinality":"1..*"},{"name":"originalTrade","type":"TradeState","cardinality":"1..1"}],"output":{"name":"newTrade","type":"TradeState","cardinality":"1..1"}}]'
description: Defines a trade identifier as a special case of the generic identifier
type, that also includes the trade identifier class.
comments:
- 'Rosetta func: Create_PartyChange — Defines the logic for changing one of the counterparties
on a trade. A new trade identifier must be specified as a change of party results
in a new trade. An ancillary party can also be specified, for instance to refer
to the original executing party on the new trade.'
in_subset:
- cdm_event_common
from_schema: https://w3id.org/lmodel/common-domain-model
is_a: Identifier
slots:
- identifierType
slot_usage:
identifierType:
name: identifierType
description: The enumerated classification of the identifier. Optional as a trade
identifier may be party-specific, in which case it may not correspond to any
established classification.
range: TradeIdentifierTypeEnum
required: false
Induced
name: TradeIdentifier
annotations:
rosetta_functions:
tag: rosetta_functions
value: '[{"name":"Create_PartyChange","description":"Defines the logic for changing
one of the counterparties on a trade. A new trade identifier must be specified
as a change of party results in a new trade. An ancillary party can also be
specified, for instance to refer to the original executing party on the new
trade.","inputs":[{"name":"counterparty","type":"Counterparty","cardinality":"1..1"},{"name":"ancillaryParty","type":"AncillaryParty","cardinality":"0..1"},{"name":"partyRole","type":"PartyRole","cardinality":"0..1"},{"name":"tradeId","type":"TradeIdentifier","cardinality":"1..*"},{"name":"originalTrade","type":"TradeState","cardinality":"1..1"}],"output":{"name":"newTrade","type":"TradeState","cardinality":"1..1"}}]'
description: Defines a trade identifier as a special case of the generic identifier
type, that also includes the trade identifier class.
comments:
- 'Rosetta func: Create_PartyChange — Defines the logic for changing one of the counterparties
on a trade. A new trade identifier must be specified as a change of party results
in a new trade. An ancillary party can also be specified, for instance to refer
to the original executing party on the new trade.'
in_subset:
- cdm_event_common
from_schema: https://w3id.org/lmodel/common-domain-model
is_a: Identifier
slot_usage:
identifierType:
name: identifierType
description: The enumerated classification of the identifier. Optional as a trade
identifier may be party-specific, in which case it may not correspond to any
established classification.
range: TradeIdentifierTypeEnum
required: false
attributes:
identifierType:
name: identifierType
description: The enumerated classification of the identifier. Optional as a trade
identifier may be party-specific, in which case it may not correspond to any
established classification.
from_schema: https://w3id.org/lmodel/common-domain-model
close_mappings:
- fpml_5_10:AssetIdentifier.identifierType
rank: 1000
owner: TradeIdentifier
domain_of:
- AssetIdentifier
- PartyIdentifier
- EntityIdentifier
- PersonIdentifier
- TradeIdentifier
- PositionIdentifier
- NonLegalEntity
range: TradeIdentifierTypeEnum
required: false
issuerReference:
name: issuerReference
annotations:
metadata_reference:
tag: metadata_reference
value: true
description: The identifier issuer, when specified by reference to a party specified
as part of the transaction.
from_schema: https://w3id.org/lmodel/common-domain-model
rank: 1000
owner: TradeIdentifier
domain_of:
- Identifier
range: Party
issuer:
name: issuer
annotations:
metadata_scheme:
tag: metadata_scheme
value: true
description: The identifier issuer, when specified explicitly alongside the identifier
value (instead of being specified by reference to a party).
from_schema: https://w3id.org/lmodel/common-domain-model
rank: 1000
owner: TradeIdentifier
domain_of:
- Identifier
range: string
assignedIdentifier:
name: assignedIdentifier
description: The identifier value. This level of indirection between the issuer
and the identifier and its version provides the ability to associate multiple
identifiers to one issuer, consistently with the FpML PartyTradeIdentifier.
from_schema: https://w3id.org/lmodel/common-domain-model
rank: 1000
owner: TradeIdentifier
domain_of:
- Identifier
range: AssignedIdentifier
required: true
multivalued: true
inlined: true
inlined_as_list: true