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 between 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. |
Identifier link from child entity |
[Barker notation CDM only] A child entity may not be dependant on any entity other than its parents. Manual correction: Remove the dependant relationship with the non-parent. 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. |