gnumed-devel
[Top][All Lists]
Advanced

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

[Gnumed-devel] proposal for HL7 v2.3 to gnumed parsing


From: Syan Tan
Subject: [Gnumed-devel] proposal for HL7 v2.3 to gnumed parsing
Date: Thu, 12 May 2005 20:38:27 +0800





The samples given seem to show 
there is a common order of segments for
a given set of test results for one patient

MSH ( 1, message header)
 PID ( 1, person id)
   OBR ( 1,  obs request)
    OBX ( many,  observation results)
   ORC  ( 1 ,order control,  not in AU example, but in Oscar example)

The proposal for mapping is :
as parsing hits PID, 

patient_name , date_of_birth  is used to match a patient.
If no match, match to dummy "unmatched" patient.
Result is a pk_identity for later use.

parsing Hits OBR,
if the message has ordering_provider field, which has a form
(id, title, firstname, lastname) , then an attempt is made
to match in v_staff
also attempt to match to each ~ separated provider 
in results_copies_to field, if it exists.
If no match, then ? match to staff who has corresponding current_user name?

This gives a pk_identity or pk_staff for searching/constructing in lab_request.

the time fields 
requested_date_time , quantity_timing, specimen_received_date_time,
observation_date_time , results_report_status_change,

may need to be matched to existing or extra fields on lab_request.
the universal_service_id  which as a minimum consists of
loinc_code , and loinc_name   needs to be matched to something on
lab_request. e.g.  The request HepS.5 , Hepatitis Serology

If a lab_request can't be selected according to the requested_date_time
and loinc_code / loinc_name, 
then perhaps one linked to a dummy "unknown requestor" staff can be created.
This helps for say when someone outside forwards a result for a common patient
to you.

once the lab_request is found or created, 
then obxs are parsed according to their type NM ( numeric), ST ( short text)
FT ( free text  - > ? goes in a narrative ), 
and test_results can be created which can be linked into lab_requests.

What needs to be done on the backend may be more precise fields in lab_request 
to 
store loinc_code, and loinc_name ?











reply via email to

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