Stream: implementers
Topic: List vs Group members
Josh Mandel (Feb 14 2020 at 17:53):
Looking at List.entry
vs Group.member
:
- list entries track a
deleted
flag, while group members track aninactive
flag - list entries track a
date
when added, while group member track aperiod
of active membership - list entries track a
flag
, with status info, while group members don't
Are there underlying differences in the requirements leading to these differences in the models?
(@Lloyd McKenzie I bet you have a perspective.)
Lloyd McKenzie (Feb 14 2020 at 18:09):
For Lists, tracking membership is their entire purpose in being. Group was primarily defined for tracking a set of people who can be acted upon as a collective. Use-cases were public health, research, etc. While they allow members to be tracked, the use-cases are not the same as for Lists where you're often reconciling problem, allergy, medication and similar lists. Groups aren't really "reconciled". The attributes on Group.member really relate to "if I act on this Group today, who will be affected".
Josh Mandel (Feb 14 2020 at 20:10):
Is there a modeling reason though for the differences? Like period vs single date?
Lloyd McKenzie (Feb 14 2020 at 20:30):
For Group, period is used so you know when a particular patient was part of a capitation group, part of a clinical trial study group, etc. start + end matter. For lists, the use-case for date is primarily to be able to see "what's new?". The only time something is left on a list is when the list itself is showing a before/after view (e.g. for discharge medications) where you want to specifically state "this med is being removed" rather than merely not listing it. For an 'active' list, you generally wouldn't show deleted items at all.
Brian Postlethwaite (Feb 14 2020 at 20:32):
And deletion is used when the list is a change set.
Lloyd McKenzie (Feb 14 2020 at 21:08):
There's no notion of a "Group" change set
Gino Canessa (Feb 14 2020 at 21:12):
Lloyd McKenzie said:
...For lists, the use-case for date is primarily to be able to see "what's new?"...
So, if we use a patient replacing one medication with another:
- A
List
would show the new one added, and somewhere in theList
the old medication would be flagged as deleted. - A
Group
would have both medications, the old one with a closed period and inactive flag, the new one with an open period and no flag.
As someone looking at them, the two feel extremely similar and are at FMM 1 (List) and 0 (Group).
For reference, I am trying to understand the differences between the two for use in SubscriptionTopic
resources and guidance around patient lists (e.g., what the filters need to be / should be). Unfortunately, my cursory glance says that there are some implementations of each.
It feels like two ways of doing the same thing.
Lloyd McKenzie (Feb 14 2020 at 21:15):
Group for Medications would be unusual. It would mean that the Medications were expected to be the subject of observations or procedures as a collective. If you're talking about a patient's medication list - or even a formulary, List would be most appropriate.
Gino Canessa (Feb 14 2020 at 21:29):
Fair enough. I used the example because Medication
is one of the only 7 allowed types for Group.member.entity
.
So the difference between the two (on allowed types) is essentially just conceptual?
Lloyd McKenzie (Feb 14 2020 at 21:31):
To be honest, the use-case for Medication in Group is week and it might be cleaner for it (and Device and Substance) to be yanked
Gino Canessa (Feb 14 2020 at 21:31):
Pulling from the other thread - so defining the list of patients under an insurer, you could use either Group or List, since either makes sense depending on the intended use.
Josh Mandel (Feb 14 2020 at 22:44):
We've already agreed to remove Mediation from the allowed Group member types (J#24848).
Last updated: Apr 12 2022 at 19:14 UTC