1前言随着医院信息化建设的进行,电子病历作为临床医疗信息的基础和医院信息系统的核心构成了、医疗卫生决策系统的基础6但国内目前各大医院通常并不把电子病历管理视为一个独立的单元,电子病历管理系统一般都是作为医院信息系统的一个模块存在。目前,对于病历信息的查询浏览也只能通过查询患者的一些结构化的数据库信息得到该患者的ID号,然后通过病历的存储规则来找到相应的病历。每次得到的信息都是个别的,而且无法实现全文检索.存在于病历文本中的大量非结构化的信息不能作为检索条件,因而这些信息也不能为医疗工作者所利用。因此.目前电子病历管理系统的检索查询机制迫切需要向满足医生需求、科研辅助和采用全文检索的方向转变,为以后电子病历管理正式成为的一个独立分支打下良好的基础。基于此,我们提出了基于Lucene检索引擎建立电子病历全文检索系统,它以基于关键字的全文检索技术为基础.能够提供方便快捷的方式为临床医疗、医学科研工作及病历管理提供支持。 2电子病历的前期预处理病历是患者在医院诊断治疗全过程的原始记录,贯穿于患者在医院就诊的各个环节中。由于目前病历信息的电子化大都附属于传统的HIS系统,但HIS系统并不等于电子病历系统。因为从电子病历的角度看患者信息应该是完整的、集成的.电子病历系统应该能够以统一的视图向用户提供患者的继承信息;而从传统的HIS每个子系统来看,患者信息却是局部的、分散的。所以要对电子病历进行全文检索,首先要建立一个规范的、合乎要求的电子病历描述模型,将分散于HIS系统中的电子病历信息读出并转换为统一形式的文件存储于电子病历库中。XML(eXtensibleMarkupLanguage,即扩展标记语言)就是建立并实现该模型的一个有效手段。XML是一种结构化描述语言。其优势在于,它不仅是一种标识语言,更是一种可以定义描述对象结构的元语言。XML采用了层次化的面向对象的结构描述方法.非常适合于描述病历这样复杂的内容.在表达能力方面优于关系数据库。 使用XML描述病历内容,要先定义病历内容的结构。在此基础上实现以数据库形式存储的患者信息到病历结构的转换,从而实现由以支持日常业务管理为目的的数据库描述到以患者为中心的描述。形成的XML文件是病历存储管理的基本单位。 3全文检索引擎Lucene简介Lucene是Apache软件基金会Jakarta项目组的一个子项目,是一个开放源代码的全文检索引擎工具包,作为一个优秀的全文检索引擎,其系统结构具有强烈的面向对象特征。首先是定义了一个与平台无关的索引文件格式;其次通过抽象将系统的核心组成部分设计为抽象类.具体的平台实现部分设计为抽象类的实现;此外,与具体平台相关的部分(比如文件存储)也封装为类,经过层层的面向对象式的处理,最终达成了一个低耦合高效率、容易的检索引擎系统。因此.Lucene得到了非常广泛的应用。4系统的设计与实现4.1平台和开发环境简介本系统的平台和开发环境为:操作系统:WindowsNT/2O00/XP;开发语言:Java,JSP;全文检索开发库:ApacheLucene2.2;Web服务器:ApacheTomcat6.0:开发工具:IBMEclipse3.2.0。4.2总体架构不电子病历全文检索系统主要实现对电子病历的表示、存储、组织和访问,即根据用户的查询要求,从电子病历库中检索出相关信息资料。其中心环节是电子病历内容的表达、信息查询的获得以及相关信息的匹配。整个系统设计为4个功能模块:数据预处理模块、索引建立模块、全文检索模块和用户界面模块。各个模块的基本功能和模块之间的逻辑和数据关系如图1所示。依图l中的序号,整个系统的信息处理流程为:A.数据预处理模块读入电子病历的原始数据(一般以数据库表的形式储存在HIS系统中),将原始电子病历加工为XML文件.然后储存于XML电子病历库中;B.索引建立模块读入XML电子病历库中储存的XML文件.把建立好的全文索引储存于全文索引库中;C.用户通过用户界面模块提出检索请求,用户界面模块调用全文检索模块使用电子病历的全文索引进行检索,将得到的检索结果返回给用户;D.用户查看了检索结果中电子病历的摘要后如果需要进一步查看电子病历的全文,可以通过用户界面模块直接根据检索结果中的文档ID从XML电子病历库中获取全文。5系统测试和评价5,1测试环境(1)软件环境测试环境采用Sun公司的JDK1.5.0,操作系统采用的是微软的WindowsXPSP2。数据库服务器采用的是Oracle8i及其自带的JDBC驱动。(2)硬件环境运行服务器采用的CPU为InterPentium3.0E,内存2GB.硬盘160GB。5.2测试结果测试过程中一共选取了3个和疾病症状有关的关键词肥胖、腹痛和恶心作为测试检索条件数据,测试结果经过进一步分析计算后可以得到的数据见表1。注:P@30指前30个检索结果中符合条件的文档数由于测试数据集过大(共约26000多篇),很难通过人工方式确定全部文档集中符合条件的文档数,所以无法有效地计算查全率;检索出的命中文档数量也比较多,但和搜索引擎一样,通常只有FirstPage的结果会被用户关注,因此我们计算的查准率只基于前30个检索结果。通过上表可以看出,本系统的查准率较高,基本达到了系统设计的性能要求。6小结从测试结果可以看出系统满足设计要求,符合功能需要。但是仅仅基于关键字检索显然是不够的,下一步要实现智能全文检索还需要对系统进行基于语义的检索功能扩展,使检索结果不仅仅满足于与用户提交的关键字进行字面上的匹配。而是检索出与此概念有关的、用户真正想要的信息,以进一步提高查全率[31。【参考文献】【1]1王晓,罗二平,张健.基于语义的电子病历智能全文检索叨.医疗卫生装备,2008,29(4):45-46.【2】薛万国.XML与电子病历m.国外医学:医院管理分册,2002(1):3334.[3]高少琛.基于查询拓展和聚类技术的资源检索系统的研究与应用[D1.上海:上海交通大学硕士学位论文,2007:10一11.
信息发布:广州名易软件有限公司 http://www.myidp.net
|