HL7 訊息結構
HL7 訊息是與觸發程式事件相關聯的階層式結構。 HL7 標準會將觸發程式事件定義為「醫療保健 (真實世界中的事件,) 建立資料在系統之間流動的需求」。 每個觸發程式事件都會與抽象訊息相關聯,該訊息定義訊息支援觸發程式事件所需的資料類型。 抽象訊息是區段的集合,並包含重複和包含這些區段的規則。 下表顯示與觸發程式事件 A04 – 註冊病患相關聯的抽象訊息範例。
觸發程式事件 | 抽象訊息 |
---|---|
ADT^A04^ADT_A01 | 許可、出口和轉移 |
MSH | 訊息標頭 |
EVN | 事件類型 |
PID | 病患識別 |
[ PD1 ] | 其他人口統計 |
[{ ROL }] | 角色 |
[{ NK1 }] | Kin / 相關聯的合作物件 |
PV1 | 病患造訪 |
[ PV2 ] | 病患造訪 - 其他資訊 |
[{ ROL }] | 角色 |
[{ DB1 }] | 身心障礙資訊 |
[{ OBX }] | 觀察/結果 |
[{ AL1 }] | 內文資訊 |
[{ DG1 }] | 診斷資訊 |
[ DRG ] | 診斷相關群組 |
[{ | |
PR1 | 程序 |
[{ ROL }] | 角色 |
}] | |
[{ GT1 } ] | 擔保人 |
[{ | |
IN1 | Insurance |
[ IN2 ] | 保險其他資訊 |
[{ IN3 }] | 保險其他資訊 - 憑證。 |
[{ ROL }] | 角色 |
}] | |
[ ACC ] | 意外資訊 |
[ UB1 ] | 通用帳單資訊 |
[ UB2 ] | 通用帳單 92 資訊 |
[ PDA ] | 病患死和自動患者 |
「[」、「]」 上方的括弧表示區段或區段群組是選擇性的,而大括弧 「{」, 「}」 則表示區段或區段群組重複。
區段是一組欄位,每個欄位都符合特定資料類型。 欄位可以有簡單或複雜的結構。 它們是由元件所組成,這些元件會根據其資料類型定義中所定義的規則所組成。 為了支援更複雜的資料類型,某些元件可能包含子元件。
注意
HL7 訊息編碼使用指定的分隔符號來限制開發人員引進新細分資料方式的能力。 沒有子元件,因為這需要新分隔符號類型的發明。
第一個 HL7 規格未定義抽象訊息。 抽象訊息是與觸發程式事件相關聯的區段模式。 同樣地,HL7 訊息包含一起重複的區段集合,或區段群組。 第一個 HL7 規格未定義區段群組。 從 V2.3.1 開始,並在後續版本中繼續進行,這會因為需要支援 XML 編碼而變更。 例如,在上述觸發程式事件資料表中,訊息結構的名稱是 「ADT_A01」。 這是用來支援 A01 – 病患的相同區段模式。 為了方便起見,訊息結構的名稱會對應至 HL7 檔內放置的第一個 (,) 觸發程式事件。 同樣地,上述觸發程式事件資料表中以 IN1 開頭的區段群組,包括 IN2、IN3 和 ROL,會重複為群組。 其名稱-從 2.5 版開始是「保險」群組。
在版本 2 中,版本間相容性規則要求該標準的後續版本不包含使舊版失效的結構,以支援介面的演進。 這需要您不要移除觸發程式事件,而且您不會針對不同的用途使用觸發程式事件,或與原本預期的抽象訊息不同。 對於抽象訊息,這表示您無法從訊息中移除區段,也無法將強制區段設為選擇性或重複的區段。 如果您新增區段,則必須在訊息結尾或在訊息內重複群組的結尾執行此動作。
Microsoft BizTalk Accelerator for HL7 的下列功能 (BTAHL7) 支援下列需求:
支援從 V2.1 開始的所有觸發程式和訊息結構,並繼續進行 V2.5。
透過新增區段並選擇性地自訂區段和重複來支援當地語系化。