Linking Programs to Encounters

We are exploring options to link Programs enrolled by a patient to the associated Encounters. Currently there is no direct way. The programs that we create might have simple workflow/states and we do not want to rely on encounter_type for binding encounters to programs/states. We are thinking of having program_id as part of encounter table so that the relationship is obvious. We would like to listen from the community regarding the same.

Being able to link encounters with patient programs would certainly fit with the way most of our implementations are configured, and would be a welcome addition for PIH.

That being said, I believe that Burke has envisioned Episodes of Care as the mechanism we’d implement behind the scenes to accomplish this, with an episode of care being what groups encounters, and then a patient program being able to reference that episode of care, but I’ll let him weigh in on that.

There are likely practical considerations (eg. time to implement, amount of iterative design needed) that will influence which way you go on this, but wanted to highlight it.


What is the purpose is of explicitly marking an encounter as belonging to a program? What are some specific problems this is going to solve? Are they clinical? Or for reporting purposes?

Having a weak link via encounter type could be more correct.

My initial reaction is that it’s not clinically correct to say that a generic encounter (like vitals or consultation) “belongs to” a program enrollment. I know that programmatically a patient may be seen as part of a program-based appointment, but a patient could be diagnosed with diabetes even if they are nominally there for a TB enrollment appointment.

The link is needed for the view and reports. The weak link is quite sub-optimal for this because it goes like encounter - encounter type - metadata mapping between enc type and program - program - program enrolment.

This linkage is established only when the user would indicate that they are doing the enc in context of a specific program. But i think this point is irrelevant because we any way have a link we are saying to make this storng instead of leaving it weak and based on convention

@mseaton is correct. Our vision for making these connections was through Episodes of Care. We planned for this in 2009, but there has not been demand for it until now. We could re-visit the design to update it and ensure it meets expectations (e.g., link to program), but the intent was that an “episode” would be a collection of 1-to-n visits and/or encounters that relate to a specific condition or treatment plan (program).

I think Episodes of Care could meet your need and add flexibility. For example, instead of creating a single link of an encounter to a program, an “episode” would allow an encounter to be linked to 0-to-n programs or conditions.


-Burke :burke:

How this relates to FHIR

FHIR’s Encounter resource uses a simple hierarchy (Encounter.partOf) to allow a FHIR Encounter to represent our Visit, Encounter, or an Episode of Care.

Our design (distinguishing between Visit, Encounter, and Episode) makes the distinctions explicit and has the benefit of allowing an encounter to be part of a visit and/or part of 0-to-n episodes of care.

1 Like