@startuml !pragma teoz true Title PSS Functional data exchange - antibiotics hide footbox group #edf PSS-0 - Confirm consent EPD -> PSS : \n**POST /Consent** activate PSS note right of EPD |_ HCP-ID |_ datetime |_ terms&conditions |_ url |_ text |_ version |_ options end note deactivate EPD deactivate PSS end ||| ||| group #dfe PSS-2 - Given indications, query data to collect Activate EPD EPD -> PSS : \n**POST /PlanDefinition/GetDataToCollect/$apply**\n Payload:\n subject=Y\n data=Bundle Activate PSS note right of PSS See 1. below end note PSS -> EPD: 1. Propose data to collect\nPayload:\n subject=PSSPatient\n data=PSSResponseBundle note right of PSS See 2. below end note deactivate PSS ||| ' Deactivate EPD end ... group #fed PSS-3 - Given the requested data, request recommended medications EPD -> PSS : \n**POST /PlanDefinition/GetRecommendations/$apply**\n Payload:\n subject=Y\n data=Bundle ' activate EPD note right of PSS See 3. below end note activate PSS PSS -> EPD: 2. Bundle with RequestGroup with options\nPayload:\n subject=PSSPatient\n data=PSSResponseBundle note right of PSS See 4. below end note deactivate PSS ||| ' Deactivate EPD end ... group #efd PSS-4 - Give feedback EPD -> PSS : \n**POST /PlanDefinition/GetRecommendations/$feedback** ' activate EPD note left of PSS |_ PSS-ID |_ datetime |_ outcome |_ suggestionOutcomes |_ suggestionId |_ outcome |_ overrideReason end note deactivate EPD activate PSS deactivate PSS end ... ... group #fde PSS-5 - Consult prior result EPD -> PSS : \n**GET /Bundle/{PSS-ID}** ' activate EPD end ' ... ' group #dfe PSS-6 - Consult feeback ' ADM -> PSS : \n**GET /Task?focus={PSS-ID}** ' & PSS -[hidden]-> QSI : " " ' activate PSS ' ||| ' PSS -> ADM ' note left of PSS ' |_ PSS-ID ' |_ datetime ' |_ outcome ' |_ suggestionOutcomes ' |_ suggestionId ' |_ outcome ' |_ overrideReason ' end note ' deactivate EPD ' & PSS -[hidden]-> QSI : " " ' deactivate PSS ' ||| ' ' activate EPD ' end @enduml