Changes between Version 4 and Version 5 of Normalization


Ignore:
Timestamp:
04/21/26 00:43:56 (11 days ago)
Author:
221296
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Normalization

    v4 v5  
    4141=== Functional dependencies (initial set)
    4242
     43The following functional dependencies represent the initial global set of dependencies that hold in the universal de-normalized relation R for the Online Learning Platform Management System (OLPMS).
     44
     45They are derived from the semantics of the ER model and the business rules of the system. The goal is to capture the essential determinants that will later guide the normalization process.
     46
    4347User / specialization
    4448{{{
    45 FD1: user_id → username, email, name, surname, full_name, password_hash, user_created_at
    46 FD2: client_id → user_id, is_blocked, blocked_at, blocked_reason
     49FD1: user_id → first_name, last_name, email, password, role 
     50FD2: instructor_id → user_id 
    4751FD3: admin_id → user_id
    48 FD4: owner_id → client_id
    49 }}}
    50 
    51 Notification
    52 {{{
    53 FD5: notification_id → notification_type, notification_message, notification_created_at, is_read, user_id
    54 }}}
    55 
    56 Vet Clinic / application
    57 {{{
    58 FD6: clinic_id → clinic_name, clinic_email, clinic_phone, clinic_address, clinic_location, clinic_city
    59 FD7: application_id → app_name, app_email, app_phone, app_city, app_address, submitted_at, app_status, reviewed_at, reviewed_by, denial_reason, clinic_id
    60 }}}
    61 
    62 Animal
    63 {{{
    64 FD8: animal_id → animal_name, located_name, species, animal_type, breed, sex, date_of_birth, photo_url, owner_id
    65 }}}
    66 
    67 Listing
    68 {{{
    69 FD9: listing_id → listing_status, listing_created_at, price, listing_description, animal_id, admin_id
    70 }}}
    71 
    72 Appointment
    73 {{{
    74 FD10: appointment_id → date_time, appointment_status, notes, animal_id, clinic_id
    75 }}}
    76 
    77 Health Record
    78 {{{
    79 FD11: healthrecord_id → hr_type, hr_description, hr_date, animal_id, appointment_id
    80 }}}
    81 
    82 Review and subtypes
    83 {{{
    84 FD12: review_id → reviewer_id, rating, comment, review_created_at, updated_at, is_deleted
    85 FD13: review_id → target_user_id
    86 FD14: review_id → target_clinic_id
    87 }}}
    88 
    89 Favorite Listing
    90 {{{
    91 The relation FavoriteListings has composite key (saved_user_id, saved_listing_id)
    92 and no additional non-trivial functional dependencies.
     52}}}
     53
     54Subscription plan / subscription / payment
     55{{{
     56FD4: plan_id → plan_name, price, duration_months, access_type 
     57FD5: subscription_id → user_id_sub, plan_id_sub, start_date, end_date, subscription_status 
     58FD6: payment_id → user_id_pay, subscription_id_pay, amount 
     59}}}
     60
     61Support ticket
     62{{{
     63FD7: ticket_id → user_id_ticket, admin_id, subject, description, ticket_status, created_at
     64}}}
     65
     66Category / course
     67{{{
     68FD8: category_id → category_name, category_description 
     69FD9: course_id → course_name, course_price, course_status, instructor_id
     70}}}
     71
     72CourseCategory
     73{{{
     74The relation CourseCategory has composite key (course_id_cc, category_id_cc) and no additional non-trivial functional dependencies.
     75}}}
     76
     77Course content hierarchy
     78{{{
     79FD10: module_id → course_id_mod, module_title, module_description 
     80FD11: lesson_id → module_id_lesson, lesson_title, material 
     81FD12: quiz_id → lesson_id_quiz, total_points, passing_score 
     82FD13: attempt_id → user_id_attempt, quiz_id_attempt, score, attempt_date
     83}}}
     84
     85Enrollment / certificate
     86{{{
     87FD14: enrollment_id → user_id_enroll, course_id_enroll, enroll_date, completion_status, progress_percentage 
     88FD15: certificate_id → enrollment_id_cert, issue_date, certificate_code, certificate_status
    9389}}}
    9490