-
Notifications
You must be signed in to change notification settings - Fork 0
/
data.txt
76 lines (63 loc) · 1.58 KB
/
data.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
@startuml
package Data {
' Domain (data) objects
abstract class RegisteredHuman {
ID UUID
Email: String
DOB: DateTime
PhoneNumber: String
FirstName: String
LastName: String
HomeAddress: Address
}
class Address {
Street
ApartmentNumber
City
State
Zip
Country
}
RegisteredHuman "1" *-- "0..1" Address: lives at
Patient --> RegisteredHuman: is a
class Patient {
ProviderName: String
InsuranceProviders: []InsuranceProvider
WorkAddress: Address
}
Patient "1" *-- "0..2" Address: lives and works at
Patient "1" *-- "0..*" Doctor: has one or more
class InsuranceProvider {
AccountID: String
Name: String
}
Doctor --> RegisteredHuman: is a
class Doctor {
Biography: String
Specialties: []Specialty
}
class Specialty {
.. Attributes ..
Name: String
Description: String
}
Doctor "1" *-- "1..*" Specialty
class Appointment {
-datetime: DateTime
-patient: Patient
-doctor: Doctor
.. Getters ..
+Doctor(): Doctor
+Patient(): Patient
+Time(): DateTime
}
class Reminder {
appointment: Appointment
}
Patient "1" *-- "0..*" Appointment: has scheduled
Doctor "1" *-- "0..*" Appointment: is scheduled
Appointment "1" *-- "0..*" Reminder: has set
Patient "1" *-- "0..*" Reminder: belongs to
Patient "1" *-- "0..*" InsuranceProvider
}
@enduml