SEMI E128 XML 消息结构规范概述
引言
SEMI E128 是一项关于 XML 消息结构 的规范,旨在为半导体设备通信中的消息传递定义统一的消息头(即“信封”)结构,确保消息在传输过程中具备可追溯性、可关联性与可管理性。该标准基于 W3C SOAP 协议扩展,支持同步与异步消息交互,适用于设备与制造执行系统(MES)、设备数据采集(EDA Client)等之间的可靠通信。
主要内容:
SEMI E128 规范了以SOAP 协议作为消息基础,所有消息基于 SOAP 1.2 构建。为支持同步/异步通信,定义了必要的头部与体元素。定义了点到点消息结构,异步回调消息结构以及广播事件消息结构:支持向多个订阅者发布事件的消息头格式。
消息头结构详解
E128 规范中定义的所有XML项目都属于保留的SEMI命名空间“urn: SEMI -org:xsd.E128.V0706.xms”
- 异步消息头(AsyncHeader)

(图片来源:SEMI E128)
异步消息用于独立传输,不依赖顺序执行。其 MessageHeader 包含以下关键元素:
- From:标识消息发送方。
- To:标识消息接收方。
- MessageType:标识消息角色,可选 RequestMessage、ReplyMessage、CallbackMessage。
- RequestId:请求消息的唯一标识。
- CorrelationId:在回复或回调消息中用于关联原始请求。
- Action:标识请求调用的功能单元。
- ReplyExpected(可选):标识是否期待回复。
- MessageId(可选):全局唯一消息标识。
- EventIndex(可选):用于回调消息,标识事件序号。
2. 同步消息头(SyncHeader)

(图片来源:SEMI E128)
同步消息要求前一消息处理完毕后才发送下一消息。其头部仅包含三个元素:
- From
- To
- SessionId:会话标识,由服务端生成并保持一致性。
3. 同步哈希消息头(SyncHashHeader)

(图片来源:SEMI E128)
用于同步通信中的通知消息,结构类似 SyncHeader,但使用 SessionIdHashed 替代 SessionId。
消息体与异常处理
消息体遵循 SOAP Body 结构,承载实际业务数据。异常通过 Fault 元素在 SOAP Body 中传递。 Fault元素借用了SOAP Fault的结构。 不要将这种用法与真正的SOAP错误混淆。
典型消息交互模式
E128 支持多种消息交换模式以适应不同业务场景,主要包括:
- 同步请求/回复
- 异步请求/回复
- 交错请求/回复
- 带尾随回调的请求/回复
- 带先导回调请求/回复
- 带超时的请求/回复
总结
SEMI E128 为半导体制造环境中的系统间通信提供了一套结构化、可扩展、标准化的 XML 消息框架。通过明确的头部设计与丰富的交互模式支持,提升设备与系统间通信的可靠性与可维护性,支持同步与异步混合通信模式,具备良好的异常处理与消息追溯能力,适用于从简单指令到复杂事件推送的多种场景,是构建高效、稳定通信体系的重要基础。
如需了解SEMI E128解决方案,请联系support@kxware.com。
如需获取SEMI 标准文档, 请访问SEMI网站获取:https://www.semi.org/en/products-services/download-standards 。
