# Entity relational diagram
## Messaging extension
```mermaid
%%{init: { "er": {"fontSize": 25}}}%%
erDiagram
%% General
Users
%% Messages
Discussions{
    Integer id PK
    String name
}
Messages{
    Integer id PK
    Integer response FK "Messages"
    String content
}
Discussions ||--o{ Messages: ""
Discussions ||--o{ Users: ""
Messages o|--o{ Messages: "answers"
%% Forums
Forums{
    Integer id PK
    String name
}
Topics{
    Integer id PK
    String subject
    String content
    Boolean locked
}
Answers{
    Integer id PK
    String content
    Boolean anonymous
    TimeStamp creation_time
}
Polls{
    Integer id PK
    enum PollType
}
Options{
    Integer id PK
    String name
}
Forums ||--o{ Users: "Registered"
Forums ||--|| Teacher: "Owner"
Forums ||--|| Course: ""
Forums ||--o{ Topics: ""
Forums ||--o{ Polls: ""
Topics ||--|| Teacher: "Author"
Topics ||--|| Users: "Author"
Topics ||--o{ Answers: ""
Polls ||--o{ Options: ""
Options ||--o{ Votes : ""
Votes }o--|| Users: "Voter"
%% Appointments
Teachers
Appointments{
    Integer id PK
    TIME sent_time
    enum Status
}
Appointments ||--|| Teachers: ""
Appointments ||--|| Users: ""
```
Debucquoy Anthony
Co-authored-by: Debucquoy <debucqquoy.anthony@gmail.com>
Reviewed-on: PGL/Clyde#14
Reviewed-by: Maxime <231026@umons.ac.be>
		
	
		
			
				
	
	
		
			88 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			88 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| # Entity relational diagram
 | |
| 
 | |
| ## Messaging extension 
 | |
| 
 | |
| ```mermaid
 | |
| %%{init: {  "er": {"fontSize": 25, "stroke": "black" }}}%%
 | |
| erDiagram
 | |
| 
 | |
| %% General
 | |
| Users
 | |
| 
 | |
| %% Messages
 | |
| Discussions{
 | |
|     Integer id PK
 | |
|     String name
 | |
| }
 | |
| 
 | |
| Messages{
 | |
|     Integer id PK
 | |
|     Integer response FK "Messages"
 | |
|     String content
 | |
| }
 | |
| 
 | |
| Discussions ||--o{ Messages: "" 
 | |
| Discussions ||--o{ Users: ""
 | |
| 
 | |
| Messages o|--o{ Messages: "answers"
 | |
| 
 | |
| %% Forums
 | |
| Forums{
 | |
|     Integer id PK
 | |
|     String name
 | |
|     Integer course FK "Course"
 | |
| }
 | |
| 
 | |
| Topics{
 | |
|     Integer id PK
 | |
|     String subject
 | |
|     String content
 | |
|     Boolean locked
 | |
| }
 | |
| Answers{
 | |
|     Integer id PK
 | |
|     String content
 | |
|     Boolean anonymous
 | |
|     TimeStamp creation_time 
 | |
| }
 | |
| 
 | |
| Polls{
 | |
|     Integer id PK
 | |
|     enum PollType
 | |
| }
 | |
| Options{
 | |
|     Integer id PK
 | |
|     String name
 | |
| }
 | |
| 
 | |
| Forums ||--o{ Users: "Registered"
 | |
| Forums ||--|| Teacher: "Owner"
 | |
| Forums ||--o{ Topics: ""
 | |
| Forums ||--o{ Polls: ""
 | |
| 
 | |
| Topics ||--|| Teacher: "Author"
 | |
| Topics ||--|| Users: "Author"
 | |
| Topics ||--o{ Answers: ""
 | |
| 
 | |
| Polls ||--o{ Options: ""
 | |
| 
 | |
| Options ||--o{ Votes : ""
 | |
| 
 | |
| Votes }o--|| Users: "Voter"
 | |
| 
 | |
| 
 | |
| %% Appointments
 | |
| Teacher
 | |
| Appointments{
 | |
|     Integer id PK
 | |
|     Integer teacher FK "Teacher"
 | |
|     TIME sent_time
 | |
|     enum Status
 | |
| }
 | |
| 
 | |
| Appointments ||--|| Users: ""
 | |
| 
 | |
| ```
 | |
| 
 | |
| Debucquoy Anthony
 |