官术网_书友最值得收藏!

第三節 HL7 V3 RIM 和CDA R2標準

一、HL7 V3 RIM

為解決HL7 V2消息標準存在的不足,HL7自1996年開始了HL7 Version 3(簡稱HL7 V3)的設計和開發。2003年7月,HL7頒布了第1版經過美國國家標準局(ANSI)認證的V3標準,截至目前,HL7 V3最新版可以在HL7官方的HL7 Version 3 Product Suite網站[7]獲取。HL7 V3標準的基本特點是以模型來構建臨床信息及信息交換場景,并由此生成計算機可使用的以XML形式表現的消息和醫療文書,HL7 V3全部標準均來源于基于通用建模語言(Unified Modeling Language,UML)規范的綜合醫學信息模型,即HL7參照性(醫學)信息模型(HL7 Reference Information Model,HL7 RIM[8])。HL7 RIM目標是覆蓋醫療健康領域信息表達和交換的全部需要,其范圍不局限于臨床信息,也包括行政、財政、公共醫療保健、管理和安全等領域。HL7 RIM是HL7 V3的各類標準的基礎和源頭。因為HL7 RIM是一個覆蓋全部醫療健康領域的信息模型,因此它具有高度的抽象性,它通過6個核心類(back-bone classes)、相應的衍生類,類間的關系,以及與醫學代碼的耦合綁定,形成了抽象化的RIM模型。RIM模型中的6個核心類分別為:醫療事件(act)、參與方(participation)、實體(entity)、角色(role)、事件關系(actrelationship)、角色關系(rolelink),如彩圖8-8所示。RIM模型的6個核心類分別采用不同顏色的背景色,便于識別和閱讀。

HL7 ROM采用統一建模語言UML的類圖表示,包含類名、屬性和屬性表示的數據類型(有關數據類型的詳細內容請見本書第九章第三節)。彩圖8-8中,核心類與子類是泛化(衍生)關系,核心類之間是雙向關聯關系,核心類之間關聯關系的基數表示可以重復出現的次數。例如,0表示不出現;1表示出現1次;*表示可出現任意次;0..1表示可以不出現或出現1次,0..*表示可以不出現或出現任意次;1..*表示可以出現任意次,但至少1次。

彩圖8-8 HL7 RIM核心類關系圖

1.醫療事件(act)

代表了在醫療衛生管理和服務過程中的已實施的或計劃實施的需要記錄在醫療文書中的各種醫療活動、事件、處置,和措施等。在醫療健康領域常見的醫療事件子類(又稱衍生類)有:臨床觀察(clinical observation)、健康評估(assessment of health condition)、醫療目標(healthcare goals)、治療服務(treatment services)(如藥物治療、手術、物理治療、心理治療、化療等)、輔助、監護、護理照料(assisting,monitoring or attending)、對患者或親人提供培訓和教育服務(training and education services to patients and their next of kin)、公證服務(notary services)(如立遺囑、編輯和維護文件檔案)、編輯和維護文件檔案(editing and maintaining documents)等。

2.參與方(partici pation)

代表了醫療事件的相關參與方,如對于一臺外科手術來說,參與方涉及誰做了手術、手術患者是誰、手術是在哪個手術室完成的等。在醫療健康領域常見的參與方子類(又稱衍生類)有:①行為的執行者,如外科醫生、做體檢的護士、做CT檢查的影像科醫生等;②行為的對象,如患者、儀器等;③行為實施地點;④負責人、共同簽署人、目擊證人、病史申訴者;⑤收件人、信息接收者等。

3.實體(entity)

代表了與醫療行為相關的物理存在的人或物(如自然人、醫院建筑、醫療儀器、組織等)。實體類有四個子類(又稱衍生類),包括:①生命體類(living subject),是指有生命的,如人類、動物、生物;②材料類(material),指無生命的,如容器、床單、藥品等;③組織類(organization),代表組織、機構等,如公司和機構、政府部門、保險公司等;④地點類(place),指物理地點,如城市、醫院、病房、診所等。

4.角色(role)

代表了實體在參與到醫療衛生事件中時所扮演的角色,如自然人作為一個實體,在參與到醫療衛生事件中時,角色可能是醫生,但在生病的情形下,角色則轉換為患者。角色類有四個子類(又稱衍生類),包括:①進入類(access),指給身體治療用藥或排出物質(分泌物、尿液)到體外的設備所擔當的角色;②雇員類(Employee),雇員所擔當的角色;③有資格證的專業實體類(licensed entity),如醫務輔助人員的培訓文憑等;④患者類(patient),指接受醫療服務的生命體所擔當的角色。

5.事件關系(act relationship)

代表了醫療事件之間的關系,例如急性闌尾炎的診斷與闌尾切除術這兩個醫療事件之間的關系為因果關系;一次肝功能測試由6個測試項構成:丙氨酸氨基轉移酶(ALT)、堿性磷酸酶(ALP)、門冬氨酸氨基轉移酶(AST)、膽紅素、白蛋白、總蛋白,那么肝功能測試和6個測試之間的事件關系為構成;醫生現在不能給患者做手術,患者正在發高燒,在該事件中事件關系定義為先決條件,原行為是不能給患者做手術,目標行為是患者正在發高燒。

6.角色關系(rolelink)

代表了個體角色之間而不是實體之間的關系。如進入類(給身體用藥治療角色——阿莫西林)角色與患者角色之間的依賴關系,當患者角色結束,給身體用藥治療的角色也就隨之結束。

圖8-9顯示了參與方、角色、實體的衍生類。

圖8-9 參與方、角色、實體的衍生類

HL7 RIM版本持續更新,新版本會調整或更新舊版本的局部內容,但整體框架穩定不變。HL7 RIM是一個的高度抽象的信息模型,這決定了基于RIM模型為不同的醫學專業領域設計臨床信息模型時,需要結合臨床專業的特點和需要,對RIM模型進行改進,對其中不符合專業實際的信息和數據關系進行調整,并創建符合專業域業務和信息要求的新的衍生類,經此過程創建域消息信息模型(domain message information model,DMIM)和具化消息信息模型(refined message information model,RMIM),如圖8-10所示。

圖8-10 RIM D-MIM R-M IM關系圖

域消息信息模型(DMIM)是RIM的一個子集,它包括一組完全擴展的類克隆、屬性和關系,用于為任何特定的域創建用于信息交換的消息及特定域的信息模型。例如“病歷/結構化文檔”域使用的數據類與“患者管理”域使用的數據類有很大的不同。那么,這兩個域的DMIM也將是很不相同的,盡管這兩個域都是從RIM派生而來。

與HL7 V3標準中的其他模型一樣,域消息信息模型是一個顯示類之間關系的圖,但它使用由HL7開發的圖形和符號規則來進一步約束RIM核心類的特定語義結構。HL7圖形和符號約定簡化了一些關系約定,使圖表更小、更簡潔,并以可視方式傳遞更多信息。理解圖形約定和符號是理解如何閱讀DMIM的關鍵。用于DMIM的相同的圖形和符號約定也用于RMIMS。 HL7定義的圖形和符號約定可以參考圖8-11所示的文件。

圖8-11 HL7圖形和符號約定規則文件

域消息信息模型覆蓋了醫學專業域內的主要數據分類、各數據項目的屬性、數據類間的關系和參與方等,但尚未細化到在應用層面的消息定義。為使域消息信息模型轉化為可供數據交換和軟件研發使用的具體化消息信息模型,我們需要對域信息模型中各個類的屬性的數據類型、基數值、類間的關系,以及對應的值集進行明確的定義,形成更具體、可轉化為軟件功能模塊的信息模型,經此過程創建的信息模型,稱為具化消息信息模型(refined message information model,RMIM)。

下面部分所介紹的CDA信息模型,可以理解為是一個源于RIM,專門用于規范醫療文檔結構化和實現文檔共享目標的RMIM模型。

具化消息信息模型(RMIM)用于表示在DMIM模型中,從一個根類或多個根類開始的,序貫連接相關數據類,針對醫學專業域內具體應用場景而定義的消息信息模型,此模型可以直接轉化為用于交換的消息內容。每個RMIM都是DMIM的一個子集,并且只包含組成從RMIM根類的派生出的類、屬性和關聯。

如圖8-12所示,HL7 V3在醫療衛生管理和服務各專業領域內的信息模型及實施標準的建立通過6個核心類的擴展和RIM→DMIM→RMIM→HMD的概要模型到專業域模型的具體化而完成。HL7 RIM同時還包括數據類型模型(data type model)和術語模型(vocabulary model)。

圖8-12 RIM-DMIM-RMIM由概要到具體

HL7 V3數據類型模型(data type)定義了數據類型的標準,術語模型則定義了由HL7負責維護的醫學概念領域(concept domain)、代碼系統(code system)、代碼集(value set)和代碼(code)等。限于篇幅,在此不做介紹,本書第九章相關部分會對這些主題進行介紹。

二、HL7 V3 CDA介紹

HL7臨床文檔架構(clinical document architecture,CDA)[9]標準是一個文檔標注標準,它詳細規范了臨床文檔(如出院總結、過程記錄、程序報告等)的結構和語義以支持文檔的交換,是HL7 V3標準的一種,由HL7結構文檔技術委員會(Structure Document Technical Committee,SDTC)負責開發和維護。美國國家標準局(ANSI)于2000年批準了HL7 CDA第1版(CDA Release One,CDA R1),使得CDA R1成為第一個起源于HL7 RIM,通過對HL7 RIM的進一步約束和細化而產生的支持臨床文檔交換的標準。HL7 CDA第2版(CDA Release Two,CDA R2)于2005年得到美國國家標準局(ANSI)批準認證,在美國開始正式使用;2009年,CDA R2得到國際標準組織(ISO)的認證,成為ISO標準(ISO/HL7 27932:2009)[10]。自2005年CDA R2標準面世至今,在世界范圍內得到廣泛的認可和應用,今天大家提及和應用的CDA標準,均默指為CDA R2標準,也是本節的主題。

(一)CDA概述

臨床文檔具備以下特點。

1.存續性(persistence)

一個臨床文檔在法律規定的時間內應當不被更改的持續保存。

2.保管方(stewardship)

一個臨床文檔應當有一個可以信賴的保管方。

3.法律效力(potential for authentication)

一個臨床文檔的內容可以具備法律效力。

4.語境(context)

一個臨床文檔的內容基于臨床文檔所描述的上下文語境。

5.完整性(wholeness)

一個臨床文檔的真實、準確性基于全部文檔內容,而不是部分內容。

6.可讀性(human readability)

一個臨床文檔必須是可讀的。

一個CDA文檔是具備以上臨床文檔特點的定義清晰、完整的信息客體,由文字、圖像、聲音,和其他多媒體內容組成。

HL7 CDA文檔是以可擴展標記語言(extensible markup language,XML)的編碼方式存在,其中的數據可以直接被計算機通過XML軟件工具進行處理。HL7 CDA使用HL7 V3 數據類型,它的數據關系繼承了HL7 RIM的數據關系定義。CDA標準有豐富、靈活的內容呈現方法,通過對文檔級(document level)、章節級(section level)和條目級(entry level)、模板(template)數據元素的約束和詳細定義,通用的CDA標準可以被進一步具體化和個性化,以支持不同類型的臨床文檔。

HL7 CDA標準具有明確的范圍:為交換而定義的臨床文檔標準。在文檔交換場景之外的內容及數據格式規范(如如何保存CDA文檔)不屬于HL7 CDA標準的范疇,CDA標準也不對如何創建和管理CDA文檔進行規定或指導。

CDA標準的建立是為了支持在不同系統中交換不同技術復雜度的可讀性文檔,提供獨立于傳輸和存儲機制的病患醫療記錄標準,同時具有良好的適應性,能夠快速設計。因此為實現這些目標,CDA標準遵循的設計原則包括:①遵循XML標準、HL7 RIM;②盡量降低技術門檻;③設計過程中僅考慮最小需求;④與專業需求相一致;⑤必須保證CDA文檔是人可讀的,可以使用通用的XML瀏覽器、打印驅動以及CDA樣式表等手段來實現;⑥支持開發標準。

(二)CDA主要構成

CDA文檔的以〈Clinical Document〉開頭,〈Clinical Document〉是CDA XML文檔的根元素。它包含一個文檔頭(header)和一個文檔體(body)。文檔頭位于〈Clinical Document〉和〈structured Body〉之間,對文檔進行標識和分類,同時提供文檔的所屬患者、參與醫生、就診情況、簽名等信息。文檔體包含報告內容,可以是非結構化的,也可以是結構化的。結構化的內容位于〈structured Body〉元素內,并具體分布在不同的章節(section)或子章節(nested section)中。

CDA文檔的章節內容包含在〈section〉元素內,每個章節可以包含一個文字敘述部分(narrative block)、任意數量的條目(entry)以及外部參考(external reference)。章節中的文字敘述部分位于〈section〉下的〈text〉元素內,通過轉化,它應當形成適當的文本格式以供人閱讀。與文字敘述部分相對應的結構化和使用標準術語代碼的內容則位于〈section〉下的〈entry〉元素內,供計算機程序進行處理(如決策支持、醫療質量分析等)。在同一個〈section〉下,〈entry〉包含的結構化、代碼化的內容與〈text〉包含的描述性內容通常具有一致的含義。在多大程度上對文檔內容進行結構化和代碼化處理取決于對數據顆粒度水平的要求程度,對全部內容進行結構化和代碼化處理通常沒有必要,CDA文檔的接收者通常也不需要解析和處理全部的結構化和代碼化的CDA條目。

在實際應用中,CDA文檔交換雙方或許會添加不同的條目、使用不同的模板,和支持不同的臨床文件類型。針對不同情況,CDA標準都可以較簡單、靈活地予以支持。比如,CDA文檔可以簡單到只包含敘述性自由文本而沒有任何結構化內容,也可以復雜詳盡到全部內容均為結構化和代碼化,以支持深度的計算機數據分析和挖掘。CDA的條目可以包含子條目和引用外部參考。外部參考的引用通常是在CDA條目中完成,它可以引用CDA文檔以外的內容,比如圖像、手術操作或臨床觀察結果等。圖8-13顯示了CDA文檔的主要構成,包括〈section〉下的兩個〈observation〉CDA條目和一個〈substance Administration〉條目,其中〈substance Administration〉條目中有包括了一個〈supply〉的子條目。

圖8-13 HL7 CDA文檔主要構成

如HL7 RIM起源中所介紹的,HL7 RIM是HL7 V3的基石,它作為終極的最權威的信息模型規范,指導、控制和驗證醫學健康各個領域的專業化的HL7 V3標準。對通用HL7 RIM進行繼承、約束,并開發具體醫學領域的V3標準的方法學在HL7開發框架(HL7 Development Framework,HDF)文件中有清晰的闡述[11],CDA R2對象模型正是基于HL7醫學信息標準開發框架(HDF)所規范的流程從HL7 RIM模型中繼承和約束而來。通過HL7 XML工具,CDA R2對象模型和其中的數據類型、數據關系被自動轉化為CDA XML Schema。CDA中的文字敘述部分則通過手工的方式定義了對應的XML Schema。圖8-14列出了HL7 CDA R2相關的XML Schema文件。

圖8-14 HL7 CDA R2 XML Schema Definition(XSD)文件

(三)HL7 V3數據類型和術語

數據類型規定了HL7 RIM各類所含屬性可攜帶的數據的結構和格式,并對其取值集合及賦值產生影響。雖然一些簡單的數據類型沒有太多內在的語義內容(如Integer、Timestamp),但HL7同時也規定了一些復雜的數據類型,比如General Timing Specification(GTS)數據類型,支持復雜的時間表達;Concept Description(CD)數據類型,支持后組式(Post-Coordination)概念表達(即自術語系統中將多個代碼組合在一起來代表一個具體的概念)。CDA中的一些XML元素的屬性(如ClinicalDocument.code 和SubstanceAdministration.routeCode)支持用HL7定義的代碼或HL7認可的醫學術語系統(LOINC、SNOMED CT、ICD等)中的代碼來表示臨床概念,與這些屬性相關聯的代碼集(valueSet)提供了可選代碼。代碼集有CNE(Coded No Extensions)和 CWE(Coded With Extensions)兩種類型。CNE型的代碼集表示相關聯的XML元素的屬性的值只能從代碼集中選擇;CWE型的代碼集表示在必要時,相關聯的XML元素的屬性的值可以從代碼集外選擇。

CDA中通過使用CD數據類型可以支持后組式概念表達。例如:SNOMED CT定義了一個“蜂窩組織炎”概念,一個“發現部位”屬性,一個“足部”概念,這三個SNOMED CT代碼結合在一起,在Observation.code中即可創造出后組式概念表達“{蜂窩組織炎,發現部位=足部} =足部蜂窩組織炎”,此后組式概念表達也可以簡單地通過一個SNOMED CT代碼“足部蜂窩組織炎”來表達。雖然HL7 V3 CD數據類型提供了結合多個代碼進行概念表達的方法,但需要依賴于標準術語系統本身的規則去決定哪些代碼可以被結合在一起以及恰當的后組式表達格式。

(四)CDA R2對象模型

CDA R2對象模型是CDA標準的技術圖示,它沿用了HL7 RIM的模型表達和標注規范,提供了詳細的CDA中每個類的約束和精煉的呈現。

1.CDA R2文檔頭

CDA文檔頭為整個文檔設置了語境,使臨床文檔能夠在機構內、機構間互相交換,以方便臨床文檔管理和方便將個體患者臨床文檔整合進患者終身電子醫療記錄。CDA模型的起始點是ClinicalDocument類,ClinicalDocument類包括許多屬性,比如代表文檔唯一標識符的ClinicalDocument.id;代表文檔種類的ClinicalDocument.code(用LOINC術語系統中的文檔代碼表示病史和體檢報告、出院小結和病程記錄等);代表文本創建時間的effectiveTime;代表文件保密級別的confidentiality-Code等。CDA R2的文檔頭還定義了相關的各類參與者,如認證者(authenticator)、作者(author)、就診參與方(encounter participant)、法律認證者(legalAuthenticator)、執行者(performer)等。

2.CDA R2文檔體

文檔體包含臨床報告內容,可以是非結構化的純文本報告形式,以NonXMLBody元素表示;也可以是結構化內容,以StructuredBody表示。StructuredBody含有一或多個章節(Section)組分。Section類包括很多屬性,如Section.id代表章節的唯一標識;Section.code代表章節的類別,可以通過使用LOINC術語系統的不同代碼來代表諸如主訴、過敏反應、家族史等類別;Section.title表示一個章節的名稱;Section.text則包含該章節的可讀性內容,文檔作者需要保證它的準確性、真實性和可讀性。章節中可以有任意個數的條目(entry),條目用來代表結構化、代碼化的內容。條目包括以下各類。

(1)Act:

繼承于HL7 RIM Act類,當其他條目類均不適用于表示一個臨床概念時,則用Act表示。

(2)Encounter:

繼承于HL7 RIM的PatientEncounter類,表示各類就診,包括隨訪及患者轉診。

(3)Observation:

繼承于HL7 RIM的Observation類,表示代碼化或其他的臨床觀察項目和結果。

(4)ObservationMedia:

繼承于HL7 RIM的Observation類,表示臨床文檔中的多媒體內容。

(5)Organizer:

繼承于HL7 RIM Act類,表示性質相似或有關聯的一組數據。

(6)Procedure:

繼承于HL7 RIM Procedure類,表示臨床手術或介入性操作。

(7)RegionOfInterest:

繼承于HL7 RIM的Observation類,表示在影像中需要特別注意的部分。

(8)SubstanceAdministration:

繼承于HL7 RIM SubstanceAdministration類,表示與藥物相關的各類臨床事件,如用藥史、藥物醫囑、發藥等。

(9)Supply:

繼承于HL7 RIM的Supply類,表示一方提供給另一方的材料或物件。

條目類同樣包括很多屬性,如id、時間、類型代碼、值、參與者等。條目彼此之間可以有語義關聯,如“急性闌尾炎”診斷(Observation)導致了“闌尾切除術”手術(Procedure)。條目間邏輯關聯關系的建立通過entryRelationship實現,entryRelationship的屬性typeCode通過采用不同的HL7定義的關聯關系代碼,可以較為準確地代表各類邏輯關聯關系。如typeCode的值為CAUS時,即代表一個事件導致了另一個事件的產生;當值為SAS時,即代表了一個事件發生于另一個事件之后;當值為COMP時,即代表一個對象包含著另一個對象。圖8-15表示了一個包含entryRelationship的處方CDA樣例。

CDA R2是一個臨床文檔架構,而不是某類具體臨床文檔的格式、內容標準規范。因此,HL7結構化文檔技術委員會(SDTC)采用了CDA實施指南(CDAimplementationGuide,CDA IG)來規范具體的臨床文檔的格式,內容,及醫學代碼關聯,有代表性的CDA IG是繼續醫療護理文檔(continuity of care document,CCD)。

三、HL7 V3 CDA R2標準總結

CDA R2代表了HL7 V3走向語義互操作能力(semantic interoperability)的堅實一步,為臨床文檔的交換提供了可實施的標準。因為CDA R2的小巧(僅包含6個XSD文件)及清晰的使用場景(僅支持),使得它從問世至今,在全世界范圍內得到廣泛的應用。美國的電子病歷有意義使用(EHR meaningful use)法案中,強制要求了基于CDA R2標準的臨床文檔交換和獲取。自2011年起,HL7結構化文檔技術委員會(SDTC)開始了將已有的CDA實施指南進行統一梳理、融合的工作,并在此基礎上產生了統一的CDA臨床文檔庫(consolidated CDA,CCDA)實施指南[12],為CDA的落地實施提供了更好的支持。CDA R2基于HL7 RIM模型,采用XML作為交換格式,對國際化應用有很好的支持,同時支持標準醫學代碼在不同數據水平上的關聯,與HL7 V2消息標準對比,有了長足的進步,但同時有學習時間較長、實施成本較高,以及在其他非臨床文檔領域過度使用等問題。

圖8-15 HL7 CDA條目-處方醫囑

主站蜘蛛池模板: 金秀| 紫云| 襄汾县| 鄂托克前旗| 石林| 威远县| 台北县| 宁明县| 湟中县| 朝阳市| 南雄市| 长治市| 荆州市| 永川市| 佛教| 西宁市| 六枝特区| 石家庄市| 娄底市| 定州市| 凤庆县| 灵川县| 溧水县| 亚东县| 响水县| 恩平市| 平利县| 河间市| 冀州市| 凉城县| 浮梁县| 定日县| 澄迈县| 鹤庆县| 济阳县| 宁津县| 宁国市| 沂水县| 陆河县| 桐城市| 固原市|