@startuml ActivityProcessing !include styling.puml title Activity Processing actor "Pregnant Woman" as PW actor "Nurse" as Nurse participant "App" as App participant "Engine" as Engine loop per activity Nurse -> App: Start activity App -> Engine: Pre-Populate QuestionnaireResponse ($populate-data) Engine -> App: Pre-populated QuestionnaireResponse App -> Nurse: Render activity questionnaire Nurse -> PW: Seek responses PW -> Nurse: Provide responses Nurse -> App: Save questionnaire App -> Engine: Proces QuestionnaireResponse ($extract-data) Engine -> App: Confirm save App -> Engine: Run logic for activity ($apply) Engine -> App: Return transient activity care plan App -> Nurse: Display transient activity care plan Nurse -> App: Accept/Reject proposals App -> Engine: Update encounter care plan Engine -> App: Confirm save App -> Nurse: Confirm activity complete end @enduml