CN102609506A - 一种通过映射生成hl7消息的方法 - Google Patents
一种通过映射生成hl7消息的方法 Download PDFInfo
- Publication number
- CN102609506A CN102609506A CN2012100237893A CN201210023789A CN102609506A CN 102609506 A CN102609506 A CN 102609506A CN 2012100237893 A CN2012100237893 A CN 2012100237893A CN 201210023789 A CN201210023789 A CN 201210023789A CN 102609506 A CN102609506 A CN 102609506A
- Authority
- CN
- China
- Prior art keywords
- message
- tree
- source
- node
- xml file
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Document Processing Apparatus (AREA)
Abstract
本发明公开了一种通过映射生成HL7消息的方法,该方法首先读取源XML文件模板和目的XML文件模板,然后解析源XML文件模板和目的XML文件模板,分别生成源消息树和目的消息树,接着源消息树和目的消息树进行映射,生成XSL文件,最后根据XSL文件,读取源XML文件,自动生成相应的HL7标准格式的消息;本发明的方法通过简单的连线实现节点之间的映射,并自动生成记录了所有映射的XSL文档;本发明可以把自定义消息转换成HL7标准消息,同样也可以将HL7标准消息转换成自定义消息,只需要在源消息树里面导入HL7消息,目的消息树里面导入自定义消息的模板即可。
Description
技术领域
本发明涉及一种通过映射将自定义格式的消息转换成HL7标准格式消息的方法,便于医疗行业现存异构系统的集成,统一消息格式,共享数据。
背景技术
构建卫生信息平台,目前通用的方法是集成医疗行业现存异构信息系统。其中最主要的问题就是统一异构系统之间数据交换的格式。采用国际通用的医疗信息标准HL7,是提高国内信息化水平的必经之路。
HL7(Health Level 7),即标准化的卫生信息传输协议,是医疗领域不同应用之间电子传输协议,其中“7”表示该协议位于OSI(Open System Interconnect,开放式系统互联)模型的第七层应用层。HL7制定了医疗数据信息传输协议和标准,规范了临床医学和管理信息格式,降低了医疗信息系统互联的成本,提高了医疗信息系统之间数据信息共享的程度。HL7通讯协议中,消息(Message)是数据在系统之间交换的基本单位,每条消息都有各自的消息类型(以HL7版本2.4为例,消息类型有112种)。一个消息由多个段(Segment)组成,每一个段都有相应的名称,用于界定其内容或功能。每个消息段又由若干个数据字段(Field)组成,同时,数据字段又由一个或多个组件(Component)组成。这种层级结构的消息能够通过XML进行有效的刻画。
XML(Extensible Markup Language),即可扩展标记语言,是SGML(Standard Generalized Markup Language,标准通用标记语言)的一种。XML简单易用,是当前处理结构化文档信息的有力工具。XML具有跨平台的特性,是一种依赖于内容的技术,这使得XML为越来越多的应用程序所支持,成为了应用程序之间数据交换的唯一公共语言。HL7标准消息完全支持XML,并且有一整套完备的规范规定了XML标签的命名,数据的类型,数据的值域等。医疗机构中异构信息系统用XML存储的数据可以通过映射的方法,实现和HL7标准消息的转换。这种映射方法是通过GEF提供的可视化界面,利用简单的连线实现的。
GEF(Graphical Editor Framework),即图形化编辑框架,它给用户提供了图形化编辑模型的功能。GEF是具有标准MVC(Model—View—Control,模型—视图—控制器)结构的图形编辑框架。Model由我们根据业务的需求来设计,它提供了一种模型改变通知机制,用来把Model的变化告诉Control。Control在MVC结构里面是Model和View之间的桥梁,是整个GEF的核心。它不仅监听模型的变化,当用户编辑视图的时候,还要把编辑结果放映到模型上。GEF提供了两种View,分别是图形(GraphicalViewer)和树状(TreeViewer)。View主要是把Model以图形化的方式表现给用户。
目前,国内将异构信息系统数据格式转换成国际标准的需求越来越高,但是一种通用的便捷的方法尚未形成。本发明提供的方法,能有效地解决这一问题。
发明内容
本发明的目的在于针对现有技术的不足,提供一种通过映射生成HL7消息的方法,该方法实现了以XML格式存储的自定义消息转换成HL7标准格式的消息。
本发明的目的是通过以下技术方案来实现的:一种通过映射生成HL7消息的方法,包括以下步骤:
第一,读取源XML文件(自定义格式的XML文件称之为源XML文件)模板和目的XML文件(HL7消息标准XML文件称之为目的XML文件)模板;
第二,解析源XML文件模板和目的XML文件模板,分别生成源消息树和目的消息树(消息树,即XML文件所对应的树形结构);
第三,源消息树和目的消息树进行映射,生成XSL (Extensible Stylesheet Language,扩展样式表语言)文件;
第四,根据第三步生成的XSL文件,读取源XML文件,自动生成相应的HL7标准格式的消息。
需要注意的是第一步和第四步分别是读取源XML文件模板和源XML文件,两者的区别是,源XML文件模板是源XML文件的抽象,不包含具体的数据。
本发明的有益效果是:
1、简单易用:通过简单的连线实现节点之间的映射,并自动生成记录了所有映射的XSL文档。
2、直观:基于GEF的可视化操作界面,直接呈现出了用户所需进行的所有映射。
3、完备:支持的HL7标准消息包含了所有的2.X(2.1,2.2,2.3,2.4,2.5等)版本,以及最新的3.0版本。
4、反向映射:可以把自定义消息转换成HL7标准消息,同样也可以将HL7标准消息转换成自定义消息,只需要在源消息树里面导入HL7消息,目的消息树里面导入自定义消息的模板即可。
附图说明
图1为解析XML文件模板,生成消息树的流程图;
图2中,(a)为某XML文件模板,(b)为其所对应的消息树;
图3为通过映射生成HL7标准消息的整体过程图。
具体实施方式
下面结合附图详细描述本发明。
本发明通过映射生成HL7消息的方法,包括以下步骤:
第一,读取源XML文件(自定义格式的XML文件称之为源XML文件)模板和目的XML文件(HL7消息标准XML文件称之为目的XML文件)模板。
源XML文件模板和目的XML文件模板是不包含具体数据的XML文件,本方法通过DOM(Document Object Module,文档对象模型)来读取并解析XML文档。
第二,解析源XML文件模板和目的XML文件模板,分别生成源消息树和目的消息树。
源消息树和目的消息树的生成过程是一样,如图1所示,循环遍历XML文件中的元素Element,每个Element将作为根节点生成一棵树,该Element的属性便作为子节点加入到根节点下面,生成子树。不同的Element生成的树作为兄弟树,共同构成消息树。图2显示了某XML文件模板及其所对应的消息树。在消息树中,Element节点将用“e”来标示,属性节点将用“a”来标示。
本方法能将不同结构的XML文件转换成HL7标准格式的XML文件。源XML文件模板不唯一,所生成的源消息树也不唯一。目的XML文件模板,即HL7标准格式的XML是唯一的,所以相应的消息树也是唯一的。由于HL7标准消息由若干个消息段组成,所以目的XML文件模板的最小单位就是HL7标准消息段的XML文件。通过组合不同的消息段,即读取并解析不同的消息段的XML文件,即可生成用户所需的目的消息树。读取、解析若干个XML文件并生成消息树的实现过程和图一所示的过程相差无几,只需将若干次解析的结果合并生成消息树即可。
第三,源消息树和目的消息树进行映射,生成XSL (Extensible Stylesheet Language,扩展样式表语言)文件。
由XML文件生成的消息树,通过GEF提供的TreeViewer,能直观地以图形化界面展示出来。其中,消息树的节点就是GEF中的模型Model。
映射的过程就是连线的过程,即将源消息树节点和目的消息树的节点关联起来。关联的方式有四种:第一种,value-of,即直接赋值,将源消息树节点的值直接赋值给目的消息树的节点;第二种,for-each,即循环生成赋值,表示源消息树的某个节点可能出现若干次,如果出现若干次,则相关联的目的消息树的节点也出现与之相同的次数,并且一一对应赋值;第三种,choose,即选择赋值(也称之为有条件赋值),表示源消息树节点的值在符合一定条件情况下才赋值给目的消息树;第四种,string,即常量赋值,赋予相应的目的节点一个常量值。四种关联方式对应了四种连线,这四种连线都是继承并扩展了GEF提供的连线。
GEF中的监听器Control将监听模型Model的变化,每次连线都将改变了源消息树节点和目的消息树节点的相关信息。这些信息的变化将触发模型Model的监听器Control。源消息树的节点将记录连线终点(相关联的目的消息树的节点)的名称以及连线类型,同样的,目的消息树将记录连线起点(相关联的源消息树的节点)的名称和连线类型。连线结束后,遍历目的消息树节点所对应的模型Model,根据记录的信息生成XSL文档。XSL文档将记录所有的映射规则,即所有的连线,包括连线类型,以及连线的起点和终点。
第四,根据第三步生成的XSL文件,读取源XML文件,自动生成相应的HL7标准格式的消息。
根据第三步生成的XSL文件,输入源XML文件,调用JAXP(Java API for XML Processing,即Java程序设计语言中用于处理XML文档的方法集合)提供的transform方法,就能自动生成用户所需的HL7标准格式的XML文件。
Claims (4)
1.一种通过映射生成HL7消息的方法,其特征在于,该方法包括以下步骤:
(1)读取源XML文件模板和目的XML文件模板;
(2)解析源XML文件模板和目的XML文件模板,分别生成源消息树和目的消息树;
(3)源消息树和目的消息树进行映射,生成XSL文件;
(4)根据第三步生成的XSL文件,读取源XML文件,自动生成相应的HL7标准格式的消息。
2.根据权利要求1所述通过映射生成HL7消息的方法,其特征在于,所述步骤(1)中,所述源XML文件模板为自定义格式的XML文件模板,目的XML文件模板为HL7消息标准模板;所述源XML文件模板和目的XML文件模板是不包含具体数据的XML文件,通过DOM来读取并解析XML文档。
3.根据权利要求1所述通过映射生成HL7消息的方法,其特征在于,所述步骤(2)中,所述源消息树和目的消息树的生成过程一样,具体为:循环遍历XML文件中的元素Element,每个Element将作为根节点生成一棵树,该Element的属性便作为子节点加入到根节点下面,生成子树;不同的Element生成的树作为兄弟树,共同构成消息树。
4.根据权利要求1所述通过映射生成HL7消息的方法,其特征在于,所述步骤(3)中,所述映射的过程就是连线的过程,即将源消息树节点和目的消息树的节点关联起来;关联的方式有四种:第一种,value-of,即直接赋值,将源消息树节点的值直接赋值给目的消息树的节点;第二种,for-each,即循环生成赋值,表示源消息树的某个节点可能出现若干次,如果出现若干次,则相关联的目的消息树的节点也出现与之相同的次数,并且一一对应赋值;第三种,choose,即选择赋值(也称之为有条件赋值),表示源消息树节点的值在符合一定条件情况下才赋值给目的消息树;第四种,string,即常量赋值,赋予相应的目的节点一个常量值;四种关联方式对应了四种连线,这四种连线都是继承并扩展了GEF提供的连线;GEF中的监听器Control将监听模型Model的变化,每次连线都将改变了源消息树节点和目的消息树节点的相关信息;这些信息的变化将触发模型Model的监听器Control;源消息树的节点将记录连线终点(相关联的目的消息树的节点)的名称以及连线类型,同样的,目的消息树将记录连线起点(相关联的源消息树的节点)的名称和连线类型;连线结束后,遍历目的消息树节点所对应的模型Model,根据记录的信息生成XSL文档;XSL文档将记录所有的映射规则,即所有的连线,包括连线类型,以及连线的起点和终点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210023789.3A CN102609506B (zh) | 2012-02-03 | 2012-02-03 | 一种通过映射生成hl7消息的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210023789.3A CN102609506B (zh) | 2012-02-03 | 2012-02-03 | 一种通过映射生成hl7消息的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102609506A true CN102609506A (zh) | 2012-07-25 |
CN102609506B CN102609506B (zh) | 2014-01-08 |
Family
ID=46526878
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210023789.3A Active CN102609506B (zh) | 2012-02-03 | 2012-02-03 | 一种通过映射生成hl7消息的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102609506B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105791373A (zh) * | 2014-12-26 | 2016-07-20 | 北大医疗信息技术有限公司 | 医疗系统数据共享方法和医疗系统数据共享系统 |
CN106991015A (zh) * | 2017-03-17 | 2017-07-28 | 浙江大学 | 一种基于消息语义标注的医疗信息系统集成监控方法 |
CN107015949A (zh) * | 2016-12-31 | 2017-08-04 | 苏州市环亚数据技术有限公司 | 医疗数据标准转换方法 |
CN109582391A (zh) * | 2018-12-04 | 2019-04-05 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于xml的设备树配置方法 |
CN109670152A (zh) * | 2018-12-17 | 2019-04-23 | 武汉烽火信息集成技术有限公司 | 一种hl7v3解析方法、存储介质、电子设备及系统 |
CN112699131A (zh) * | 2021-01-18 | 2021-04-23 | 中国电子系统技术有限公司 | 一种映射连接的交互方法以及装置 |
CN115935946A (zh) * | 2022-12-05 | 2023-04-07 | 成都延华西部健康医疗信息产业研究院有限公司 | Hl7v3标准/fhir标准的解析映射处理方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1717674A (zh) * | 2001-12-12 | 2006-01-04 | 索尼电子有限公司 | 对多媒体数据进行转换以将其传送到多个异种设备 |
CN101073076A (zh) * | 2004-08-02 | 2007-11-14 | 佳思腾软件公司 | 在标记语言环境中利用新片段和新方案来创建新文档的文档处理和管理方法 |
CN101339587A (zh) * | 2008-08-11 | 2009-01-07 | 中国网络通信集团公司 | 双向转诊方法及系统 |
CN101452503A (zh) * | 2008-11-28 | 2009-06-10 | 上海生物信息技术研究中心 | 一种异构临床医疗信息共享系统和方法 |
-
2012
- 2012-02-03 CN CN201210023789.3A patent/CN102609506B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1717674A (zh) * | 2001-12-12 | 2006-01-04 | 索尼电子有限公司 | 对多媒体数据进行转换以将其传送到多个异种设备 |
CN101073076A (zh) * | 2004-08-02 | 2007-11-14 | 佳思腾软件公司 | 在标记语言环境中利用新片段和新方案来创建新文档的文档处理和管理方法 |
CN101339587A (zh) * | 2008-08-11 | 2009-01-07 | 中国网络通信集团公司 | 双向转诊方法及系统 |
CN101452503A (zh) * | 2008-11-28 | 2009-06-10 | 上海生物信息技术研究中心 | 一种异构临床医疗信息共享系统和方法 |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105791373A (zh) * | 2014-12-26 | 2016-07-20 | 北大医疗信息技术有限公司 | 医疗系统数据共享方法和医疗系统数据共享系统 |
CN107015949A (zh) * | 2016-12-31 | 2017-08-04 | 苏州市环亚数据技术有限公司 | 医疗数据标准转换方法 |
CN107015949B (zh) * | 2016-12-31 | 2020-11-06 | 苏州市环亚数据技术有限公司 | 医疗数据标准转换方法 |
CN106991015A (zh) * | 2017-03-17 | 2017-07-28 | 浙江大学 | 一种基于消息语义标注的医疗信息系统集成监控方法 |
CN106991015B (zh) * | 2017-03-17 | 2020-05-19 | 浙江大学 | 一种基于消息语义标注的医疗信息系统集成监控方法 |
CN109582391A (zh) * | 2018-12-04 | 2019-04-05 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于xml的设备树配置方法 |
CN109582391B (zh) * | 2018-12-04 | 2022-05-24 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于xml的设备树配置方法 |
CN109670152A (zh) * | 2018-12-17 | 2019-04-23 | 武汉烽火信息集成技术有限公司 | 一种hl7v3解析方法、存储介质、电子设备及系统 |
CN112699131A (zh) * | 2021-01-18 | 2021-04-23 | 中国电子系统技术有限公司 | 一种映射连接的交互方法以及装置 |
CN112699131B (zh) * | 2021-01-18 | 2021-11-30 | 中国电子系统技术有限公司 | 一种映射连接的交互方法以及装置 |
CN115935946A (zh) * | 2022-12-05 | 2023-04-07 | 成都延华西部健康医疗信息产业研究院有限公司 | Hl7v3标准/fhir标准的解析映射处理方法及装置 |
CN115935946B (zh) * | 2022-12-05 | 2023-08-15 | 成都延华西部健康医疗信息产业研究院有限公司 | Hl7v3标准/fhir标准的解析映射处理方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN102609506B (zh) | 2014-01-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102609506B (zh) | 一种通过映射生成hl7消息的方法 | |
CN106528129B (zh) | 一种Web应用界面生成系统及方法 | |
US9690779B2 (en) | Quasi natural language man-machine conversation device base on semantic logic | |
JP4070643B2 (ja) | 表示用データ生成装置、表示用データ生成システム、データ管理装置、表示用データ生成方法、プログラム及び記録媒体 | |
CN103631597B (zh) | 基于xml的web表单引擎装置及方法 | |
CN101751382B (zh) | 一种基于标签的数据采集方法与系统 | |
US9122664B2 (en) | Method for automatically creating transforms | |
CN103620586B (zh) | 将源代码链接到运行元素 | |
US8171451B2 (en) | Providing reports as web services | |
JP2007536640A (ja) | プロセス制御データを修正する方法および装置 | |
JPWO2006085455A1 (ja) | 文書処理装置および文書処理方法 | |
CN103970820B (zh) | Web多媒体资源开放标注数据的可视化方法及装置 | |
JP2008234370A (ja) | 文書処理装置及び文書処理方法 | |
CN103295176A (zh) | 一种电子病历编辑方法及系统 | |
CN112182236A (zh) | 一种知识图谱的构建方法、系统及电子设备 | |
Jiang et al. | Towards reengineering web sites to web-services providers | |
CN103064661A (zh) | 计算机监控组态画面xml描述系统及方法 | |
CN114338855A (zh) | 一种实现hl7、fhir标准、自定义xml消息的解析生成方法 | |
JPWO2007081017A1 (ja) | 文書処理装置 | |
JPWO2006051869A1 (ja) | 文書処理装置及び文書処理方法 | |
JPWO2005098662A1 (ja) | 文書処理装置及び文書処理方法 | |
JPWO2006051974A1 (ja) | 文書処理装置および文書処理方法 | |
JPWO2007052680A1 (ja) | 文書処理装置及び文書処理方法 | |
JPWO2007105364A1 (ja) | 文書処理装置及び文書処理方法 | |
CN101788977A (zh) | 一种医学检查报告编辑修改实现方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20160512 Address after: Hangzhou City, Zhejiang province 310012 Xihu District Huaxing Road No. 96 building 3 room 401-402 Patentee after: Hangzhou Ming Tang Mdt InfoTech Ltd Address before: Hangzhou City, Zhejiang province 310012 Xihu District science and Technology Building No. 90 Wensanlu Road East Software Park A1212 Patentee before: Hangzhou Jtang Information Technology Co., Ltd. |