Я изучаю UML для моделирования базы данных для проекта класса. По сути, база данных предназначена для социальной сети. Таблицы: пользователь, друзья, профиль, статус, wall_posts и комментарии. У меня возникли проблемы с определением точных отношений.
На первый взгляд кажется, что все таблицы имеют отношение композиции (различной кратности); у пользователя «есть» профиль (1-1), у пользователя «есть» друзья (1-0..*), сообщения на стене (1-0..*) и у сообщения на стене «есть» комментарии (1-0. .*). Если пользователь удаляется, эффект каскадируется и должен удалить все записи с этим идентификатором пользователя. В пользовательской таблице есть такая информация, как имя uid (которое не реплицируется в таблице wall_posts), поэтому что-то вроде записи сообщения необходимо удалить.
Есть ли изъян в моей логике?