第二部分:通用资格服务实现

第四章:通用资格服务介绍

第五章:查询发送者通道

第六章: HL7v2 to HL7v2 转换器通道

第七章:数据记录器通道

第八章:HL7v3 校验通道

第九章:应答发送者通道

第十章:HL7v3 to HL7v2 转换器通道

第四章:通用资格服务介绍

这部分完全是假想的资格服务实现。这么做的原因是替代了业务或临床需求,比如病人管理ADT,医嘱信息ORM(通用订单信息),检验报告ORU(主动观察消息),上面这些你可能已经知道了,而他们全部集成在Mirth Connect 功能上。

注意:我们开始前,我要强调在这里显示的交互和消息并不代表真实的实现,不应该直接使用。

. 资格服务介绍

资格服务由医疗健康部门使用,查询病人是否在有效期内有支付的资格。一个可以期待的答复是,根据病人是否有保险资格给出答案:是或否。这个答复也可能是个特定的代码和提供澄清病人状态的附加信息。

给你提供一个真实场景怎样工作的范例,我会引用来自HL7v3 Normative Edition 2014的一个故事。你也能通过HL7v3 Standard>Universal>Eligibility Topics>Storyboards找到原著。

当一个病人造访验光师时,确定这个病人是否享受眼镜片福利。验光师会询问病人是否有眼镜使用的扩展福利计划。病人往往确定不了,但是他们认为通过保险公司有某种扩展资格。病人查看钱包,事实上,就是一张扩展福利资格卡,卡上含有计划ID,团体保险号,被保险人身份正号,姓名和捐助及到期日。

验光师询问病人是否愿意让秘书确认是否享受保险公司提供购买眼镜片的扩展福利资格。病人明确表示可以,因为他们想知道购买眼镜片是否在这个计划下,如果不在,那么,病人这次就不能购买眼镜片。

秘书通过病人特定识别码,姓名,DOB查询扩展福利计划,即通过病人的福利资格卡查询计划细节,帮病人询问眼镜片是否在这个计划下。答复指明,一个每2年最高限额$300.00的眼镜片购买资格福利告诉了病人。病人立马意识到可以买副眼镜了。然而,保险公司的费用承诺并不是购买眼镜支付费用的承诺(向保险公司提出申请购买眼镜的费用,实际上是保险索赔)。这一点,像我国医院的报销制度,居民拿一部分,国家拿一部分,但你得有资格享受国家的这项政策,比如:你不缴纳社保,估计是没有退休金的。

. 场景概述

故事中秘书的行为就是使用发送者应用提交查询到保险公司端的服务应用,并接收保险公司的信息答复。这个场景,更加切合的描述为交互模型,例如接下来的创建、提交、处理资格查询的处理过程。

. 交互模型

下面,我们使用序列图,描述两个应用之间资格服务的交互模型:

为了增加交互模型的复杂度,临时添加了把进来的HL7v2查询消息转换为HL7v3查询消息步骤,以及相反的步骤。

. 应用角色

本章应用角色并不是HL7标准应用角色的定义。因此,需要一个这样的应用,使用HL7v3请求消息校验病人是否有保险资格或在HL7v3项目中有特定的名字FICR_AR021001UV01。然而,下面的应用角色会影响我们以后实现的通道名字。

* Sender: 创建HL7v2查询消息发送者启动的一个请求。消息被发送到HL7转换器处理。发送者也接收和处理响应消息。

* HL7 Transformer:HL7转换器接收发送者的查询,校验查询并把它转化成HL7v3查询消息格式。新的构造消息发送给服务。HL7转换器也接收来自服务的响应。HL7转换器也记录HL7v2消息结构校验失败的信息。

* Service:服务接收查询消息,分析和处理消息,查询数据库,形成响应消息,发送给HL7转换器。跟HL7转换器一样,服务也记录HL7v3消息架构校验失败的信息。

尽可能的尝试给定场景范围内更多的功能,资格查询交互模型的实际实现可能超出这三个应用角色(就是通道)。

. 消息和交互概述

HL7v2标准把消息定义为两个系统间数据交互模型的必要部分。每个消息由消息类型和触发器事件(就是特定识别消息的函数)来确认。消息体是由预定义顺序的一组片段组成。

类似的,HL7v3标准把交互定义为:特定消息类型(信息传递)、启动或触发转换的特定触发器事件,与交互凭据关联的接受者职责之间的一个特定关联。简单点儿,就是触发器事件与接受者之间的关联互动。

由于两种标准的不同,所以HL7v2是通过消息类型和触发事件来展现,而HL7v3通过交互名称来展现。

场景实现使用的消息:

* QBP^E22——HL7v2查询授权请求状态——提供者使用资格查询请求消息查询授权请求或在授权请求里特定产品/服务行项的支付者。

* RSP^E22——HL7v2授权请求状态查询应答——支付者使用资格查询应答消息把响应提交给提供者(就是提交QBP^E22消息的提供者)。

* QUCR_IN200101UV01 ——HL7v3资格查询请求通用——这个消息请求病人服务资格的状态。

* QUCR_IN210101UV01 ——HL7v3资格查询应答通用——这个消息被当做一个提供关于病人资格服务的应答。

即使消息对的目的是相似的,也不意味着它们的内容有很好的相似度。有些字段在另一个消息对里没有关联,在消息对键传递信息也可能产生数据丢失。

. 这个查询通道概述在Mirth Connect里有许多方法完成同样的任务。下图演示了本书这部分的游戏计划(见图4-1)。主要的思想不是实现一个正确的服务,但是尽可能多的曝露Mirth Connect 的选项。

模拟向服务发送资格查询请求,并接收返回来的应答:

* Query Sender——担当处理和把原始的QBP^E22消息送入管道,该管道使用MLLP(类似于Socket协议层通讯)消息传输协议。

* v2-v3 Transformer 该通道是转换器的角色,接收HL7v2请求消息,校验它,创建HL7v3消息,并把数据从HL7v2映射成HL7v3消息。如果接收到验证失败的消息,由数据记录器执行记录此错误。

* v3 校验——这个通道接收HL7v3请求消息,校验它,分解它,并把数据存进数据库。如果接收到校验失败的消息,由数据记录器执行记录此错误。

* Response Sender——扮演服务的角色。周期性的查询数据库,根据从数据库拿到的数据,创建HL7v3响应消息,并通过Web Service,发送消息给查询发送者。

* v3-v2 Transformer——这个通道扮演转换器的角色,处理HL7v3应答消息,创建HL7v2消息,把数据从HL7v3映射成HL7v2消息,并把RSP^E22消息结果存成文件。

* Data Logger——接收产生校验错误的消息,并错误细节存于日志文件里或数据库里。

图4-1 资格查询服务通道架构

整个实现过程里,我们会看到各种连接器:Channel Reader, TCP/IP Listener 和Sender ,Database Writer, Reader, Web Service Listener 和 Sender, File Writer。

我们会用到本书先前学到的所有技术,包括但不限于过滤器、转换器、代码模板、全局和通道脚本。

在这一点上,假设你已经非常熟悉Mirth Connect Administrator了。

. 推荐的工具和包

为使开发比较容易,不乏味,这里有工具和包的推荐列表。他们当中的一些,在先前特定通道实现上已经被安装了,例如PostgreSQL。

§ HL7v2 视图器,比如:由Inner Harbour Software出品的HL7Spy

§ HL7v3 视图器比如:由Altova GmbH 出品的Altova XMLSpy

§ MS Access 和MS Access ODBC 驱动器或者类似的数据库(包含驱动)

§ PostgreSQL 或Mirth Connect 支持的数据库

§ JDBC Level 4 driver for PostgreSQL 或已选数据库驱动

§ 由Philip Helger 提供的 phLOC Schematron  java库。

Mirth Connect 互联互通 第四章 通用资格服务实现相关推荐

  1. 互联互通、电子病历、智慧服务、智慧管理、公立医院绩效考核的5项测评

    互联互通.电子病历.智慧服务.智慧管理.公立医院绩效考核的5项测评 简要说明 互联互通测评 智慧服务和智慧管理 公立医院绩效考核 电子病历评级 简要说明   互联互通.电子病历.智慧服务.智慧管理.公 ...

  2. 四章——Nginx网站服务(应用——linux防护与群集)

    三期总目录链接 目录 一.Nginx服务 1.安装及运行控制 2.配置文件nginx.conf 2.1全局配置   解释: 2.2  I/O事件配置   解释: 2.3 HTTP配置    解释: 3 ...

  3. [计网:原理与实践] 第四章:网络互联(课后习题整理)

    第四章 网络互联 4-1 什么是异构网络?异构网络互联有哪些不同的方法?因特网采用了怎样的中继系统方式?   网络发展初期,许多计算机公式分别推出了具有专门规范的计算机网络.这些计算机网络在体系结构和 ...

  4. 信息安全工程师学习笔记《第四章》

    第四章 网络安全体系与网络安全模型 本章内容主要包括: 第一,讲述了网络安全体系的基本概念以及相关安全模型,主要包括机密性模型.完整性模型.信息流模型.信息保障模型.能力成熟度模型.纵深防御模型.分层 ...

  5. 《商用密码应用与安全性评估》第四章 密码应用安全性评估实施要点-小结

    密码应用安全性评估包括:信息系统规划阶段对密码应用方案的评审/评估.建设完成后对信息系统开展的实际测评. 总体要求.物理和环境安全.网络与通信安全.设备与计算安全.应用与数据安全.密钥管理.安全管理 ...

  6. python全栈开发中级班全程笔记(第二模块、第四章)(常用模块导入)

    python全栈开发笔记第二模块 第四章 :常用模块(第二部分)     一.os 模块的 详解 1.os.getcwd()    :得到当前工作目录,即当前python解释器所在目录路径 impor ...

  7. 自顶向下 计算机网络知识,计算机网络(自顶向下)第七版考试复习要点(第四章)...

    第四章 网络层概述 转发和路由选择:数据平面和控制平面 传统的控制方法和SDN的控制方法 路由器的工作原理及数据转发原则 网络层作用 路径选择,选择数据报经过的路由器 网络层的路由器中进行存储.交换. ...

  8. 第四章web服务器之httpd

    文章目录 第四章 web服务器 1.1 www简介 1.1.1 网址及HTTP简介 1.1.2 HTTP协议请求的工作流程 1.2 www服务器的类型 1.2.1 仅提供用户浏览的单向静态网页 1.2 ...

  9. 电子签章,一章通用还有多远?

    电子印章作为法定实物印章在数字世界的延伸,二者具有同等的法律效力.根据<公安部印章管理办法>,企事业单位只能申请刻制一枚实物公章.但在数字世界,却面临着不同电子印章产品互认互签难.一章通用 ...

  10. Java基础学习——第十四章 网络编程

    Java基础学习--第十四章 网络编程 一.网络编程概述 计算机网络: 把分布在不同地理区域的计算机与专门的外部设备用通信线路互连成一个规模大.功能强的网络系统,从而使众多的计算机可以方便地互相传递信 ...

最新文章

  1. javascript worker 多线程 简单示例
  2. mysql 存储过程 格式化_转 mysql 存储过程初探
  3. 胡渊鸣的「太极图形」又融了5000万美元,下一步:3D内容创作平台
  4. BZOJ1858 [Scoi2010]序列操作 线段树
  5. 用 Ubuntu 重置 Windows 密码
  6. iOS 时间戳的转换
  7. WinForm下DataGridView导出Excel的实现
  8. 鸿蒙系统 oppo,OPPO公关抵制鸿蒙系统,结果被骂到辞职了,千亿营销确定了?
  9. 基于DotNet构件技术的企业级敏捷软件开发平台 - AgileEAS.NET - 权限管理
  10. 网管人员必备的常用命
  11. 苹果恢复出厂设置报4013错误问题
  12. dae怎么用草图大师打开,教你su模型导入lumion的方法
  13. excel取消隐藏_这个毁人无数的Excel黑洞,却成就一批最牛X的高手
  14. Bada IDE编译
  15. 同属开源Linux 移动市场MeeGo独到之秘
  16. 拼多多开店怎么做推广?四川万顿思
  17. mybatis mapperLocations配置失效
  18. 自动驾驶3D目标检测研究综述
  19. html视频怎么改大小,视频画面尺寸重置-视频画面大小调整的方法哪个好,视频尺寸怎么修改...
  20. 合并后的58赶集为何驶入新的赛道?

热门文章

  1. 怎么给php加音乐,给网站加上背景音乐的方法
  2. ubuntu实用工具
  3. matlab 傅里叶变换代码,傅里叶变换的原理及matlab实现.doc
  4. 数字电路与逻辑设计——组合逻辑篇
  5. 用JAVA写一个小游戏程序难不难?具体步骤怎么操作?
  6. win7计算机管理快捷键,win7系统快捷键有哪些|win7常用的15个快捷键
  7. 《中国电子报》访极通研发总监梁绍博
  8. Aurora AD308e 一体机驱动
  9. 天猫魔盘显示无法连接到服务器,天猫魔盘无法上网 天猫魔盘不能上网怎么办...
  10. ectouch注册去邮箱的修改方法