Relationship Constraints Tab
The Relationship Constraints tab on a link type information page allows you to define the set of valid object-to-object relationships, or relationship constraints, for certain link types and link subtypes. Only constrainable links, those link types or subtypes which can be constrained, have a Relationship Constraints tab.
A relationship constraint defines which object types can be related to other object types using a particular link type. A relationship constraint is made up of a parent object type (which owns the relationship), a specified link type, and one or more child object types, as in the following:
Once created, relationship constraints are enforced only when new links are created. Existing link relationships are not affected by new relationship constraints.
Each defined relationship constraint displays as a table row on the Relationship Constraints tab. For example, the following graphic shows the relationship constraint defined out-of-the-box on the Part Usage link type:
With this relationship constraint defined, where the Part Usage link is used to create object-to-object associations, such as on the Structure tab of a part information page, or in the Part Structure Browser, only Part type objects can be added.
System-defined relationship constraints are displayed first in the table, followed by any relationship constraints that you have created.
| System-defined relationship constraints cannot be edited or deleted. |
Relationship constraints are inherited by any subtypes of the Parent Type and Child Types, unless explicitly overridden by another relationship constraint. The relationship constraint in the previous graphic is inherited by all subtypes of the Part type. You could choose, however, to create a relationship constraint for subtypes of the Part type that overrides the existing relationship constraint.