gnumed-devel
[Top][All Lists]
Advanced

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

[Gnumed-devel] the WHY: Re: clinicians: coding use case survey - please


From: Karsten Hilbert
Subject: [Gnumed-devel] the WHY: Re: clinicians: coding use case survey - please respond !
Date: Wed, 4 May 2011 10:35:30 +0200
User-agent: Mutt/1.5.21 (2010-09-15)

Here's an explanation of why I am being so specific about
the coding thing:

There's fundamentally two different ways to associate codes
with narrative:

#--------------------------------------------------------------------
1) codes "stand for" (are equivalent to) certain blocks of narrative:

        create table coded_term (
                term text
                code text
        )

        create table episode (
                description
        )

Note how
        - the episode does NOT directly link to coded_term
        - coded_term does NOT have unique(term, code)

With this setup

        - there can be many codes for a term in coded_term
        - GNUmed looks at coded_term.term = episode.description
          whenever it wants codes for the episode name
        - new episodes of previously used descriptions automatically
          "have" codes *in*directly associated with them
        - renaming episodes automatically breaks the previous associated
          codes (and automatically associates other codes if known)
        - you cannot have different code lists for the same term in different 
patients
                -> you need to be more specific in your naming of episodes
                   to differentiate

(there will be another table holding code/official_term/system
 but this does not have any relevance to the argument
 presented here)

#--------------------------------------------------------------------
2) codes are *linked* to certain structures of the EMR but bear no direct 
equivalence
   to particular pieces of text within the EMR

        create table code (
                pk serial
                code text
                official_term text
                system text
                unique(official_term, code, text)
        )

        create table episode (
                pk serial
                description
        )

        create table lnk_code2episode (
                fk_code references code(pk)
                fk_episode references episode(pk)
                unique(fk_code, fk_episode)
        )

Note how now
        - each episode IS directly linked to specific codes
        - code DOES have unique(official_term, code, system)

With this setup

        - there can be many codes for a term in code - one per system
        - there can be many codes linked to one episode - but each only once
        - GNUmed looks at lnk_code2episode to find the codes linked to this 
episode
        - new episodes of previously used descriptions do not *automatically* 
have any codes
        - renaming episodes carries over the previously linked codes, regardless
                - good for typos
                - bad for semantic changes
        - you can have different code lists for the same episode in different 
patients
                - you can name *all* episodes alike and still have different 
codes per patient
                - you can name *all* episodes differently and still link the 
same codes
                        - this explains that codes do not *stand for* 
episode.description but
                          are simply linked to the EMR as additional data just 
like, say, a
                          vaccination - except that the reason for linking is 
made obvious
                          (namely that the used decided on linking by way of 
the episode)

#--------------------------------------------------------------------

So, pick your poison :-)

Karsten
-- 
GPG key ID E4071346 @ gpg-keyserver.de
E167 67FD A291 2BEA 73BD  4537 78B9 A9F9 E407 1346



reply via email to

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