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
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.
- 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
- Is controlled by the selection in the domain picker.
- 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
Using visibility domains excessively is not recommended.