HL7协议

news2024/11/22 15:40:59

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 1.介绍
  • 2.传输协议规范
    • 2.1. MLLP
      • 2.1.1. 数据头定义
      • 2.1.2. 转义字符集
    • 2.2. 规范说明
    • 2.3. 消息格式说明
  • 3.HL7结构介绍
    • 3.1. 患者建档(ADT^A28)
      • 3.1.1. 患者建档(ADT^A28)消息规范
      • 3.1.2. 患者建档(ADT^A28)消息示例
  • 4.通用段消息值域说明
    • 4.1. 消息头(MSH)
    • 4.2. 消息确认(MSA)
    • 4.3. 患者基本信息信息PID
  • 5.HL7 消息结构
  • 6.HL7数据类型
  • 7.HL7 message type消息类型


1.介绍

HL7 缩写于Health Level Seven,是创建于1987年,用来发展独立卫生保健行业的电子交换交换标准,经过多年的发展,HL7已经有多个版本。
简单的理解其实就像XML,JSON格式一样,HL7也是一种数据格式,可以理解为一个包含很多行字符串的消息体,这一整个就是一个HL7消息内容。
HL7官网 http://www.hl7.org/,可下载对应版本文档
Hapi官网 https://hapifhir.github.io/hapi-hl7v2/

2.传输协议规范

2.1. MLLP

MLLP是目前HL7标准采用的标准接入规范,其他还有Netty等技术手段。其定义主要包括如下几个方面:

传输协议

MLLP协议采用标准的TCP协议进行消息发送和接收。接入时请参考相关的TCP/IP 技术文档。

2.1.1. 数据头定义

在这里插入图片描述

2.1.2. 转义字符集

在通过MLLP接口传输HL7消息时,下列字符集需进行转义:
在这里插入图片描述

2.2. 规范说明

通用段消息中常见的段进行统一说明
对于域(Field)红色字体表示该域是必填的,整行绿色字体表示该域扩展用法,非HL7标准含义。

2.3. 消息格式说明

大括号“{}”表示该部分可以重复

中括号“[]”表示该部分可选

²黄色背景标示的是该文档中主要用到的段(Segment)

3.HL7结构介绍

例如:下面就是一个ADT^A28类型下的A28的消息:

3.1. 患者建档(ADT^A28)

说明:A28是用于患者基本信息建档,区别于门诊挂号、住院入院等就诊活动消息。

3.1.1. 患者建档(ADT^A28)消息规范

在这里插入图片描述
在这里插入图片描述

回复(ACK):

说明: ADT^A28根据医院业务,若接收方为EMPI系统(主索引系统),则建档时会返回主索引ID,否则不返回主索引。
在这里插入图片描述

3.1.2. 患者建档(ADT^A28)消息示例

在这里插入图片描述

4.通用段消息值域说明

4.1. 消息头(MSH)

在这里插入图片描述
在这里插入图片描述

4.2. 消息确认(MSA)

在这里插入图片描述
在这里插入图片描述
以上错误代码不能覆盖的其他内部错误

4.3. 患者基本信息信息PID

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

5.HL7 消息结构

HL7 标准包含256个事件、116个消息类型、139个段、55种数据类型、408个数据字典,涉及79种编码系统。
在 HL7 中,有四个最基本的术语概念:

触发事件(trigger events):当现实世界中发生的事件产生了系统间数据流动的需求,则称其为触发事件。也可以理解为一个数据请求
消息(message):它是系统间传输数据的最小单位,由一组有规定次序的段组成。每个消息都是用一个消息类型来表示其用途。
段(segment):它是数据字段的一个逻辑组合。每个段都用一个唯一的三字符代码所标志,这个代码称作段标志。
字段(field):它是一个字符串,是段的最小组成单位。
在 HL7 中,消息(Message)是数据在系统之间交换的基本单元,每条消息都有各自的消息类型,消息类型用于定义消息目的,包含了触发事件。一个消息由多个段(Segment)组成,每一个段都有相应的名称,用于界定其内容或者功能。
一个段又由多个字段(Field)组成。一个消息中的第一个段总是消息头段(Message head segment),它指明了发送和接收的程序名、消息类型、以及一个唯 一的消息ID号码等,接下去段的构成由消息的类型决定。
一个字段又有可能由多个组件(Component)组成。有些消息可进一步由事件码(event code)细分。

每个消息会包含多个段,如上述代码,表示一个消息,每个段之间通过分割回车
每个段又会包含多个字段,消息头段定义了段的类型,比如 MSH 表示这个段是消息头,段中又会包含多个字段
每个字段使用 | 分隔,如果对应的字段没有数据也不能省略 | ,这是因为每个字段在段中都有一个序号(SEQ),每个段有多少个字段、各个字段的序号和含义等都是在 HL7 协议中规定好的!
每个字段会包含多个组件,字段中不同的组件使用 ^ 分隔,比如 2302^BloodType
每个组件又可以包含多个子组件,子组件之间用 & 分隔,比如 ICU&Bed5&3232241659&0&0 (包含5个子组件)

6.HL7数据类型

在这里插入图片描述

7.HL7 message type消息类型

  1. ADT admit disCharge transfer 入院、出院、转院
  2. ACK acknowledgement message 应答消息
  3. BAR biling account record 账单账户记录
  4. DFT detailed financial transactions 详细的金融交易
  5. MDM Medical document management 医疗文件管理
  6. ORM order entry 订单录入
  7. ORU Observation result (unsolicited) 观察结果 非请求观察
  8. RDS pharmacy/treatment dispense 药房/治疗 配药
  9. RDE pharmacy/treatment encoded order 药房/治疗 编码顺序
  10. SIU schedlued information unsolicited 调度信息 非请求观察

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1680567.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

AI应用之智能体介绍

AI应用之智能体介绍 一、LLM介绍二、智能客服应用1,阿里智能能话机器人2,华为对话机器人3,公司基于讯飞知识库和讯飞大模型的智能客服 三、大模型应用平台介绍1,fastgpt2,毕昇3, 字节海外版(科学…

学习Nginx(二):版本介绍和安装

版本 Nginx官方定义了Mainline、Stable、Legacy三种版本。 1. Mainline version(主线版本) 该版本包含最新的功能和bug修复,被视为开发版,即正在活跃开发中的版本。其版本号通常为单数,例如1.25.5。这个版本的更新较快…

Nvidia Jetson编译安装Opencv With CUDA,完善GSTREAMER功能

简介 Nvidia Jetson 官方刷机流程结束以后,虽然安装了opencv,但是此版本是CPU版本,并且不包含Cpp版本。如果想要完整的OpenCV支持,需要从源码编译。本文介绍如何下载编译,并安装OPENCV库,并获得完整的CUDA…

必应bing广告开户费用介绍,必应搜索广告推广开户服务!

微软必应Bing搜索引擎广告成为了企业提升品牌知名度与市场份额的有效途径之一,作为全球第二大搜索引擎,在中国市场正逐步展现出其独特的广告价值与潜力。对于希望拓展在线市场的中国企业而言,通过云衔科技开启必应Bing国内广告推广之旅&#…

谷歌外贸seo优化怎么做?

一般有两种选择,在大型电商平台开展业务,如亚马逊,阿里巴巴等平台,也可以选择搭建自己的独立站 选择在大型电商平台可以方便迅速建立起自己的商铺,不需要考虑太多交易,支付,物流等方面的问题&am…

2024.05.14 Diffusion 代码学习笔记

配环境 我个人用的是Geowizard的环境:https://github.com/fuxiao0719/GeoWizard。 出于方便考虑,用的pytorch官方的docker容器,因此python版本(3.10)和原作者(3.9)不同,其余都是一…

Java小游戏之汤姆猫

背景: 博主写过羊了个羊小游戏,客户觉得羊了个羊同学写过了,想换一个,于是笔者想到了汤姆猫。就是那个以前在苹果手机上的猫。 过程: 初始会有一个猫的图片展示,然后你点击按钮,猫会有不同动作…

力扣刷题 day2

快乐数 202. 快乐数 - 力扣(LeetCode)   图: java // 快乐数 --> 19 > 1^2 9 ^2 82 > 82 > 8 ^ 2 2 ^ 2 ......public boolean isHappy(int n) {// 使用快慢指针int slow n, fast getSum(n);while (slow ! fast) {slow getSum(slo…

【Day3:JAVA运算符、方法的介绍】

目录 1、运算符1.1 赋值运算符1.2 比较运算符1.3 逻辑运算符1.3.1 逻辑运算符概述1.3.2 逻辑运算符分类1.3.3 短路的逻辑运算符 1.4 三元运算符1.5 运算符优先级 2、方法2.1 方法介绍2.2 方法的定义和调用格式2.2.1 方法的调用2.2.2 带参数方法的调用2.2.3 带返回值方法的调用2…

Zookeeper and RPC dubbo

javaguide zookeeper面试题 Zookeeper 啥是Zookeeper干啥的 ZooKeeper 可以被用作注册中心、分布式锁; ZooKeeper 是 Hadoop 生态系统的一员; 构建 ZooKeeper 集群的时候,使用的服务器最好是奇数台。 启动ZK 下载安装解压 不过多赘述 我的…

正点原子[第二期]Linux之ARM(MX6U)裸机篇学习笔记-15.7讲 GPIO中断实验-编写按键中断驱动

前言: 本文是根据哔哩哔哩网站上“正点原子[第二期]Linux之ARM(MX6U)裸机篇”视频的学习笔记,在这里会记录下正点原子 I.MX6ULL 开发板的配套视频教程所作的实验和学习笔记内容。本文大量引用了正点原子教学视频和链接中的内容。…

luceda ipkiss教程 66:金属线的钝角转弯

案例分享:金属线的135度转弯: 所有代码如下: from si_fab import all as pdk import ipkiss3.all as i3 from ipkiss.geometry.shape_modifier import __ShapeModifierAutoOpenClosed__ from numpy import sqrtclass ShapeManhattanStub(__…

使用Rufus制作Ubuntu启动盘(windows同理)

问题 想要做系统,首先需要做启动盘,使用Rufus做启动盘操作简单。 解决 1.下载Rufus 这个软件免费的一搜便是,这里下载:Rufus - 轻松创建 USB 启动盘。下载完成后即点即用1无需安装。 打开 2.下载Ubuntu镜像 下载地址&#xff…

Flowable配置多数据源以及指定schema

异常反馈 如有问题可通过微信公众号“假装正经的程序员”反馈 为什么要多源 在项目的实际开发过程中通常会有两种常见的使用Flowable的方式,一种是以独立的服务提供工作流的能力,另一种是以Jar包的形式进行内部集成。 这两种方式各有利弊,…

暴力数据结构之二叉树(堆的相关知识)

1. 堆的基本了解 堆(heap)是计算机科学中一种特殊的数据结构,通常被视为一个完全二叉树,并且可以用数组来存储。堆的主要应用是在一组变化频繁(增删查改的频率较高)的数据集中查找最值。堆分为大根堆和小根…

购买商用ssl证书并在windows服务器IIS上配置https域名(案例为阿里云)

阿里云、华为云等各路云都有ssl证书购买,价格相差不大,操作也都差不多,请自行选择。 本文以阿里云操作为案例。 购买SSL证书 点击购买 付款买入 注意,如果自己搞起来有问题,阿里购买的时候建议选择申请协助服务。购买…

抖店商品详情API接口(店铺|标题|主图|价格|SKU属性等)

抖店商品详情API接口(店铺|标题|主图|价格|SKU属性等) 抖店商品详情API接口是指通过调用抖音开放平台提供的接口,获取抖店上商品的详细信息的方法。 抖店开放平台提供了一系列的接口,可以用于获取商品的基本信息、价格、库存、销量、评价等各种信息。以…

Python 全栈体系【四阶】(四十四)

第五章 深度学习 九、图像分割 3. 常用模型 3.4 DeepLab 系列 3.4.3 DeepLab v3(2017) 在DeepLab v3中,主要进行了以下改进: 使用更深的网络结构,以及串联不同膨胀率的空洞卷积,来获取更多的上下文信…

利用管道通信(pipe)测量进程间的上下文切换(context switch)开销

利用管道通信(pipe)测量进程间的上下文切换(context switch)开销 《https://pages.cs.wisc.edu/~remzi/OSTEP/cpu-mechanisms.pdf》 Measuring the cost of a context switch is a little trickier. The lmbench benchmark does so by running two processes on a single CPU…

【LabVIEW FPGA入门】NI 环境安装教程

注意:安装软件之前关闭杀毒软件,避免安装时损坏,安装完成在使用杀毒软件。 步骤1:判断自己是否需要LabVIEW 编程。 下面这几种情况可以调过安装LabVIEW: 不需要LabVIEW或其他语言编程,直接在MAX或仪器软面板…