How to parse multiple OBR segments in HL7 using HAPI TERSER

How to parse multiple OBR segments in HL7 using HAPI using a terrier

I have an hl7 example like this

MSH|^~\&|SENDERAPP|SENDERFAC|COVCDR|COVCDR|20130212221503||ORU^R01|1676326503009050|P|2.5 PID|1||MRN101||DOE^JOHN^A||20000101|M||W|1 Campus Martius^^Detroit^MI^48226||(313)227-7300||EN|S|||111-11-1111|||H PV1|1|U| 12E^1211^01||||1689885733^ORANGE TEAM, OMNI|||Med||||Tra|||99999999^SMITH^KEVIN^^^^MD|I|000000000000|YY|P||||||||||||||||||||Ac|||20130224080500 ORC|RE|F78520223|000000000^LA||CM||||20130226020200|||| PICU|||^RESULT PERFORMED|||RES OBR|1|F78520223|1305611705^LA|0101301^COMPLETE BLOOD COUNT^COMPLETE BLOOD COUNT|||20130226010600|20130226020200||2632||||20130226014200||333333^GEORGE, BOB|||||0001305611705|20130226020200|||F||^^^20130226043000^^EA~^^^^^EA OBX|1|NM|0106550^WHITE BLOOD CELL COUNT^WHITE BLOOD CELL COUNT||7.9|10e9/L|4.3-11.0||||F|||20130226020200|34333^Kelly, Bacon^^00010033^MOLIS XE2|RES OBX|2|NM|0104650^RBCx10e12^RBCx10e12||4.09|10e12/L|4.53-5.73|L|||F|||20130226020200|34333^Kelly, Bacon^^00010033^MOLIS XE2|RES OBX|3|NM|0102150^HEMOGLOBIN^HEMOGLOBIN||12.9|g/dL|13.6-17.4|L|||F|||20130226020200|34333^Kelly, Bacon^^00010033^MOLIS XE2|RES OBX|4|NM|0102100^HEMATOCRIT^HEMATOCRIT||37.5|%|40.7-50.8|L|||F|||20130226020200|34333^Kelly, Bacon^^00010033^MOLIS XE2|RES OBX|5|NM|0103500^MEAN CORPUSCULAR VOLUME^MEAN CORPUSCULAR VOLUME||91.7|fL|81.6-96.8||||F|||20130226020200|34333^Kelly, Bacon^^00010033^MOLIS XE2|RES NTE|1||Test performed at Tulsa 

I am using terser.get("/.OBX-3-1")); to access the parent OBX segment. How to get to child OBX segments using a terrier

+4
source share
2 answers

OBX is nested inside the NOTES group (which in turn is nested in other groups). In fact, the OBX segment is repeated, but a group of OBSERVATIONS. Thus, your statement will look like terser.get("/.OBSERVATION(i)/OBX-3-1"); where in your case I start from 0 to 3.

fun christian

+6
source

I think you should use terser.get (/ OBX (repeat) -3-1). For example, terser.get (/ OBX (2) -3-1) should be 0102150. Remember that repetition starts at 0, so OBX (2) refers to OBX | 3 | NM | 0102150 ^ HEMOGLOBIN ^ ...

You can find the hapi terser repetition example here:

I wrote a couple of posts about this problem. You can find them:

http://ignaciosuay.com/how-to-use-hapi-terser-with-hl7/

http://ignaciosuay.com/how-to-set-repetitions-in-hl7-messages-using-hapi-terser/

Greetings Ignacio

+2
source

All Articles