HL7医学信息解析及格式转换技术研究Word文档下载推荐.docx
《HL7医学信息解析及格式转换技术研究Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《HL7医学信息解析及格式转换技术研究Word文档下载推荐.docx(31页珍藏版)》请在冰豆网上搜索。
![HL7医学信息解析及格式转换技术研究Word文档下载推荐.docx](https://file1.bdocx.com/fileroot1/2022-12/7/5eb2cd14-aa36-4ca5-bd9f-82cb4d0b7e14/5eb2cd14-aa36-4ca5-bd9f-82cb4d0b7e141.gif)
关键词:
HL7;
信息解析;
格式转换;
技术研究;
TheResearchofHL7MedicalInformationAnalyticalandFormatConversionTechnology
Abstract
Withthecontinuousimprovementofpeople'
slivingstandards,medicalandhealthawarenessisfurtherenhanced,especiallyunderthesevereimpactofsomesuddeninfectiousdisease,suchasasevereblowtoH1N1,SARS,AIDS,theRegionalHealththegrowingdemandforinformationexchange.Constructionofregionalhealthinformationinvolvingdataexchangeandintegrationbetweenthevarioushealthunits,manyunitsareself-developedsoftwareprovider,openstandards,theyarenotuniform,resultingintheexchangeofmedicalinformationdifficultsoaseriesofdataexchangeintegrationstandardarerequired.
HL7messageparsingtheHL7messagestringparsingasanabstractdatastructure,itisoneofthecorefunctionofthenumberofmedicalinformationsystems.TheresearchisrequiredtobefamiliarwithandunderstandtheHL7standard,masterHL7twomessageencodingformatandstandard;
toachievethemutualconversionbetweenHL7medicalinformationanalyticalandtwokindsofencodingformats,ER7formatandXMLformat.
ThisdesignusestheJavaprogramminglanguage,usingtheEclipseintegrateddevelopmentenvironment,theHAPIopensourcetoolkitsupportingdevelopment,andfunctiontoparsetheHL7messageandHL7twotypesofinformationencodedinterchangeable,andresearchhasveryimportantpracticalsignificance.
Keywords:
HL7(HealthLevelSeven);
InformationAnalysis;
FormatConversion;
TechnologyResearch;
目录
摘要I
AbstractII
第一章引言1
1.1研究背景1
1.1.1HL7的发展历史2
1.1.2其它一些医疗信息交换标准的介绍2
1.2HL7标准在国内外的应用3
1.2.1HL7在我国的推广3
1.2.2国外的HL7工具包和相关产品4
1.3论文结构6
第二章HL7V2标准8
2.1HL78
2.1.1基本概念8
2.1.2数据类型(DataTypes)11
2.1.3HL7工作原理11
2.1.4HL7标准的应用14
2.2HL7消息处理14
2.2.1应用程序处理规则14
2.2.2确认消息15
2.2.3显示消息15
2.3查询15
2.3.1查询触发事件和消息定义16
2.3.2原始模式查询16
2.3.3原始模式延迟访问17
2.3.4增强模式查询消息17
2.3.5增强查询模式应答消息17
2.3.6查询消息执行要点17
2.3.7查询错误应答17
2.4HL7V2.X编码方式17
2.4.1ER7编码方式18
2.4.2XML格式消息18
2.5本章小结20
第三章HL7消息解析21
3.1HL7分析协议21
3.1.1V2.xHL7消息结构21
3.1.2V2.xHL7消息解析21
3.2编码、解析的类函数23
3.3本章小结24
第四章HL7消息格式转换25
4.1HL7消息格式转换25
4.1.1HL7消息格式转换目的和意义25
4.1.2ER7格式的消息转换为对应的XML格式的消息25
4.1.3XML格式的消息转换为对应的ER7格式的消息27
4.2HL7消息两种格式转换的函数27
4.3本章小结29
第五章HL7的影响30
第六章总结与展望未来31
6.1总结31
6.2展望未来31
参考文献33
致谢35
第一章引言
一.1研究背景
当今,随着计算机技术和互联网的飞速发展,把信息化社会进程推进了一个崭新的阶段,信息的传送与交流已成为整个社会生活正常运作的重要基础。
对于医疗信息产生、管理、传递及格式转换等也出现了许多问题,这迫切需要人们来处理解决这些问题,也就形成了标准。
对于标准的起源,可以这样理解:
标准化是随着多方应用而产生的,应用是标准产生的前提条件。
每一个行业能存在的基础就是能应用于生活,在应用中,要达到最好的效果,标准化是必由之路。
只有标准化了,市场才能细分,行业才能实现利润。
医疗疗行业也是同样如此,只有在医疗市场细分后,医疗信息化相关的IT厂商才能在这个行业的某一个方面做专做精,这样才能有利可图。
从医院角度本身来讲,如果医疗行业都有了一个规范的行业通信标准,那么就能与其它医院进行医疗信息资源的共享,医院本身就实现优化了。
工作效率的提高,以便于降低医疗的成本,这样在进行医疗信息系统HIS(HospitalInformationSystem)建设时,常常只能对一家医疗信息系统HIS制造商进行选择,只有这样医院的各个业务模块才能实现资源共享[1]。
这样选取就不存在局限性了,不仅能选到在某一模块上领先的其它系统制造商,所以要形成一个统一的标准。
现如今,医院信息系统HIS已经广泛使用,如果由于缺少统一的医疗信息交换标准,使得各医院内部的的信息系统之间、不同的医院的HIS之间以及医院与保险公司之间的信息交流成为瓶颈,结果反而让每个医院都成了信息的孤岛,这样不论是对于医疗信息化事业的发展,还是对人们生活保障水平的提高,都是十分不利的。
为了解决由于信息交换的标准不同而出现的种种问题,这样在医疗信息行业中HL7标准技术就产生了。
HL7是由HealthLevelSeven,Inc.(美国)制定和维护、用于不同的医疗系统之间进行医疗数据传递的标准,美国作为当今世界的科技大国,它所广泛应用和发展的医疗信息交换标准HL7,逐渐走上了世界医疗卫生信息技术舞台。
目前,HL7组织的国际会员有20多个国家,我国在数据中心平台建设、标准软件接口开发、跨医疗体系系信息交换整合等工作中引进HL7的数据交换传递标准,使我国医疗卫生信息网建设从一开始就与国际接轨,为以后的国际医疗信息互联网交流和我国各医疗单位医疗信息互联互通打下基础,同时为我国各医疗单位软件的开发提供了一个规范,避免信息化建设过程中的资源信息的无谓浪费。
现在的大多数医院基本上安装了计算机系统,拥有一整套入院、出院、转院、放射、开票、临床试验及记账等功能[2]。
由于这些应用功能一般都是由不同厂商或组织分别提供,所以每个产品都有待定的信息格式,这就需要进行格式转换,从而被不同的人们所看懂。
一.1.1HL7的发展历史
自从1987年成立并且在1990年公布2.1版本以来,HL7标准已经走过了十多年的历程。
在这期间,通过HL7组织各成员的不断努力,HL7组织结构不断发展和扩大,HL7标准内容不断的完善的更新。
组织发展:
虽然HL7标准是源自美国国内的医疗信息交换标准,随着国际成员的不断加入,其发展方向、决策制定已经成为一个多国参与的活动,HL7标准之所以如此迅速的由美国走向世界,还要归功于美国跨国医疗IT厂商,在最近三年来,HL7组织会员增加了三倍,目前已经拥有2200多个会员,除了个人会员外,已有五个赞助单位及370个团体会员,其中包括164个厂商、17个顾问单位、177个医疗机构及12个一般性的营利机构。
版本发展:
在最初的HL71.0版本的出现覆盖所有接口结构、抽象数据集、医嘱输入、面向显示的查询。
任何新兴的事物的出现都不可能是一帆风顺的,不可能是尽善尽美的,HL71.0从内容和形式上都有明显的不足。
HL72.0版本应运而生,在随后的Tyson’sCorner全体会议,对HL72.0版本进行了准备、讨论后被确认下来。
1990年正式发布HL72.1版本,之后又陆续推出2.2版本、2.3版本、2.3.1版本、2.4版本、2.5版本,一直到目前最新的3.0版本。
HL7标准内容的确定是一个十分严谨和规范的过程,每一个内容都是在正式的细则和投票过程下产生的。
这些过程是在其它相关的医疗工业计算机机信息标准组织投票过程中被作为模型的,这些作业流程的设计符合美国国家标准学会的要求。
针对当前应的HL7版本,所涵盖的内容已经基本符合需求了。
一.1.2其它一些医疗信息交换标准的介绍
HL7医疗信息交换标准除外,还存在一些其它的医疗信息交换标准,例如:
1.ACR/NEMA联合委员会推出的医学数字图像存储与通信标准,即DICOM标准。
DICOM标准和HL7标准的主要区别在于前者侧重于图像的存储与传输,而后者侧重于文本传输。
这两种标准的融合,可以实现更加全面的医疗信息交换,IHE(IntegratingtheHealthcareEnterprise)委员会正致力于此项工作[3]。
2.ASTM标准(AmericanSocietyofTestingandMaterialsMedicalstandards)。
ASTM的委员会E-31是美国致力于实验室信息系统建设的组织,它下设有E-31.11、E-31.13等12个组委会负责相关医疗信息标准的制定,如ASTM1238.94和ASTME-31.11是临床实验室数据报告标准。
ASTM是相对ISO/OSI计算机网络开放互联模型应用层的协议,底层协议可以是任何可靠的协议,如TCP/IP,RS232等,传送的消息由ASCH字符组成。
为提高标准的通用性,HL7组织和ASTM组织在标准的制定上进行了一系列协商[4]。
3.ASC(TheAccreditedstandardsCommittee)X12电子文档交换标准。
ASCX12是美国一个应用于各个行业的电子数据交换的协议族,其中X12N主要侧重于医疗领域的信息交换。
HL7的编码规则借鉴了X12的模型,但也有所不同。
为了使标准更加通用,HL7和X12两个组织也进行了一定的合作[5]。
4.IEEEP1157组织提出的医疗信息交换标准“MEDIX一MedicalDataInterchange”。
它的主要目标也是建立异构信息系统间的数据交换协议,严格参照了ISO/OSI计算机网络开放互联模型的各层协议,包括远程系统服务项(ROSE-RemoteoperationserviceElement)。
HL7同它的主要区别在于既没有依赖ROSE,也没有采用ASN.1BER的语法。
虽然二者有所不同,HL7和MEDIX委员会一直保持联络以促进相互改进[6]。
5.日本在医疗信息交换上有MML(MedicalMarkupLanguage)标准,MML和HL7的XML表达很类似[7]。
上述标准都可以称之为电子数据交换标准EDI(ElectronicDataInterchange)。
HL7标准通过与众多标准之间的相互借鉴和相互促进,已经成为当前应用最广泛的医疗信息交换标准。
一.2HL7标准在国内外的应用
一.2.1HL7在我国的推广
对HL7标准在我国的现状以及未来发展趋势的认识,目前的基础工作是在我国国内推广此标准。
首先必须对我国医疗信息化建设的现状有清晰的认识,目前国内的的基本情况是:
1997年,我国开始实施“金卫工程”,大力推广医疗信息化建设,目前国内大型医院已初步实现了信息化。
2001年7月,我国以HL7中国研究中心(HL7CHINA)的名义正式成为HL7的国际会员,力求制定HL7FORCHINA的标准。
这个组织的目的十分明确,即在国内医疗行业机构、学术界及厂商大力协助下,推广符合我国国情的HL7标准。
目前我国对HL7标准的研究主要集中在HL7V2.X,我国的HL7协会2005年完成了HL72.4版的翻译工作,我国引入HL7已经成为必然。
目前也有一些医院采用支持HL7标准的设备,如福建省立医院,上海市第一人民医院,北京301西院,北医三院,天津泰达医院等,但在总体上说HL7标准在我国国内应用得并不十分广泛。
2000年6月,中国台湾省成为HL7的国际会员,中国台湾省卫生厅宣布HL7为医疗信息交换的官方标准,HL7Taiwan正式成立。
中国台湾省是较早加入HL7组织的国际成员之一。
“中国台湾省健康信息交换第七层协议协会”是目前中国台湾省的HL7组织形式,这个协会已经形成了成熟的运作模式,其组成具体包括会员大会、理事会、监事会以及各专门委员会等。
一.2.2国外的HL7工具包和相关产品
国外的HL7组织、医疗信息系统开发商、少数用户和个人在将HL7标准应用于医疗信息交换上做了很多有意义的工作。
但由于商业原因,大部分工作成果都没有公开。
下面介绍国外一些主要的HL7工具包和相关产品。
1.HAPI/NHapi
HAPI/NHapi,是由加拿大HealthNetwork大学所编写的,是用于解析HL7V2.X消息的面向对象的java开源工具[8]。
HL7V2.X的构造器和解析器是HAPI,它的主要任务是使java程序员很容易地使用HL7。
HAPI0.6版本是在2009年7月推出,这个版本主要支持HL7V2.5.1和V2.6。
HAPI1.0是在2010年4月推出的,这个版本提高了编译和解析HL7的速度,增加了一个新的返回工具PipeParser,和一些新的功能。
在2011年6月,HAPI又推出了1.2版本,此版本带来了一些错误的修复和一些改进方法,主要焦点是固定在解析和编码问题上,尤其是一些具体问题的OBX-5(可变)值解析并得到纠正。
因此HAPI是开源工具包,并很好的支持HL7V2.X标准,所以本论文采用HAPI工具包开发。
NHapi,是HAPI的.NET版本,主要基于.NET架构,它便于程序员采用.NET编程使用HL7。
NHapi工具包主要采用C#编程,它同样对HL7V2.X有很好的支持[9]。
NHapi比HAPI版本要新要慢,最新版本NHapi-2.0.2.0(.NET2.0架构的第二版),它很好的支持HL7V2.5。
2.ProtoGen/HL7
protoGen/HL7是GuntherSchadow在德国柏林布明杰弗兰克林大学医院(theBenjaminFranklinUniversityHospital,Berlin,Germany)攻读博士学位期间开发的。
ProtoGen/HL7软件的主要功能是在HL7标准文本文档中自动生成符合HL7标准定义的类,其中包括类的实现和类的接口[10]。
GuntherSchadow的主要工作分为:
①通过一些可用的工具(如:
用AWK语言编写,它是一个程序设计语言,可以很容易地处理结构化数据和产生格式化的报告。
)从HL7标准的文本文档中半自动化的能表达消息语法的简单格式或提取有用信息到表中。
②在文档中用PROLOG进一步处理,并提取的信息,同时生成C++代码。
③C++代码通过编译、打包成C++类库,在头文件中保存类的声明,在HL7应用程序中提供开发接口。
目前许多应用HL7的信息系统开发商集成使用ProtoGen/HL7,它能运行的操作平台是UNIX(FreeBSD),GuntherSchadow没有开发运行在windows操作平台上的版本。
3.HL7数据库的开发
在德国,FrankOemig开发了HL7的MicrosoftAccess数据库,集成了HL7V2.1、V2.2、V2.3和V2.3.1等四个版本[11],并提供友好的用户界面接口,通过数据库可以很快的访问触发事件、数据类型、消息结构、表中的可选值和数据元素(包括它们的成分和子成分)。
目前面向市场用的是这个数据库,同时这个数据库被打包成不同的模块,这样开发者可以根据自己的需要进行相应的定制。
早在1995年10月德国的FrankOemig在HL7用户研讨会上,介绍了用MicrosoftAccess数据库的实现方法和HL7数据库的结构[12],提出了怎样集成以下HL7实体的数据模型:
事件、功能域、数据类型、数据元素、成分、段、表和值、消息类型等,以及怎样在数据库结构中映射组合数据类型的方法。
4.SymPhonia3
symphonia3提新西兰orion公司开发的HL7软件开发工具包。
它的主要特点在于能够解析包括HL7、XML、HIPAA、X.12、EDIFACT、HCFA、ASTM、NCPDP及用户自定义格式等多种协议,直接产生符合协议定义的ActiveX对象作为编程接口,快速将工业标准转换添加到新的或己有的系统中,实现多个异构系统的集成。
Symphonia3的智能映射工具可以把其中的任何一种消息格式转换为其他另一种格式,实现广泛领域中的数据通讯。
它可以运行于多种操作平台上,在数据交换时具有加密功能,并且可以产生消息的RTF(RichTextFormat)或HTML文档。
Symphonia3宣称能够每小时解析300万条消息。
它是目前中国台湾地区广泛应用的医疗信息交换工具[13]。
5.NeoTools
NeoTools是美国NeoToolDevelopment,LLC公司的HL7系列产品。
该公司成立于1997年,专门从事医疗健康领域软件产品的开发、咨询和培训,最新与微软公司合作开发的HL7加速器能够使微软公司的BizTalkserver2000支持HL7VersionZ.x的所有版本,NeoTools包括一系列软件开发组件:
①NeoEnableForHL7:
HL7编码/解码的ActiveX组件;
②NeoConnectTCP:
利用TCP/IP协议进行消息交换的ActiveX组件;
③NeoQueue:
异步消息排队组件;
④NeosendForHL7:
发送消息组件;
⑤NeoReeeiveForHL7:
接收和确认消息组件[14]。
6.Chameleon
Chameleon是加拿大iNTERFACEWARE公司的产品。
该公司主要致力于开发集成到医疗信息领域的软件产品。
在Chameleon的演示程序中,Chameleon在消息解析时,人机交互的界面比较多,有很多功能的实现需要手工操作,例如Segments的识别需要手工导入消息中相应Segments的定义等[15]。
7.Medi7Parser
提供HL7消息解析的编程接口的Medi7Parser解析器是由美国Eversolve公司开发的。
一.3论文结构
HL7(HealthLevelSeven)标准已经成为医疗信息行业中应用最为广泛的医疗信息交换标准之一。
由于HL7标准的广泛应用,国内外大多数厂商均采用HL7标准研发医疗信息行业相关产品,其中HL7消息解析是众多医疗信息系统的核心功能之一。
HL7消息格式转换则实现了HL7两种编码格式之间的互相转换。
本课题采用Java语言编程,使用Eclipse集成开发环境,HAPI开源工具包辅助开发,实现解析HL7消息的功能并将HL7两种信息格式编码互相转换。
综合以上,论文初步实现了医疗信息交换中消息的解析及格式转换的基本过程。
论文全文分为五章,各章节的主要内容安排如下:
第一章:
介绍课题的研究背景,HL7的发展历史及其它医疗信息交换标准,在我国的推广,HL7工具包和相关产品。
第二章:
对HL7标准内容进行了详细说明,基本概念、分隔符、数据类型、工作原理,标准的应用;
充分解释了HL7消息处理,应用程序处理规则,确认、显示、查询、延迟、执行要点及错误应答都做了充分的介绍;
之后又介绍了HL7V2.X编码方式中的ER7和XML格式消息。
第三章:
对HL7V2.X消息解析做了的介绍。
详细介绍了HL7协议分析,V2.X标准的消息结构,消息解析;
对HAPI开源包在解析中用到的类做了简单的说明。
第四章:
介绍了HL7格式转换的研究与实现,HL7V2.X消息格式转换的目的和意义,对HAPI开源包在格式转换中用到的包和类做了简单的说明,介绍了ER7格式消息转换为对应的XML格式消息,XML格式消息转换为对应的ER7格式消息。
第五章:
HL7的影响与展望未来。
介绍了HL7标准对各方面的影响,并对今后的工作进行展望。
第二章HL7V2标准
HL7标准是建立在ISO标准组织之制定的OSI模型的最高层的应用标准,如下图2.1所示:
图2.1OSI模型
二.1HL7
标准资料是一种技术规范,详细的、即时的患者相关数据和临床技术知识对医疗服务有着非常重要的意义。
二.1.1基本概念
1.触发事件(Triggerevents):
开一个交换消息的现实事件,增补A包含了代表了所有定义