一种基于HL7 RIM的Health-Care数据模型
主要内容:
1.简要介绍HL7
2.介绍两种主要的数据模型ER和EAV
3.结合ER和EAV的混合模型:ER-and-EAV.
4.新模型在CG系统中的应用。
1.简要介绍HL7(略)
2.两种数据模型ER和EAV。
ER模型就是我们所熟悉的关系模型不做介绍。
EAV模型是一个三元组模型:实体,属性,属性值。如:病人,街道地址,123Chestuat Street,。在每个EAV模型表中,每一行存储一个三元组。
ER和EAV模型的比较:
(1)EAV设计和管理方便容易,ER设计比较的复杂且开销也较高。
(2)在ER中查询比在EAV中简单。
(3)在EAV中增加实体的新属性时,不需改变数据库的设计,而ER做不到。
用EAV模型存储医学临床数据是很有吸引力的,因为每增加一个数据不需要更改数据库的设计。
3.混合模型ER-and-EAV实现HL7 RIM的数据模型。
3.1HL7 RIM模型:HL7 信息参考模型。
HL7 RIM 实际上是一个ER模型,专门针对临床医学相关数据的特点而提出来的。HL7 RIM有6个基类:Act,Entity,Role,RoleLink,Participation,ActRelationship,所有的RIM类是用ER方法建模得到的。每个RIM类可被看作一个ER实体。为了维持RIM中类之间的关系,很自然的在表中引用了外键。
3.2建模HL7 RIM的遗传性。
Single table per class hierarchy:父类和子尖的对象存储同一表内,表中包含了所有的尽可能遗传属性。方法简单,但效率不高。
Tables that do not contain inherited attributes:一类一表且不包括继承的属性。方法比较复杂,效率高,不过添加,更新和查询也很复杂。
Tables that contain inherited attributes:一类一表,且包括继承属性,这是在HL7 RIM模型中用到的最多的方法。
3.3 Hybrid(ER-and-EAV)方法建模观察类
结合ER和EAV各自的优势来建模观察类。在这个方法中,一张表只存储具有相同数据类型的属性值;同时引用外键指向其父类。也就是不同类型的属性值用不同的表存放。
3.4HL7 RIM数据类型建模
Multiple columns in the class table:由多个部分组成的数据类型,每一部分作为单独的列项。
A separate table for the data type and a foreign key in the class table:把所有的数据类型放在一张表中,同时引入外键指向存放有对应的数据表。
A separate table that includes a foreign key in the data type table: 把所有的数据类型放在一张表中,同时外键指向拥有者数据表。
3.5 要考虑到的Health-care相关数据。
稀疏数据,大量的说明性数据,非可加变量,属性集的快速膨胀,非标示数据,源数据与派生数据的区分,实时数据等等。根据这些数据的特点设计出基于RIM的物理数据模型并讨论了在存储临床医学数据时的优势。
4.CG产品介绍
CG构架见文章Figure 3.CG面向消息的构架,支持几种消自己标准。
HCN :Heath-care collaborative NetWork。主要收集Heath-care 信息(标准的信息格式)。主要特点能集成HL7 2.x的信息,作为一条基于RIM CDA(Clinical Doccument Architecture)信息。
HL7 CDA Builder:建立CDA和其它标准的HL7信息并使格式保持一致。
UDIP:是一个扩展平台,应用于非标示病人信息。
DPE:发送适当的数据到解析器,以便将解析器的信息地导入到相关的数据库。
CGAM:存储当前的Health-care信息,便于用来分析和报告。
DDQB:终端用户查询数据。