Concept Design Approach for Multiple Doses - Immunisation, Treatment etc

Tags: #<Tag:0x00007f56959ee808>

I am looking for the design approach and best practice for capturing/tracking multiple occurrences of an event within implementations e.g.,

  1. Tetenas Diptheria does - 1st, 2nd, 3rd, 4th, 5th final
  2. Antenantal or HIV Exposed Infant visits - up to 8
  3. Follow-up visits - at times up to 6

@akanter @burke @ball @mogoodrich @mseaton @mksd

We don’t record the number of visits. Each visit is recorded as an encounter, so no need to record the number of visits. The only situation where we record multiple occurrences of an event – collecting the chemotherapy cycle number (question/numeric).

Immunizations: UI:

Concepts: image

Code:

2 Likes

@ball thanks, how do you then track Dose 0, Dose 1, Dose 2, Dose 3, Booster 1 and Booster 2 values and separate across them

We use the concept "Immunization sequence number. Look here: https://github.com/PIH/openmrs-module-pihcore/blob/master/omod/src/main/webapp/resources/scripts/visit/vaccinations.js#L99

@ball @ddesimone as hinted here and here you have modelled an immunization as a group of three obs:

  1. The actual vaccination given - CIEL:984
  2. The sequence number (dose 0, 1, 2, …) - CIEL:1418
  3. The vaccination date - CIEL:1410

Wondering if you are anticipating the addition of two more members: 1) vaccination lot number and 2) vaccination lot expiry date in order to comply (at least in part) with ‘The Drug Supply Chain Security Act and 2D Vaccine Barcodes’ (CDC ref. here) and to enable “tracking and tracing”.

Cc @jesplana @rrameshbtech


Another question, why is CIEL:984 a ConvSet? Looks like this would mean that one immunization could involve multiple given vaccines then?

@mksd Yes. It would be easy to modify the convset to include lot number and expiration date.

If you look at Immunization History (CIEL:1421) concept, it already includes lot number, and manufacturer. @akanter might consider adding the lot expiry date to the same construct, unless this would be modeled differently with the lot number as a key to other data (expiry date and manufacturer).

image

As for CIEL:984, it doesn’t need to be class=ConvSet, but that’s how it is in CIEL, but it works with coded datatype. I would have made it class=Drug.

Thanks @ball! Great.

So, through the UI above, out of the 6 group members, you guys fill in 3 of them. Namely:

  1. IMMUNIZATION SEQUENCE NUMBER (1418)
  2. VACCINE LOT NUMBER (1420)
  3. VACCINATION DATE (1410)
  4. IMMUNIZATIONS (984)
  5. VACCINE MANUFACTURER (1419)
  6. Procedure received by patient (163100)

Correct?

Yes. We use only those 3 concepts within the Immunizaton History ConvSet.