Skip to main content

Sublink Domain Model

Sublink is a patient-facing mobile application that enables medication reminders, health tracking, and clinical trial participation. It connects patients with healthcare providers and supports medication adherence monitoring.

The following list represents the core entities within the Sublink ecosystem.


Sublink Domain Model - Entity Relationship Diagram

Entity Overview

EntityDescription
UserCan be an Employee, Nurse, Patient, or Portal Admin. Is an Employee when performing administrative or healthcare duties. Is a Nurse when providing care to patients. Is a Patient when receiving care. Is a Portal Admin when managing the backend.
ContactEach User creates an entry as a Contact.
PatientIs a User with additional attributes. Can create an Encounter through an Appointment or Walk-in. Has a Profile and Health History. Has Vitals recorded during an Encounter. May have Prescriptions or Medications linked to an Encounter.
EncounterIs for a Patient and mapped to a Primary Physician. Contains Vitals. May contain Prescriptions or Medications.
VolunteerIs a Patient who participates in a Clinical Trial. Is covered by a Nursing Task specific to the Clinical Trial Program.
Nursing TaskLinks Nurse to Patient. May be associated with a Clinical Trial Program.
MedicationIs prescribed in an Encounter. Is demarked for Clinical Trials or Non-Clinical Trials.
Reminder and NotificationPatients receive Reminders before Medication doses. Patients can opt-out of Reminders. When Reminders are sent, an entry is recorded in Notifications.
Medication Consumption LogRecords Drug consumption by Patients.

Entity Relationships

User Hierarchy

User
├── Employee (Administrative duties)
├── Nurse (Care provider)
├── Patient (Care recipient)
│ └── Volunteer (Clinical trial participant)
└── Portal Admin (System management)

Clinical Trial Relationships

Clinical Trial Program
├── Studies
│ ├── Study Events
│ └── CRF Forms
├── Volunteers (Patients)
├── Nursing Tasks
└── Medications

Patient Care Relationships

Patient
├── Profile
├── Health History
├── Encounters
│ ├── Vitals
│ ├── Prescriptions
│ └── Medications
├── Appointments
└── Medication Consumption Logs

Core Entities

User

The base entity for all system users. Contains authentication and profile information.

Fields:

  • id - Unique identifier
  • email - User email address
  • role - User role (Patient, Nurse, Admin, etc.)
  • profile_id - Link to Profile entity

Patient

Extends User with healthcare-specific attributes.

Fields:

  • user_id - Link to User entity
  • date_of_birth - Patient DOB
  • gender - Patient gender
  • health_history - Medical history records

Encounter

Records a patient visit or interaction.

Fields:

  • patient_id - Link to Patient
  • physician_id - Primary care provider
  • encounter_date - Date of encounter
  • vitals - Recorded vital signs
  • notes - Clinical notes

Medication

Represents a prescribed medication.

Fields:

  • name - Medication name
  • dosage - Dosage amount
  • frequency - How often to take
  • is_clinical_trial - Whether part of a trial

CRF Form

Case Report Form for clinical trials.

Fields:

  • study_id - Link to Study
  • subject_id - Link to Subject/Patient
  • study_event_id - Link to Study Event
  • Custom fields defined per form

Next Steps