HL7 協(xié)議入門

MSH|^~\&|Mindray|Gateway|||||ORU^R01|2|P|2.3.1| <CR> 
PID|||M1015_00010||John^||20091112|M|||^^^^||| <CR>
PV1||I|^^ICU&Bed5&3232241659&0&0|||||||||||||||A||||||||||||||||||||||||||20091201111211 <CR> 
OBR||||Mindray Monitor|||20091203121631| <CR> 
OBX||NM|52^Height||169.0||||||F <CR> 
OBX||NM|51^Weight||59.0||||||F <CR> 
OBX||CE|2302^BloodType||1^A||||||F <CR> 
OBX||CE|2303^PACE_Switch||0^Off||||||F <CR> 
OBX||NM|101^HR|2101|60||||||F <CR> 
OBX||NM|151^RR|2102|20||||||F <CR> 
OBX||NM|200^T1|2104|37.00||||||F <CR>

每個(gè)HL7 message 都是由多個(gè)段(Segment)組成逝她,每個(gè)段都以回車(<CR>)結(jié)尾

每個(gè)段最開始的 3 個(gè)大寫字母表示段的唯一標(biāo)識许赃,如 MSH (message header)表示消息頭,PID (patient identity)表示病人唯一標(biāo)識,
PV1 (patient visit) 表示病人的一些基本信息如床號等。這些段的含義都是 HL7 標(biāo)準(zhǔn)里定義的。

每個(gè)段有包含多個(gè)域(Field), field 之間用 | 分隔虏肾。如果一個(gè) field 沒有被使用就什么都不用寫,這就是很多兩個(gè)域分隔符之間什么都沒有的原因欢搜。每個(gè) field 在段中都有一個(gè)序號(SEQ)封豪,每個(gè)段有多少個(gè) field, 各個(gè) field 的序號和含義都是 HL7 標(biāo)準(zhǔn)中定義的,我們可以只使用其中一部分 field炒瘟。(有些 field 是必須出現(xiàn)的吹埠,不能省略,必須傳值)

每個(gè) field 又可以包含多個(gè) Component (組件) , component 之間用 ^ 分隔
如 52^Height

一個(gè) component 又可以包含多個(gè) Sub component (子組件)疮装, 子組件之間用 & 分隔缘琅,如 ICU&Bed5&3232241659&0&0 (包含5個(gè)子組件)

message.png
separator.png

是不是很簡單,像

MSH|^~\&|Mindray|Gateway|||||ORU^R01|2|P|2.3.1| <CR> 

MSH 表示消息頭段廓推,前面 5 個(gè)字符 |^~& 是第一個(gè)Field定義分隔符
Mindray 是第二個(gè) Field刷袍,Gateway 是第三個(gè) Field , 4,5,6,7 這四個(gè)Field 沒有用到,第 8 個(gè) Field 是 ORU^R01(包含兩個(gè)組件)

那么HL7 消息解析是不是很簡單呢樊展?呻纹??首先用回車符分隔各個(gè)段专缠,一個(gè)段再用 | 分隔出各個(gè) Field 居暖,再參考協(xié)議文檔就解析出了各個(gè)數(shù)據(jù)了。

由于 HL7 Message 是一個(gè)應(yīng)用層高層協(xié)議藤肢,沒有定義消息的開始和停止。所以應(yīng)用時(shí)一般會在 TCP 上加一層 HL7 low-level 協(xié)議來定義消息的開始和結(jié)束糯景。

HL7.png
lower level.png

有了 HL7 Low-Level protocol 我們就可以很容易的從 TCP 字節(jié)流中分離出一個(gè)一個(gè)的 HL7 消息了嘁圈。(Netty 中用一個(gè)分隔符拆包就行了。)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末蟀淮,一起剝皮案震驚了整個(gè)濱河市最住,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌怠惶,老刑警劉巖涨缚,帶你破解...
    沈念sama閱讀 212,029評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異策治,居然都是意外死亡脓魏,警方通過查閱死者的電腦和手機(jī)兰吟,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,395評論 3 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來茂翔,“玉大人混蔼,你說我怎么就攤上這事∩毫牵” “怎么了惭嚣?”我有些...
    開封第一講書人閱讀 157,570評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長悔政。 經(jīng)常有香客問我晚吞,道長,這世上最難降的妖魔是什么谋国? 我笑而不...
    開封第一講書人閱讀 56,535評論 1 284
  • 正文 為了忘掉前任槽地,我火速辦了婚禮,結(jié)果婚禮上烹卒,老公的妹妹穿的比我還像新娘闷盔。我一直安慰自己,他們只是感情好旅急,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,650評論 6 386
  • 文/花漫 我一把揭開白布逢勾。 她就那樣靜靜地躺著,像睡著了一般藐吮。 火紅的嫁衣襯著肌膚如雪溺拱。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,850評論 1 290
  • 那天谣辞,我揣著相機(jī)與錄音迫摔,去河邊找鬼。 笑死泥从,一個(gè)胖子當(dāng)著我的面吹牛句占,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播躯嫉,決...
    沈念sama閱讀 39,006評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼纱烘,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了祈餐?” 一聲冷哼從身側(cè)響起擂啥,我...
    開封第一講書人閱讀 37,747評論 0 268
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎帆阳,沒想到半個(gè)月后哺壶,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,207評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,536評論 2 327
  • 正文 我和宋清朗相戀三年山宾,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了至扰。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,683評論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡塌碌,死狀恐怖渊胸,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情台妆,我是刑警寧澤翎猛,帶...
    沈念sama閱讀 34,342評論 4 330
  • 正文 年R本政府宣布,位于F島的核電站接剩,受9級特大地震影響切厘,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜懊缺,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,964評論 3 315
  • 文/蒙蒙 一疫稿、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧鹃两,春花似錦遗座、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,772評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至馋记,卻和暖如春号坡,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背梯醒。 一陣腳步聲響...
    開封第一講書人閱讀 32,004評論 1 266
  • 我被黑心中介騙來泰國打工宽堆, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人茸习。 一個(gè)月前我還...
    沈念sama閱讀 46,401評論 2 360
  • 正文 我出身青樓畜隶,卻偏偏與公主長得像,于是被迫代替她去往敵國和親号胚。 傳聞我的和親對象是個(gè)殘疾皇子代箭,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,566評論 2 349