PowerDesigner provides default model checks to verify the validity of relationships.
Check |
Description and Correction |
---|---|
Relationship name and code uniqueness |
Relationship names and codes must be unique in the model. Manual correction: Modify the duplicate name/code Automatic correction: Appends a number to the duplicate name/code. |
Reflexive dependency |
A dependency means that one entity is defined through a relationship with another. A dependent relationship cannot therefore be reflexive. Manual correction: Change or delete the reflexive dependency. Automatic correction: None. |
Reflexive mandatory |
A reflexive mandatory relationship exists. Manual correction: Deselect the Mandatory check boxes for the relationship to be non-mandatory. Automatic correction: None. |
Bijective relationship between two entities |
There is a bijective relationship between two entities when there is a two-way one to one relationship between the entities. This is equivalent to a merge of two entities. Manual correction: Merge the entities or modify the relationship. Automatic correction: None. |
Name uniqueness constraint for many to many relationships and entities |
A many-to-many relationship and an entity cannot have the same name or code. Manual correction: Change the name or code of the many-to-many relationship or the name or code of the entity. If you do not, PDM generation will rename the generated table. Automatic correction: None. |
Consistency between dominant and dependent relationships |
A dependent relationship between entities cannot also be a dominant relationship. Manual correction: Select the Dominant check box on the other (correct) side of the relationship. Automatic correction: None. |
Relationship with child shortcut |
External shortcut could be generated as child table. An entity that is at the "many" end of a one-to-many relationship or which is non-dominant should not be an external shortcut as the reference will not be generated during the generation of a PDM. Manual correction: Change the cardinality of the relationship cardinality or the entity, which should not be an external shortcut. Automatic correction: None. |
'Many-many' relationships |
[LDM only] 'Many-to-many' relationships are not permitted. Manual correction: Create an intermediary entity, which contains the primary identifiers of the previous 'many-to-many' entities. Automatic correction: None. |