7

如何使用 terser 使用 HAPI 解析 HL7 中的多个 OBR 段

我有这样的示例 hl7 消息

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

我正在使用 terser.get("/.OBX-3-1"));访问 OBX 父段。如何使用 terser 访问子 OBX 段

4

2 回答 2

10

OBX 嵌套在 OBSERVATION 组中(反过来,该组又嵌套在其他组中)。实际上,不是 OBX 段是可重复的,而是 OBSERVATION 组是可重复的。因此,您的简洁表达式将类似于terser.get("/.OBSERVATION(i)/OBX-3-1");,在您的情况下,我从 0 运行到 3。

欢呼基督徒

于 2013-04-04T15:40:57.530 回答
3

我认为你应该使用 terser.get(/OBX(repetition)-3-1)。例如,terser.get(/OBX(2)-3-1) 应该等于 0102150。记住重复从 0 开始,所以 OBX(2) 指的是 OBX|3|NM|0102150^HEMOGLOBIN^.. .

你可以在这里找到一些关于重复的更简洁的例子:

我已经写了几篇关于这个问题的帖子。你可以找到它们:

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

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

干杯伊格纳西奥

于 2013-07-22T20:26:49.957 回答