HL7消息结构
HL7消息用于在不同的医疗保健系统之间传输电子数据,每个消息发送相关特定事件(例如患者入院)的信息。HL7消息采用人类可读格式,本节介绍HL7消息的内容以及HL7消息的组织方式。
HL7消息由一个或多个段(segment)组成。每个段显示在不同的文本行上。回车符(\ r,十六进制为0D)将一个段与另一个段分隔。
每个段由一个或多个域(fields)组成。竖线(|)字符用于将一个域与另一个域分开。如果某个域包含多个元素(Component),则这些元素通常以脱字符(^)字符分隔。


以下各节将进一步详细介绍HL7消息的复杂性以及如何阅读该标准。有关不同的HL7消息类型及其用途的更多信息,请参见我们的HL7消息类型页面。
HL7 段 (Segments)
在HL7消息中,消息的每个部分都包含一类特定的信息,例如患者信息或患者就诊数据。
消息中每个段的名称由该段的第一个域(fields)指定,该域始终为三个字符。HL7消息中可使用超过120个不同的HL7段,此示例消息包含四个HL7段:MSH,PID,NK1和PV1。不同类型的HL7消息包含不同的HL7段。
MSH|^~\&|EPIC|EPICADT|SMS|SMSADT|199912271408|CHARRIS|ADT^A04|1817457|D|2.5|PID||0493575^^^2^ID 1|454721||DOE^JOHN^^^^|DOE^JOHN^^^^|19480203|M||B|254 MYSTREET AVE^^MYTOWN^OH^44123^USA||(216)123-4567|||M|NON|400003403~1129086|NK1||ROE^MARIE^^^^|SPO||(216)123-4567||EC|||||||||||||||||||||||||||PV1||O|168 ~219~C~PMA^^^^^^^^^||||277^ALLEN MYLASTNAME^BONNIE^^^^|||||||||| ||2688684|||||||||||||||||||||||||199912271408||||||002376853
本示例中的HL7段包含以下信息:
- MSH(消息头)段包含有关消息本身的信息。该信息包括消息的发送者和接收者、消息的类型以及发送的日期和时间。每个HL7消息都将MSH指定为其第一段。
- PID(患者信息)段包含有关患者的人口统计信息,例如姓名、患者ID和地址。
- NK1(近亲)细分包含患者近亲的联系信息。
- PV1(患者就诊)部分包含有关患者住院时的信息,例如分配的位置和推荐医生。
由于HL7消息用于将各种与医疗保健相关的信息传递到各种不同的系统,因此有时HL7消息需要包含自定义数据。为了适应这种情况,HL7标准使系统供应商可以创建带有自定义字段的Z段,以传输此数据。
按照惯例,所有自定义段都以字母Z开头。例如,可以创建ZPD段以包含自定义的患者人口统计信息。Z段可以放置在HL7消息中的任何位置,但是通常位于消息中的最后一段。
通常,处理HL7消息的应用程序配置为忽略不知道将如何处理的HL7 Z段。
HL7 域 (fields)
HL7消息的每个段都包含一个或多个域(也称为fields)。默认情况下,竖线(|)字符用于将一个域与另一个域分开。
域可以是原始数据类型(例如字符串或数字),也可以包含多个元素(Component)。如果某个域(fields)包含多个元素,则这些元素(Component)通常以^字符分隔。如果元素还包含子元素(Subcomponent),则这些子元素通常以&字符分隔,子元素(Subcomponent)必须是原始数据类型(例如字符串或数字)。
对于典型组的示例,请考虑上一节中看到的示例消息的PID段:
PID || 0493575 ^^^ 2 ^ ID 1 | 454721 || DOE ^ JOHN ^^^^ | DOE ^ JOHN ^^^^ | 19480203 | M || B | 254 MYSTREET AVE ^^ MYTOWN ^ OH ^ 44123 ^ USA ||(216)123-4567 ||| M | NON | 400003403〜1129086 |
在此段中,第五个域是患者姓名,即DOE ^ JOHN ^^^^。(此域结尾处的四个^^^^字符表示它总共有六个元素,并且只定义了前两个元素)在此组合中,DOE代表患者的名,而JOHN是患者的姓。
为了尽可能灵活并达成共识,HL7委员会被迫将许多细分段定义为可选段,该决定的不利之处是您不能确定特定的信息会出现在给定的消息中,这也是同一消息可能因供应商而异的原因之一。
分隔符
在HL7消息中,某些特殊字符将一个段中的一个域与另一个域分开,或将一个元素与另一个分开。这些特殊字符称为定界符。
下表列出了HL7中使用的默认定界符:
| 字符 | 目的 |
| 0x0D | 标记每个段的结尾。 |
| | | 域(Fields)定界符。 |
| ^ | 元素(Component)定界符。 |
| & | 子元素(Subcomponent)定界符。 |
| 〜 | 分隔重复组。 |
| \ |
转义符。 |

参考资料:
HL7消息结构的更多相关文章
- ZeroMQ接口函数之 :zmq_msg_init - 初始化一个空的ZMQ消息结构
ZeroMQ 官方地址 :http://api.zeromq.org/4-1:zmq_msg_init zmq_msg_init(3) ØMQ Manual - ØMQ/3.2.5 Name zmq_ ...
- HTTP消息结构
HTTP 消息结构 HTTP是基于客户端/服务端(C/S)的架构模型,通过一个可靠的链接来交换信息,是一个无状态的请求/响应协议. 一个HTTP"客户端"是一个应用程序(Web浏览 ...
- 终于懂了:Delphi重定义消息结构随心所欲,只需要前4个字节是消息编号就行了(有了这个,就有了主动)
Delphi重定义消息结构随心所欲,只需要前4个字节是消息编号就行了,跟Windows消息虽然尽量保持一致,但其实相互没有特别大的关系.有了这个,就有了主动,带不带句柄完全看需要. 比如这个结构就带句 ...
- HTTP 消息结构
HTTP 消息结构 HTTP是基于客户端/服务端(C/S)的架构模型,通过一个可靠的链接来交换信息,是一个无状态的请求/响应协议. 一个HTTP"客户端"是一个应用程序(Web浏览 ...
- ActiveMQ安装与入门程序 & JMS的消息结构
1.Activemq安装 直接到官网下载:记住apache的官网是域名反过来,比如我们找activemq就是activemq.apache.org. 最新版本要求最低的JDK是8,所以最好在电脑装多个 ...
- hl7消息中和时间有关的字段的格式
hl7消息中有许多segment(段)包含时间类型的Field.常用的MSH, EVN, PID中的时间字段及其格式为: 1. MSH-7, Date/time Of Message为yyyyMMdd ...
- HTTP-Runoob:HTPP消息结构
ylbtech-HTTP-Runoob:HTPP消息结构 1.返回顶部 1. HTTP 消息结构 HTTP是基于客户端/服务端(C/S)的架构模型,通过一个可靠的链接来交换信息,是一个无状态的请求/响 ...
- 004.JMS消息结构
JMS的消息结构类似于HTTP请求的结构分为三部分: 消息头 消息属性 消息体 下面分别说明三部分的内容标准. 1. 消息头 消息头包含消息的识别信息和路由信息,其标准属性如下: 下面介绍的参数都可以 ...
- SOAP消息结构
邵盛松 2012-5-22 一 SOAP消息结构 SOAP消息包括以下元素 必需的 Envelope 元素,可把此 XML 文档标识为一条 SOAP 消息,XML文件的顶层元素,代表该文件为SOAP消 ...
- JMS 重点是JMS消息结构讲解
这部分之前认识的不是很清楚,转载记录下,转载自:https://www.cnblogs.com/Zender/p/9098410.html 阅读目录 一,消息服务 二,JMS 回到目录 小时(1000 ...
随机推荐
- 修改 markdown 二级标题的编号 - 自动编号 autoNumber.js nodejs
需求 我在写 https://www.vuejsdev.com/01FE/must-know-knowledge.html 这个页面的时候, 二级页面 标题前面有编号,但是有时候我会把顺序换下,每次手 ...
- Apollo3 Blue SoC 和 Apollo3 Blue Plus SoC的区别
一 芯片简介 1.简介 Apollo3 Blue系列SoC解决方案代表了超低功耗设计的巨大飞跃,其运行模式和睡眠模式下的功耗数值均十分出色,并且具有高性能的处理引擎. Apollo3Blue器件提供了 ...
- SpringBoot 支付宝付款接口类、支付异步回调函数模板
1.付款接口类 1.1.引入Maven依赖 <dependency> <groupId>com.alipay.sdk</groupId> <artifactI ...
- github 镜像地址
亲测可用的 github 镜像地址: https://hub.nuaa.cf , https://hub.fgit.cf
- | [0/8] Installing jquery@3.x[npminstall:get] retry GET https://registry.npm.taobao.org/jwebdriver after 100ms, retry left 4, error: Error: certificate has expired ClientRequest.<anonymous>
昨天用开源项目UIRecorder初始化时报错,查看日志发现是淘宝的源证书过期,如下: PS E:\20231213\uirecorder\uirecorder_test> PS E:\2023 ...
- HDU 2045:不容易系列之(3)—— LELE的RPG难题(动态规划)
一.原题链接 Problem - 2045 (hdu.edu.cn) 二.题面 人称"AC女之杀手"的超级偶像LELE最近忽然玩起了深沉,这可急坏了众多"Cole&quo ...
- 记录--H5页面对接微信支付踩坑杂记
这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 背景 应用背景:vite搭建的vue3项目 需求背景:功能都涉及了支付业务,故需要和外部支付系统对接 外部支付系统:聚合支付.微信小程序支 ...
- Clang Preprocessor 类的创建
参考: Create a working compiler with the LLVM framework, Part 2 How to parse C programs with Clang: A ...
- es搜索优化
1.V1版本:仅做了分词的查询,使用ik分词器ik_max_word POST /t_sku/_search { "size": 10, "query": { ...
- Linux编写Shell脚本获取指定目录下所有文件并处理
Linux编写Shell脚本获取指定目录下所有文件进行处理并保存到新目录 #!/bin/bash app_name="shell" path="/dir" #原 ...