Contains domains

Normally parent-child relationships define the domain hierarchy. A Contains domain allows you to relate domains on an as-needed basis, independent of parent-child relationships.

However, contains domains only grant visibility to domain data. Processes remain unaffected by contains relationships.

Note: Visibility controls what a particular user can see, while Contains controls what an entire domain of users can see.

Contains domains versus visibility domains

Contains domains and visibility domains differ in several respects.

A contains domain:
  • Is a many-to-many, domain-to-domain relationship.
  • Is hierarchical. When a domain is selected, you can see the data from that domain and its children.
  • Is controlled by the selection in the domain picker.
A visibility domain:
  • Is a user-to-domain relationship and is explicitly granted.
  • Is not hierarchical.
  • Is not controlled by the selection in the domain picker. Once the user is granted access to a visibility domain, they always see data in that domain and its children.

For example, there is a user who has access to domain A (the user's home domain) and is granted visibility to domains B and C. The user selects domain A in the domain picker. In this case, the user has access to domains A, B, and C. If the user changes the domain picker to domain B, B and C are visible. C is still visible because the user still has visibility to it. A is not visible, because it is not selected in the domain picker and it is not a visibility domain.

Using visibility domains excessively is not recommended.