%%{init: { 'theme': 'forest' }}%% erDiagram USER ||--o{ ARTICLE : author ARTICLE }o--|| CATEGORY : belongs_to USER ||--o{ COMMENT : writes COMMENT ||--o{ COMMENT_REACTION : has USER ||--o{ COMMENT_REACTION : reacts USER ||--o{ COMMENT_BAN : ban USER ||--o{ UNBAN_REQUEST : request COMMENT ||--o{ COMMENT_REPORT : reported USER ||--o{ USER_PROFILE : has POLL ||--o{ POLL_OPTION : has POLL ||--o{ POLL_VOTE : has USER ||--o{ POLL_VOTE : votes SHORT_LINK ||--o{ LINK_CLICK : tracked SWEEPSTAKE ||--o{ SWEEPSTAKE_PRIZE : has SWEEPSTAKE ||--o{ SWEEPSTAKE_ENTRY : has SWEEPSTAKE ||--o{ SWEEPSTAKE_WINNER : has UPLOADED_FILE ||--o{ FILE_USAGE : used_in NAVIGATION_ITEM ||--o{ ARTICLE : links SOCIAL_LINK ||--o{ NAVIGATION_ITEM : part_of TEAM ||--o{ PLAYER : has COMPETITION_ALIAS ||--o{ TEAM : member_of SCOREBOARD_STATE ||..|| ARTICLE : references CONTACT ||--o{ CONTACT_MESSAGE : has CONTACT_CATEGORY ||--o{ CONTACT : categorizes NEWSLETTER_SUBSCRIPTION ||..|| CONTACT : same_person ERROR_EVENT ||..|| USER : context %% Note: Names reflect models; exact FKs are simplified for overview