薛方
(西安醫學院 衛生管理系 計算機教研室,陜西 西安 710021)
區域醫療信息化是目前國內醫療界比較關注的話題。然而目前全國范圍內進行的區域衛生信息平臺建設中“各異構系統的存儲和表達方式相差很大”硬件環境參差不齊“信息很難在系統之間直接交換”嚴重制約信息的充分共享[1]。因此,有效地在各異構系統間進行數據交互是區域醫療信息化首要解決的問題。各異構系統要進行有效交互需要共同的信息標準,HL7標準就是為了滿足這樣的需求而制定的,并且在歐美等發達國家得到了廣泛應用[2]。
HL7是由美國國家標準(NASI)批準頒布實施的醫療衛生機構及醫用儀器、設備數據信息傳輸標準,也指美國國家標準局(NASI)授權的從事醫療服務信息傳輸協議及標準研發的機構[3]。自1990年v2.1版本正式頒布以來,HL7對醫療機構、衛生機構的信息傳輸影響日益廣泛。目前,美國的政府部門、醫療機構、保險公司、醫療設備制造商等均采用此標準。隨著信息技術的發展和網絡技術的應用,HL7的應用已經發展到澳大利亞、加拿大、德國、日本、中國等國家。
HL7是標準化的衛生信息傳輸協議,是不同的醫療應用領域間信息傳輸的協議,處于OSI模型的第七層。HL7可以應用于多種操作系統和硬件環境,也可以進行多應用系統間的文件和數據交換,它提供了病人信息管理、病案管理、醫院管理等各項服務系統間的電子資料的交換標準。HL7預留了供不同使用者使用的特殊的表、編碼定義、和消息段,具有信息交換(Message interchange)、軟件組織(Software components)、文檔與記錄架構(Document and record architecture)、醫學邏輯(Medical Logic)等 4大功能。
自HL7V1.0版本發布后,相繼發布了V2.0、V2.1、V2.2、V2.3、V2.3.1。為了適應現代分析技術的發展和應用,解決HL7之前版本在應用中面臨的廣泛性和復雜性的挑戰,HL7組織研究并發布了更嚴格的V3.0標準。V3.0標準在開發方法上已經完全不同于以前版本,甚至完全可以認為這本身就是一個全新的標準。
如圖1所示,本系統采用WebService和SOAP協議建立異構數據源交互模型。該模型采用XML作為數據描述語言傳輸以HL7 V3標準建立的共享數據信息。由于XML具有自描述性,語言的標志或屬性可以反映數據的性質,因此這些數據可被不同程序用于不同用途,如數據提取和建立索引等[4]。

圖1 基于HL7 V3的異構醫療數據交互模型Fig.1 Heterogeneous medical message interaction model
轉換時,首先通過數據交換中間件把各種異構的輸入/輸出數據按照描述邏輯轉換為統一規則的XML文件;然后通過SOAP傳輸協議在各異構系統之間的Internet網絡之間進行傳輸;最后再通過數據交換中間件完成數據轉換。模型的實現采用Web Service技術進行服務組件和應用系統的包裝,將請求數據的過程和請求結果展示給用戶的過程看作一種服務,通過請求服務和調用原醫療信息系統數據的方式進行數據信息的交換和共享。例如:A、C為兩個異構數據類型的醫療系統,當A系統需要調取C系統的數據時,A先向C發出HTTP請求XML數據傳輸,C在安全訪問模塊的保護下從自身HIS數據庫中調取數據,通過基于HL7的數據交換中間件的轉換,把信息表達成符合標準的XML文件,通過網絡發送到A端。A端采用DOM模型來完成XML格式的數據解析以達到異構數據交互的目的。
在HL7數據交互中,消息(Message)是數據在系統之間交互的基本單元,如圖2所示。一個消息由多個段(Segment)組成,一個段由多個數據字段(DataField)組成,一個數據字段由多個組件組成。

圖2 HL7消息組成圖Fig.2 Message composition diagram
HL7 V3版本中,為了支持應用軟件之間消息的傳輸和確認,所有HL7消息都被封裝在控制行為包中,而控制行為包又被封裝在傳輸包中。其中,控制行為包決定了消息的處理方式,傳輸包控制消息的傳輸方式以及消息的確認。
HL7V3.0是基于XML語言開發的版本,采用文檔(Document)方式進行數據傳遞[5]。RIM模型(Reference Information Model)是對所有醫療活動產生信息的最高程度抽象,基于該模型,系統能夠為醫療活動中產生的各種信息以及信息之間的關系提供一致性的組織框架[6]。HL7 V3消息轉換過程如圖3所示,在HIS原始數據庫的基礎上獲取類和屬性信息,建立RIM模型,逐步細化RIM模型,生成DMIM模型(Domain Message Information Model)和 RMIM 模型(Refind Message Information Model)。為了滿足XML格式表述信息的需要,將生成的RMIM模型借助HL7工具轉換為“層次關系”形式的HMD文件,然后生成XML文檔將信息發送給對方。對方接受到XML文檔表示的信息后逐步還原、解封已得到所需內容。

圖3 HL7 V3消息轉換步驟圖Fig.3 Conversion steps of HL7 V3
如圖4所示,在整個數據交互模型中,基于HL7的數據交互中間件是最核心的部分。在HL7中間件的工作下完成數據的轉換和逆轉換,實現數據交互。

圖4 基于HL7 V3的醫療數據交互系統框架圖Fig.4 The framework of heterogeneous medical message interaction based on HL7 V3
HL7中間件包括3個最主要的功能模塊:數據訪問模塊、消息轉換模塊和訪問安全模塊。
1)數據訪問模塊:通過HL7 API接口讀取醫院信息系統中的電子病歷信息,該信息格式為符合HL7 V3標準的信息格式;
2)消息轉換模塊:以 HL7 V3為數據標準,構造、解析HL7消息,實現字符串格式數據與XML格式之間的相互轉換。發送方將原數據庫中存儲的數據構造為HL7 V3消息,接收方對收到的HL7 V3消息進行解析。構造HL7 V3消息時逐層封裝,由原始消息外層封裝控制行為信息和傳輸信息并轉換為XML文檔,解析消息時,逐層去除傳輸包和控制行為包,還原為消息的原始形式;
3)數據訪問模塊:采用基于Web服務的消息安全策略(WS-Security),確保XML格式的共享數據能夠安全可靠地從服務提供方到服務請求方,一方面驗證數據請求者的身份,另一方面能夠對網絡傳輸的數據進行加密,確保數據傳遞的安全性。
異構醫療數據交互是區域衛生信息化進程中首要解決的重要問題,而數據交互是基于一定標準進行的。HL7 V3較之前版本的信息表述更加清晰、準確、易于理解。本文在HL7 V3的基礎上設計一個基于XML的醫療信息交互系統,該系統在對已有HIS不做改動的前提下,采用外掛中間件的模式,在系統間高效、安全的處理、傳輸基于XML格式的HL7消息,解決異構醫療系統間數據交互的問題。
[1]葉輝.基于HL7的統一醫療標準化信息云平臺架構的研究[J].計算機光盤軟件與應用,2012(9):8-10.YE Hui.Research on HL7 unified medical information standardization based on cloud platform architecture[J].Computer CD Software and Application,2012(9):8-10.
[2]呂曉琪.基于MIF文件實現HL7 V3消息解析器 [J].重慶醫學,2013(2):526-528.LV Xiao-qi,Implementation of HL7 V3 message parser based on MIF file[J].Chongqing Medicine,2013(2):526-528.
[3]Health Level Seven International[EB/OL].[2013-08-20].http://www.hl7.org.
[4]蘭圣偉,李立宏.HL7 V3開發系統和我國醫療信息標準化建設[J].中國醫院管理,2006,26(4):40-42.LAN Sheng-wei,LI Li-hong.HL7 V3 development methodology and the development of chinese healthcare information exchange standard[J].Chinese Hospital Management,2006,26(4):40-42.
[5]吳壽剛,王小華.基于HL7的醫療信息系統集成應用[J].中華醫學圖書情報雜志,2014(1):60-64.WU Shou-gang,WANG Xiao-hua,HL7-based application of integrated medical information system[J].Chinese Journal of Medical Library and Information Science,2014(1):60-64.
[6]岳銘,譚紅霞,經春林.基于HL7 V3的檢驗申請消息交互接口設計[J].醫學信息學雜志,2013(34):20-23.YUE Ming,TAN Hong-xia,JING Chun-lin.Interface design for laboratory application message interaction based on HL7 V3[J].Medical Informatien,2013(34):20-33.