LUSID's data model is designed to be flexible rather than constrain your data to our view of the world. We require you to model only a small set of real-world objects as entities. For example:
An instrument represents a real-world financial asset such as an equity, swap, option, bond, currency and more.
A transaction represents economic activity in a particular instrument, such as the purchase or sale of a quantity of an equity.
A portfolio represents a store of transactions and other economic activity affecting one or more instruments.
A holding represents your position in a particular instrument, automatically calculated by LUSID from the history of economic activity in a portfolio.
The full set of LUSID entities and their key characteristics are listed in the table below. You can extend the built-in set by creating custom entities.
Note the following:
Transactions and holdings are stored in portfolios, so some of their characteristics are determined by the 'parent' transaction portfolio.
A scoped entity is one that exists in a logical data partition known as a scope. You can use scopes for numerous purposes, including setting access control permissions to determine who can see or change the entity.
An identifier is a set of attributes that combine to identify an entity in some way. Most entities have a single identifier whose value uniquely identifies that entity. Some entities can have multiple identifiers, in which case the entity can be addressed by any, though note an identifier value may be shared between multiple entities. A scoped identifier is an identifier that can itself be scoped (separately to the 'parent' entity).
You can extend the core data model of an entity by adding custom properties. A property is perpetual if its value is not expected to vary during different time periods (ie. a person's date of birth), and time-variant if it is (ie. a person's address). Note any property can change (that is, be corrected, and previous values retrieved using LUSID's bitemporal as at timeline); perpetuality refers to validity rather than mutability.
A derived property has a value that is not hard-coded but rather calculated on demand by a mathematical or similar operation.
See also these related tables summarising:
Access control support for entities.
Perpetual and time-variant support for entities and for component parts such as identifiers and data fields as well as properties.
| Identifiers | CRUD operations | Custom properties | ||||||||||||
Entity type | Scoped entity? | Identified by | Multiple identifiers? | Scoped identifiers? | Create | Get | List | Update | Delete | Property domain | Perpetual properties? | Perpetual multi-value properties? | Time-variant properties? | Time-variant multi-value properties? | Derived properties? |
TRUE | Scope/Code | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | Abor | TRUE | TRUE | TRUE | TRUE | FALSE | |
TRUE | Scope/Code | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | AborConfiguration | TRUE | TRUE | TRUE | TRUE | FALSE | |
TRUE | Scope/Code | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | Allocation | TRUE | TRUE | TRUE | TRUE | FALSE | |
TRUE | Scope/Code | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | Block | TRUE | TRUE | TRUE | TRUE | FALSE | |
TRUE | Scope/Code | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | Calendar | TRUE | TRUE | TRUE | TRUE | FALSE | |
TRUE | Scope/Code | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | N/A | N/A | N/A | N/A | N/A | N/A | |
TRUE | Scope/Code | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | ChartOfAccounts | TRUE | TRUE | TRUE | TRUE | FALSE | |
TRUE | Scope/Code | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | ConfigurationRecipe | FALSE | FALSE | FALSE | FALSE | FALSE | |
TRUE | Scope/Code | FALSE | FALSE | TRUE | FALSE | TRUE | FALSE | TRUE | N/A | N/A | N/A | N/A | N/A | N/A | |
Counterparty Agreement | TRUE | Scope/Code | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | N/A | N/A | N/A | N/A | N/A | N/A |
Credit Support Annex | TRUE | Scope/Code | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | N/A | N/A | N/A | N/A | N/A | N/A |
Custodian Account | TRUE | Scope/Code | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | CustodianAccount | TRUE | FALSE | TRUE | FALSE | FALSE |
FALSE | EntityType/IdentifierScope/ IdentifierType/IdentifierValue/ RelationshipDefinitionIds | TRUE | TRUE | TRUE | TRUE | TRUE | TRUE | TRUE | CustomEntity | TRUE | FALSE | TRUE | FALSE | FALSE | |
FALSE | EntityType | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | FALSE | N/A | N/A | N/A | N/A | N/A | N/A | |
FALSE | Code | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | CutLabelDefinition | FALSE | FALSE | FALSE | FALSE | FALSE | |
TRUE | Scope/Code | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | FALSE | N/A | N/A | N/A | N/A | N/A | N/A | |
TRUE | Scope/Code/RelationshipDefinitionIds | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | Portfolio | TRUE | TRUE | TRUE | TRUE | TRUE | |
TRUE | AborScope/AborCode/DiaryEntryCode | FALSE | FALSE | TRUE | FALSE | TRUE | FALSE | FALSE | DiaryEntry | TRUE | TRUE | TRUE | TRUE | FALSE | |
TRUE | Scope/Code | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | Execution | TRUE | TRUE | TRUE | TRUE | FALSE | |
TRUE | Scope/Code | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | N/A | N/A | N/A | N/A | N/A | N/A | |
Fund | TRUE | Scope/Code | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | AborConfiguration | TRUE | TRUE | TRUE | TRUE | FALSE |
TRUE | -Determined by transaction portfolio- | FALSE | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | Holding | TRUE | TRUE | FALSE | FALSE | TRUE | |
TRUE | Scope/Code | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | N/A | N/A | N/A | N/A | N/A | N/A | |
TRUE | IdentifierType/IdentifierValue/Scope/ RelationshipDefinitionIds | TRUE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | Instrument | TRUE | TRUE | TRUE | TRUE | TRUE | |
TRUE | Scope/Code/InstrumentEventIds | FALSE | FALSE | TRUE | TRUE | FALSE | TRUE | TRUE | InstrumentEvent | TRUE | TRUE | FALSE | FALSE | FALSE | |
FALSE | IdTypeScope/IdTypeCode/Code/ RelationshipDefinitionIds | TRUE | TRUE | TRUE | TRUE | TRUE | TRUE | TRUE | LegalEntity | TRUE | TRUE | TRUE | TRUE | TRUE | |
TRUE | Scope/Code | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | Order | TRUE | TRUE | TRUE | TRUE | FALSE | |
Order Instruction | TRUE | Scope/Code | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | OrderInstruction | TRUE | TRUE | TRUE | TRUE | FALSE |
Package | TRUE | Scope/Code | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | Package | TRUE | TRUE | TRUE | TRUE | FALSE |
Participation | TRUE | Scope/Code | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | Participation | TRUE | TRUE | TRUE | TRUE | FALSE |
FALSE | IdTypeScope/IdTypeCode/Code/ RelationshipDefinitionIds | TRUE | TRUE | TRUE | TRUE | TRUE | TRUE | TRUE | Person | TRUE | TRUE | TRUE | TRUE | TRUE | |
TRUE | Scope/Code | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | Placement | TRUE | TRUE | TRUE | TRUE | FALSE | |
TRUE | Scope/Code/RelationshipDefinitionIds | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | Portfolio | TRUE | TRUE | TRUE | TRUE | TRUE | |
TRUE | Scope/Code/RelationshipDefinitionIds | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | PortfolioGroup | TRUE | TRUE | TRUE | TRUE | FALSE | |
TRUE | Domain/Scope/Code | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | N/A | N/A | N/A | N/A | N/A | N/A | |
TRUE | Scope/QuoteSeriesId | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | N/A | N/A | N/A | N/A | N/A | N/A | |
TRUE | Scope/Code | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | N/A | N/A | N/A | N/A | N/A | N/A | |
TRUE | Scope/Code/RelationshipDefinitionIds | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | Portfolio | TRUE | TRUE | TRUE | TRUE | TRUE | |
TRUE | Scope/Code | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | N/A | N/A | N/A | N/A | N/A | N/A | |
TRUE | Scope/Side | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | N/A | N/A | N/A | N/A | N/A | N/A | |
TRUE | Scope/Code | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | N/A | N/A | N/A | N/A | N/A | N/A | |
TRUE | -Determined by transaction portfolio- | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | Transaction | TRUE | TRUE | FALSE | FALSE | TRUE | |
Transaction Fee Rule | FALSE | Code | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | N/A | N/A | N/A | N/A | N/A |
|
TRUE | InstrumentEventType/InstrumentType/ Scope | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | N/A | N/A | N/A | N/A | N/A | N/A | |
TRUE | Scope/Source/Type | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | TransactionConfiguration | TRUE | FALSE | FALSE | FALSE | FALSE | |
TRUE | Scope/Source | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE | TRUE | N/A | N/A | N/A | N/A | N/A | N/A | |
TRUE | Scope/Code/RelationshipDefinitionIds | FALSE | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | Portfolio | TRUE | TRUE | TRUE | TRUE | TRUE |