@startuml
'https://plantuml.com/class-diagram

hide methods
left to right direction
skinparam classAttributeIconSize 0

class Receptionist {

}

class Client {
 - Name
 - Email
 - Phone Number
 - Sex
 - TIF
 - Birth Date
 - NHS Number
 - Citizen Card Number

}

class Doctor {

}

class Administrator{

}



class LabOrder {

}

class Category {

}

class TestType {
- Blood
- Covid 19
}

class Sample {

}

class Report {

}

class Test {
- internal code
- NHS code
- description
- date samples collected
- time samples collected
- date chemical analysis
- time chemical analysis
}

class Parameter {

}

class Company {

}

class ChemicalLaboratoty{

}

class MedicalLabTechnician {

}

class ChemicalAnalysis {

}

class ClinicalAnalysisLaboratory{

}

Client "*" -- "1" Receptionist: registers the <
LabOrder "*" -- "1" TestType: contain the >
Client "1" -- "*" LabOrder: has a >
Doctor "1" -- "*" Report: write a >
Receptionist "*" -- "*" Test: registers the >
Test "*" -- "1" TestType: is of >
Parameter "*" -- "1" Category: present under >
Category "*" -- "1" Administrator: created by >
Company "1" -- "*" Test: performs >
Sample "*" -- "1" ChemicalLaboratoty: sent to >
Company "1" -- "*" TestType: conducts >
MedicalLabTechnician "1" -- "*" Client: calls >
ChemicalLaboratoty "1" -- "*" ChemicalAnalysis: performs the >
ClinicalAnalysisLaboratory "1" -- "*" Sample: collect the >
Company "1" -- "*" ClinicalAnalysisLaboratory: owns >
Company "1" -- "*" ChemicalLaboratoty: owns >

@enduml