gnumed-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gnumed-devel] Vaccination brand/route presentation


From: Jim Busser
Subject: [Gnumed-devel] Vaccination brand/route presentation
Date: Sat, 17 Sep 2011 20:24:24 -0700

Presently GNUmed wants vaccines to be defined in the table

        clin.vaccine

with a foreign key to the brand (or, in the case of a 'fake brand' generic 
vaccine, to an is_fake record created in that same ref.branded_drug table).

All of that is fine, but it got complicated by the requirement that each

        clin.vaccine

be also characterized (defined) by the route by which it is supposed to be 
delivered. That broke the fact that a single product (e.g. pneumococcal 
polysaccharide vaccine) can be delivered by either the IM or SC route as 
described in http://www.immunize.org/catg.d/p3085.pdf

Presently in GNUmed, selecting the indication (like pneumo) evokes the product 
as per the screenshot example. This includes duplicates on brand, on account of 
some being able to be delivered by more than one route:

        Pneumo 23 (pneumococcus)
        Pneumo 23 (pneumococcus)
        Pneumovax 23 (pneumococcus)
        Pneumovax 23 (pneumococcus)
        Prevnar (diptheria, pneumococcus)
        Prevnar 13 (diptheria, pneumococcus)


The user cannot distinguish and therefore cannot correctly select *which* of 
the above is (invisibly to the user) defined in the backend as IM vs SC. 
Likewise, one cannot "see" whether the 'generic' vaccine is defined in the 
backend as IM or SC.

We can solve this problem if we either

1) remove route from clin.vaccine

This is simplest. No-one who did not alter their v15 or earlier schema would 
have been able to create unique brand products having more than one vaccination 
route. AFAICT, the route type is not so far written as an fk into any other 
clinical entry.

Dropping column 'route' from vaccine definitions would allow to go back to 
vaccine being unique on [fake] brand. This is IMO best, because – in the 
situation of a report from a previous doctor that a patient received pneumovax 
on <date> – the absence of historical information on route (e.g. in a transfer 
of care record) will not be resolvable. Presently, the user can select a 
generic record but they do so without realizing they are committing / attesting 
(invisibly) to a product route they did not know to be true.

If we would drop the route column, users would then see each brand (product) 
uniquely:

        Pneumo 23 (pneumococcus)
        Pneumovax 23 (pneumococcus)
        Prevnar (diptheria, pneumococcus)
        Prevnar 13 (diptheria, pneumococcus)
        Synflorix (diptheria, pneumococcus, tetanus)
        pneumococcus - generic vaccine (pneumococcus)

2) keep id_route a property of clin.vaccine AND keep the ability to have 
multiple vaccine records per unique brand ( where UNIQUE {fk_brand, id_route) 
AND display this route in the phrasewheel AND in the display of the patient's 
history of vaccinations already given AND allow route to be null AND update the 
generic vaccines to make no assumptions about the route utilized, by doing

        UPDATE clin.vaccine
        SET id_route = NULL
        WHERE EXISTS (
                SELECT 1
                FROM ref.branded_drug r_bd
                WHERE r_bd.is_fake IS TRUE
                AND clin.vaccine.fk_brand = r_bd.pk
                LIMIT 1) ;

3) make id_route into a nullable array of type integer, which -- provided the 
array values are translated in the ui -- could better allow to guide the 
clinician to not administer the vaccine in an inappropriate route. This would 
mean that we should incorporate – into the phrasewheel display – the route 
short form, such as

        Pneumo 23 [i.m, sc] (pneumococcus)
        Pneumovax 23 [i.m, sc] (pneumococcus)
        Prevnar [i.m.] (diptheria, pneumococcus)
        Prevnar 13 [i.m.] (diptheria, pneumococcus)
        Synflorix [i.m.] (diptheria, pneumococcus, tetanus)
        pneumococcus - generic vaccine (pneumococcus)

Generic vaccine should be allowed to have a null route.

I think that in the short term, option 1 is the least work, then option 2, then 
option 3 (which IMO would, in the longer term, be most ideal / appropriate).

PS all of this discussion sets aside that it is possible, as part of the 
documentation of the giving of the vaccine, that it was given e.g. in the left 
deltoid or right gluteus or left vastus medialis. So to the extent that in any 
patient this both matters and is of interest, the route can be documented that 
way.

-- Jim

PNG image


reply via email to

[Prev in Thread] Current Thread [Next in Thread]