Most entities in LUSID reside within a logical data partition known as a scope. A scope is an identity namespace allowing two entities with the same code to co-exist in individual address spaces. For more entities therefore, the scope forms part of the unique identifier along with the code. See identifiers for different entities.
See also: These articles for extra information about instrument scopes and transaction type scopes.
For example, quote entities for equities from different vendors can be uploaded into different scopes such as Refinitiv and Bloomberg. A portfolio may then be valued using either of the price sources by referencing the appropriate scope.
Scopes can be used in a number of ways.
- To model organisational departments in your company.
- To act as entitlement boundaries (users can be granted or denied permission to read/write all portfolios in a given scope).
- To allow for a personal folder or research area for every user (and entitle only them to write to it as a side benefit).
- To allow for multiple providers of the same piece of information. For instance, one portfolio could be provided by your (scopes in bold):
- Fund Accountant [FA/myPortfolio]
- Custodian [Cust/myPortfolio]
- Middle Office [MO/myPortfolio]
- Transfer Agent [TA/myPortfolio]
- my own copy [dave/myPortfolio]
There are many more uses for scopes including the safe provision of a UAT environment in your production system. If you have any further questions, get in touch.
This concept enables us to load multiple copies of what is logically the same data, compare them, safely modify them as required and entitle people to see only what they need to.
A scope must be no more than 64 characters in length and consist entirely of the following characters:
- Lowercase and uppercase letters
- Numbers
- Dash (
-
) - Underscore (
_
)
Note that there is no need to create a scope before using it. When you specify a scope in a request to load data into LUSID it is automatically created for you if it does not exist.