@startuml ' Entities definition entity "Genres" as genres { + genre_id: INTEGER [PK] -- genre_name: TEXT [UNIQUE, NOT NULL] } entity "Movies" as movies { + movie_id: INTEGER [PK] -- title: TEXT [NOT NULL] genre_id: INTEGER [FK] duration: INTEGER [CHECK > 0] } entity "Halls" as halls { + hall_id: INTEGER [PK] -- hall_name: TEXT [NOT NULL, UNIQUE] capacity: INTEGER [CHECK > 0] } entity "Sessions" as sessions { + session_id: INTEGER [PK] -- movie_id: INTEGER [FK] hall_id: INTEGER [FK] session_time: DATETIME [NOT NULL] ticket_price: REAL [CHECK >= 0] } entity "Tickets" as tickets { + ticket_id: INTEGER [PK] -- session_id: INTEGER [FK] seat_number: INTEGER [CHECK > 0] sold_at: TIMESTAMP [DEFAULT CURRENT_TIMESTAMP] } ' Relationships genres ||--o{ movies : "1 to Many" movies ||--o{ sessions : "1 to Many" halls ||--o{ sessions : "1 to Many" sessions ||--o{ tickets : "1 to Many" @enduml