Relations
---------

Relations do not store data on the system. 
They relate groups of resource types such as device models and data
models.

The purpose of a Relation is to provide a model type that can group together
related models and then carry out operations on them. Model types are related
by joining them similarly to a SQL "left join". One or more fields can be
specified as foreign keys.

A relation of relations is not supported.

A Relation will show all the attributes of its model types by default. Even 
fields specified as foreign keys will appear for each of their respective 
model types. Unwanted attributes are hidden using a Field Display Policy, 
and default values of hidden attributes can be assigned using a Configuration 
Template.

Operations are added to Relations. Operations with associated workflows will
execute their custom workflow. *Add*, *modify* and *delete* operations without
workflows will execute a dynamic workflow that simply adds, modifies, or
deletes all related model instances. However, if a Relation for example
contains *shared* Phones or Lines (as the Subscriber relation), 
then these related model instances are not deleted.

.. |VOSS-4-UC| replace:: VOSS-4-UC
.. |Unified CM| replace:: Unified CM