Views:

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 its history of economic activity in a particular portfolio

The full set of LUSID entities and their key characteristics are listed in the table below. If you need to extend the built-in set, you can create 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 therefore uniquely identifies that entity. Some entities can have multiple identifiers, in which case the entity can be addressed using any of its identifiers, 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).
  • A property is perpetual if its value is not expected to change, for example a person's date of birth, or time-variant if it is, for example a person's address.
  • A derived property has a value that is not hard-coded but rather calculated on demand by a mathematical or similar operation.

There's also a related table summarising access control support for entities here.

  Identifiers CRUD operations User-defined properties
Entity type Scoped entity? Identified by Multiple identifiers? Scoped identifiers? Create Get List Update Delete Property domain Perpetual multi-value properties? Perpetual properties? Time-variant multi-value properties? Time-variant properties? Derived properties?
Allocation TRUE Code/Scope FALSE FALSE TRUE TRUE TRUE TRUE TRUE Allocation TRUE TRUE TRUE TRUE TRUE
Block TRUE Code/Scope FALSE FALSE TRUE TRUE TRUE TRUE TRUE Block TRUE TRUE TRUE TRUE TRUE
Calendar TRUE Code/Scope FALSE FALSE TRUE TRUE TRUE TRUE TRUE Calendar TRUE TRUE TRUE TRUE TRUE
Cds Flow Convention TRUE Code/Scope FALSE FALSE TRUE TRUE TRUE TRUE TRUE -NA- -NA- -NA- -NA- -NA- -NA-
Configuration Recipe TRUE Code/Scope FALSE FALSE TRUE TRUE TRUE TRUE TRUE ConfigurationRecipe FALSE FALSE FALSE FALSE FALSE
Corporate Action Source TRUE Code/Scope FALSE FALSE TRUE FALSE TRUE FALSE TRUE -NA- -NA- -NA- -NA- -NA- -NA-
Counterparty Agreement TRUE Code/Scope FALSE FALSE TRUE TRUE TRUE TRUE TRUE -NA- -NA- -NA- -NA- -NA- -NA-
Credit Support Annex TRUE Code/Scope FALSE FALSE TRUE TRUE TRUE TRUE TRUE -NA- -NA- -NA- -NA- -NA- -NA-
Custom Entity FALSE Identifiervalue/Identifierscope/
Identifiertype/Entitytype
TRUE TRUE TRUE TRUE TRUE TRUE TRUE CustomEntity FALSE TRUE FALSE TRUE TRUE
Custom Entity Definition FALSE Entitytype FALSE FALSE TRUE TRUE TRUE FALSE FALSE -NA- -NA- -NA- -NA- -NA- -NA-
Data Type TRUE Code/Scope FALSE FALSE TRUE TRUE TRUE TRUE FALSE -NA- -NA- -NA- -NA- -NA- -NA-
Derived Portfolio TRUE Code/Scope FALSE FALSE TRUE TRUE TRUE TRUE TRUE Portfolio TRUE TRUE TRUE TRUE TRUE
Execution TRUE Code/Scope FALSE FALSE TRUE TRUE TRUE TRUE TRUE Execution TRUE TRUE TRUE TRUE TRUE
Flow Convention TRUE Code/Scope FALSE FALSE TRUE TRUE TRUE TRUE TRUE -NA- -NA- -NA- -NA- -NA- -NA-
Holding TRUE -Determined by transaction portfolio- FALSE FALSE FALSE TRUE TRUE TRUE TRUE Holding FALSE TRUE FALSE FALSE TRUE
Index Convention TRUE Code/Scope FALSE FALSE TRUE TRUE TRUE TRUE TRUE -NA- -NA- -NA- -NA- -NA- -NA-
Instrument TRUE Identifiertype/Identifier/Scope TRUE FALSE TRUE TRUE TRUE TRUE TRUE Instrument TRUE TRUE TRUE TRUE TRUE
Legal Entity FALSE Idtypecode/Code/Idtypescope TRUE TRUE TRUE TRUE TRUE TRUE TRUE LegalEntity TRUE TRUE TRUE TRUE TRUE
Order TRUE Code/Scope FALSE FALSE TRUE TRUE TRUE TRUE TRUE Order TRUE TRUE TRUE TRUE TRUE
Order Instruction TRUE Code/Scope FALSE FALSE TRUE TRUE TRUE TRUE TRUE OrderInstruction TRUE TRUE TRUE TRUE TRUE
Package TRUE Code/Scope FALSE FALSE TRUE TRUE TRUE TRUE TRUE Package TRUE TRUE TRUE TRUE TRUE
Participation TRUE Code/Scope FALSE FALSE TRUE TRUE TRUE TRUE TRUE Participation TRUE TRUE TRUE TRUE TRUE
Person FALSE Idtypecode/Code/Idtypescope TRUE TRUE TRUE TRUE TRUE TRUE TRUE Person TRUE TRUE TRUE TRUE TRUE
Placement TRUE Code/Scope FALSE FALSE TRUE TRUE TRUE TRUE TRUE Placement TRUE TRUE TRUE TRUE TRUE
Portfolio TRUE Code/Scope FALSE FALSE TRUE TRUE TRUE TRUE TRUE Portfolio TRUE TRUE TRUE TRUE TRUE
Portfolio Group TRUE Code/Scope FALSE FALSE TRUE TRUE TRUE TRUE TRUE PortfolioGroup TRUE TRUE TRUE TRUE TRUE
Property Definition TRUE Scope/Code/Domain FALSE FALSE TRUE TRUE FALSE TRUE TRUE -NA- -NA- -NA- -NA- -NA- -NA-
Quote TRUE Scope/QuoteSeriesId FALSE FALSE TRUE TRUE TRUE TRUE TRUE -NA- -NA- -NA- -NA- -NA- -NA-
Reference Portfolio TRUE Code/Scope FALSE FALSE TRUE TRUE TRUE TRUE TRUE Portfolio TRUE TRUE TRUE TRUE TRUE
Relationship Definition TRUE Code/Scope FALSE FALSE TRUE TRUE TRUE TRUE TRUE -NA- -NA- -NA- -NA- -NA- -NA-
Transaction TRUE -Determined by transaction portfolio- FALSE FALSE TRUE TRUE TRUE TRUE TRUE Transaction FALSE TRUE FALSE FALSE TRUE
Transaction Portfolio TRUE Code/Scope FALSE FALSE TRUE TRUE TRUE TRUE TRUE Portfolio TRUE TRUE TRUE TRUE TRUE