Not every ER construct has a counterpart in the relational model. Generalizations, multivalued attributes and composite attributes are replaced here with entities, relationships and simple attributes.
Select an element that requires restructuring and click Fix. Generalizations must be processed first: the Fix button remains disabled for attributes as long as any unresolved generalizations remain.
Generalizations
| Option | Result | Available when |
|---|---|---|
| Collapse the children into the parent | The children are removed. Their attributes and participations move to the parent with minimum cardinality 0, and a new Type attribute tells the specializations apart. | Always |
| Collapse the parent into the children | The parent is removed. Its attributes and relationships are repeated in each child. | Total and exclusive only |
| Substitute with relationships (Subst.) | A one-to-one relationship IS_<CHILD> connects the parent to each child, providing external identification for the child. No structural elements are moved. | Always; the most general option |
Multivalued attributes
The attribute becomes an entity with the same name, connected to the original entity by a HAS_<ATTRIBUTE> relationship. The original entity keeps its initial cardinality. For the new entity:
- Unique (1,1): every value belongs to a single owner only (e.g., employee e-mail addresses).
- Shared (1,N): the same value can be linked to multiple owners (e.g., university degrees).
Composite attributes
- Split: each subattribute becomes an independent attribute; for example,
AddressbecomesAddress_Street,Address_Cityand so on. This approach is best suited for components that are queried separately. - Merge: a single attribute holds the combined, full value, such as
Address_Street_City_ZipCode.
When nothing is left to fix, click Translate. Reset undoes all restructuring choices, reverting the schema to its initial state. Click Design to return to the conceptual phase.