1、 ICS 35.240.99 L 76 备案号:20380-2007 北京市地方标准 DB DB11/T 449.22007 法人基础信息数据交换规范 第2 部分:交换协议 Data exchange specification of juridical person fundamental information Part 2: Exchange protocols2007-03-06 发布 2007-06-01实施 北京市质量技术监督局发布DB11/T 449.22007 I 目 次 前言 1 1 范围 2 2 规范性引用文件 2 3 术语、定义、符号和缩略语 2 4 命名规则 2 5 业
2、务交换模型 2 6 数据交换接口规范 4 7 安全规范 16 8 业务交换规范 21 9 使用约定 40 附录 A(规范性附录)jpiXML的 Schema 42 附录 B(资料性附录)查询法人基础信息报文示例 57 附录 C(资料性附录)在 SOAP中使用 jpiXML 60 附录 D(资料性附录)层次结构图中所用的图符说明 61 DB11/T 449.22007 1 前 言 DB11/T 449法人基础信息数据交换规范包括以下两个部分: 第 1 部分:信息结构; 第 2 部分:交换协议。 本部分的附录A为规范性附录、附录B、附录C、附录D为资料性附录。 本部分由北京市信息化工作办公室提出和
3、归口。 本部分起草单位:北京市信息资源管理中心、中国航天系统工程公司、易达讯网络科技(北京)有 限公司。 本部分主要起草人:彭凯、单武、黄晓斌、王玉芬、林绍福、张军、王华飞、王进孝、朱蓉华、方 志江、王小明、郭智勇、张彦祥。 DB11/T 449.22007 2 法人基础信息数据交换规范 第2 部分:交换协议 1 范围 本部分规定了法人基础信息的数据交换接口规范、安全规范以及业务交换规范。 本部分适用于政府部门间法人基础信息共享与交换的信息化工作领域。 2 规范性引用文件 下列文件中的条款通过本部分的引用而成为本部分的条款。凡是注日期的引用文件,其随后所有的 修改单(不包括勘误的内容)或修订版
4、均不适用于本部分,然而,鼓励根据本部分达成协议的各方研究 是否可使用这些文件的最新版本。凡是不注日期的引用文件,其最新版本适用于本部分。 IETF RFC2045 Multipurpose Internet Mail Extensions(MIME) Part One: Format of Internet Message Bodies 多用途互联网邮件扩充(MIME)第1部分:互联网消息主体格式 IETF RFC2046 Multipurpose Internet Mail Extensions(MIME) Part Two: Media Types多用途 互联网邮件扩充(MIME)第2部分
5、:媒体类型 3 术语、定义、符号和缩略语 3.1 术语和定义 下列术语和定义适用于本部分。 3.1.1 中心 center 法人基础信息目录(数据)存储以及数据交换的管理与维护中心。 3.1.2 节点 node 与中心进行法人基础信息数据交换的信息系统。 3.1.3 数据包 data package 完整的jpiXML数据段。 3.2 符号和缩略语 下列符号和缩略语适用于本部分。 XML 可扩展置标语言。 Schema 模式。 jpiXML 法人基础信息可扩展置标语言。 4 命名规则 元素和属性的命名一般采用规范性汉字,由1至15个汉字组成,不包括任何标点符号。 5 业务交换模型 DB11/T
6、 449.22007 3 业务交换模型(见图 1)描述了法人基础信息共享与交换的机制与流程。 图1 业务交换模型图 其流程为: DB11/T 449.22007 4 a) 节点首先在中心进行注册,取得节点标识。节点与中心进行数据交换时,中心通过节点标识信 息确认消息的来源方(即发送方)和目的地(即接收方); b) 中心负责维护法人基础信息元素目录,同时,中心管理节点上传的法人基础信息数据; c) 节点负责维护业务上归属本节点的法人基础信息数据,同时,根据实际业务工作需要,采取定 时或实时方式向中心上传变更(包括新增、修改)法人基础信息数据; d) 节点在中心订阅法人基础信息数据。当订阅数据发生
7、更改后,或者中心将向订阅节点发送数据 更新通知,由订阅节点向数据变更节点请求数据;或者中心将向订阅节点发送更新数据; e) 节点可以直接查询中心法人基础信息数据;也可以直接或通过中心转发查询其他节点的法人基 础信息数据; f) 数据比对与数据查询处理方式相同。 6 数据交换接口规范 以下图例中所用图符说明参见附录D。 6.1 命名空间 本部分不指定法人基础信息数据交换XML描述使用的命名空间,以下采用 “法人基础信息命名空间 示例/jpiEXCHG”表述的命名空间应由实际应用替换。 6.2 数据交换报文结构 jpiXML报文是法人基础信息交换中基本数据交换单元。jpiXML报文结构见表1。 表
8、1 jpiXML 报文结构 diagram namespace 法人基础信息命名空间示例/jpiEXCHG children 报文头 报文体 source jpiXML根元素 jpiXML 报文包括报文头和报文体两部分。jpiXML 为根元素,其 XML Schema 源代码见附录 A.1。 报文示例参见附录 B。 6.3 报文头 报文头的作用是在中心与各节点之间进行数据交换时,将数据包正确地传送到目的地址。它支持异 步方式、会话方式通信。报文头结构见表2。 DB11/T 449.22007 5 表2 报文头结构 diagram namespace 法人基础信息命名空间示例/jpiEXCHG
9、children 认证信息 版本号 信息类型 发送方 接收方 消息序号 服务时间 服务时限 服务类型 服务优先级 回执要 求 source DB11/T 449.22007 6 6.3.1 认证信息 发送方身份确认信息。关于身份认证的内容见7.1。认证信息结构见表3。 表3 认证信息结构 diagram namespace 法人基础信息命名空间示例/jpiEXCHG children 签名算法信息 签名值 source 身份认证信息 0:RSA; 1:DSS; 2:ECC DB11/T 449.22007 7 发送方的公钥证书 6.3.2 版本号 表示协议的版本号,本协议版本号为 1.0。 6
10、.3.3 信息类型 数据包的来源性质,如“管理信息”和“业务信息”等。管理类信息主要包括系统管理信息、系统 错误和系统回执等。业务类信息是指业务请求服务信息,内容见6.3.9。 6.3.4 发送方 发送数据包的节点或中心。 6.3.5 接收方 接收数据包的节点或中心。 6.3.6 消息序号 同一业务中业务发起方与业务响应方之间数据交换时数据包的匹配序号。 消息序号由该业务发起方 产生,业务响应方在消息序号的基础上加1,其采用24个字节长的可见字符串,构成方式为: 年+月+日+时+分+秒+毫秒+随机数+累加数 YYYYMMDDHHMMSSmmmRRRRnnn 其中随机数为十进制表示的小于9999
11、的随机产生数字,累加数起始为001。 若一个业务发起时间为2003年12月26日09点38分20秒103毫秒、随机数为1234、累加数为001,产生 的消息序号为:200312260938201031234001;则相应响应方产生的消息序号为 200312260938201031234002。 6.3.7 服务时间 服务请求产生时的时间。 6.3.8 服务时限 规定接收方对数据包内容定义的业务操作的应答时间, 单位为秒。 服务时限的开始时间为服务时间。 若取值为0,则表示没有时间限制。 6.3.9 服务类型 表示此数据包承载业务信息的类型,取值分别为:“上传数据”、“更新通知”、“查询请求”、
12、 “查询响应”、“订阅请求”、“订阅响应”、“订阅发布”、“比对请求”、“比对响应”、“注册DB11/T 449.22007 8 请求”、“注册响应”等。若以后需要扩充服务类型,则应对标准进行版本升级。信息类型为管理类信 息时,服务类型的值为空。 6.3.10 服务优先级 表示数据包在网络传输交换以及系统处理时的优先级。一般分为10级,级数越高,优先级越高,缺 省为5级。通常由承载的业务决定服务优先级,若请求数据包规定服务优先级为8级,则响应数据包的服 务优先级也应为8级。 6.3.11 回执要求 定义是否需要接收方给出回执表示对方已经收到数据包。0表示不需要回执,1表示需要回执,缺省 值为0
13、。当数据包信息类型为管理类信息时,不需要回执。 6.4 报文体 6.4.1 报文体结构 发送方需要接收方处理的数据内容,包括数据包所承载的业务信息或系统产生的错误信息,对于其 中有安全性要求的数据信息应使用安全数据进行封装。同样,可以根据业务需要扩展支持其它服务。报 文体结构见表4。 表4 报文体结构 diagram namespace 法人基础信息命名空间示例/jpiEXCHG children 系统错误 系统回执 source 示例 : DB11/T 449.22007 9 6.4.2 系统错误 在交换过程中发生的错误。如接收方接收到一个格式不正确的数据包,则需要向发送方返回系统错 误。系
14、统错误结构见表5。 表5 系统错误结构 diagram namespace 法人基础信息命名空间示例/jpiEXCHG children 系统错误编码 系统错误描述 source “系统错误编码”的编码规则见表 6。 表6 “系统错误编码”的编码规则 编码 描述 001 数据格式错误 002 数据包版本号不正确 003 不支持的服务优先级 004 不支持的服务类型 005 不支持的信息类型 006 交换格式错误 007 数据包不能通过Schema验证 008 数据包签名验证有误 009 指定接收方不存在 010 数据包解密错误 011 地址不匹配,即数据包的接收方与该数据包中“接收方”定义的
15、节点标识不相同 999 其它系统错误 “系统错误描述”填写错误的详细描述。 6.4.3 系统回执 DB11/T 449.22007 10 接收方正确收到业务信息类型数据包时,发送给发送方正确接收的确认数据包。 6.5 安全数据 用于实现数据安全性的数据类型。通过把经加密和签名后的数据及相关信息封装到安全数据类型 中,可以实现数据保密性、完整性和源鉴别。有关加密和签名的内容见第7章“安全规范”。安全数据 结构见表7。 表7 安全数据结构 diagram namespace 法人基础信息命名空间示例/jpiEXCHG children 类型 正规化算法 编码方式 加密信息 数据 签名信息 sour
16、ce 类型元素是指数据项内容的数据类型,取值为0,1,2。0表示加密且签名的数据,1表示加密但不 签名的数据,2表示不加密但签名的数据。 编码方式用于将数据加密或签名产生的二进制随机串进行编码,默认值为base64,但也可以根据实 际需要进行扩充。 正规化算法元素是在做摘要和校验摘要值之前进行的正规化操作的算法。 它的作用是把数据表示标 准化,去掉一些不影响含义的字符如空格、TAB格、换行等,以实现平台兼容性。正规化算法可以自定 义。 数据元素表示存储的XML业务数据,为anyType类型,可以是明文或者密文,依据数据项的类型来确 定。 加密信息元素说明加密数据使用的算法和密钥。 签名信息元素
17、表示对数据元素内容的摘要进行的签名。 6.5.1 加密信息 加密信息类型描述了加密数据使用的密钥、算法。算法通常使用对称加密算法,发送方和接收方共 享一个密钥。除此之外,为了保证密钥的安全传送,还要使用接收方的公钥来对加密密钥进行加密。加 密信息类型包括加密密钥信息和加密算法信息两个元素。加密信息结构见表8。 DB11/T 449.22007 11 表8 加密信息结构 diagram namespace 法人基础信息命名空间示例/jpiEXCHG children 加密密钥信息 加密算法信息 source 接收方公钥加密后的密钥值 0:RSA; 1:ECC; 2:ElGamal 0:DES-C
18、BC; 1:AES; 2:RC2; 3:RC4 DB11/T 449.22007 12 加密密钥信息元素使用匿名类型定义,包括密钥值和公钥算法名两个元素。密钥值为使用接收方公 钥加密钥的加密密钥值。公钥算法名取值为:0,1,2。0表示RSA,1表示ECC,2表示ElGamal(可以根 据实际需要进行扩充)。加密密钥信息结构见表9。 表9 加密密钥信息结构 diagram namespace 法人基础信息命名空间示例/jpiEXCHG children 密钥值 公钥算法名 source 接收方公钥加密后的密钥值 0:RSA; 1:ECC; 2:ElGamal DB11/T 449.22007 1
19、3 加密算法信息元素使用匿名类型定义,包括加密算法名和初始化参数两个元素。加密算法名取值为 从0开始的阿拉伯数字,如0表示DES-CBC。数据加密算法的定义参照国家相关规定执行。初始化参数是 一个可选的元素。加密算法信息结构见表10。 表10 加密算法信息结构 diagram namespace 法人基础信息命名空间示例/jpiEXCHG children 加密算法名 初始化参数 source 0:DES-CBC; 1:AES; 2:RC2; 3:RC4 6.5.2 签名信息 DB11/T 449.22007 14 签名信息类型包括三个元素:摘要算法、签名算法信息和签名值。摘要算法取值为:0,
20、1,2。0 表示SHA-1算法,1表示MD5,2表示MD2,可以根据实际需要进行扩充。接收方通过计算摘要确定所接收的 数据在传输过程中没有被修改。签名信息结构见表11。 表11 签名信息结构 diagram namespace 法人基础信息命名空间示例/jpiEXCHG children 摘要算法 签名算法信息 签名值 source 0:SHA-1; 1:MD5; 2:MD2 0:RSA; 1:DSS; 2:ECC DB11/T 449.22007 15 发送方的公钥证书 签名算法信息包括签名算法名和公钥证书两个元素。签名算法名取值为:0,1,2。0表示RSA算法, 1表示DSS算法,2表示E
21、CC算法(可以根据实际需要进行扩充)。公钥证书为签名者所持的公钥证书,可 以是X.509格式或其它格式。签名算法信息结构见表12。 表12 签名算法信息结构 diagram namespace 法人基础信息命名空间示例/jpiEXCHG children 签名算法名 公钥证书 source 0:RSA; 1:DSS; 2:ECC DB11/T 449.22007 16 发送方的公钥证书 6.5.3 安全数据举例 示例: 0 0 JJJJDFDASFDASLDFASLFIDSAFDASFAS EFFFASDLFASSDAFDASFDASFDASFDASFADSFASDFDAS 0 0 EFAFD
22、ASFDASFSAFDAS 0 DSFAFDASFASFASFASFASFAFSAFSAFASFDSAXCZHGDGJKHGJHFJDFGSDAFDAS FADSFDASL6FDAS0FD0AS-F-ADS84342 7 安全规范 本部分定义的安全机制都是在网络体系结构中的应用层实现。 本部分可对传输的报文数据按字段实现选择性的安全性功能。对于可选的安全性功能,规范中明确 地注明为“可选”。考虑到应用环境的复杂性以及不确定性,本部分未对数据项的多级安全属性及安全 性功能要求作出硬性规定,应根据实际应用环境决定具体实现方案。本部分中的所有加密、签名、摘要 算法作为参考,在实际应用中应参照国家有关
23、规定执行。 7.1 身份认证 身份认证是通过附在报文头的认证信息实现的。 7.1.1 节点标识的生成 DB11/T 449.22007 17 节点标识必须是通用唯一标识符(UUID),它在时间和空间上都是唯一的。节点向中心提出注册申 请,中心在审核通过后,返回一个UUID。产生UUID的算法使用128位长的OSF/DCE 1.1 RFC UUID的算法。 128位UUID,包括80位的时间和时钟序列, 48位IEEE 802地址。 如果是单机且只有一块网卡执行注册, 那么IEEE 802地址可以省略,如果多台机器同时可以执行注册任务,那么要保留IEEE 802地址字段。 7.1.2 认证信息的
24、生成 发送方在发送每个报文时,都必须采用公开密钥算法,用自己的私钥对报文头的消息序号字段进行 签名,生成由签名值和签名算法信息(包括签名使用的公钥证书)构成的认证信息。 认证信息的生成过程如下: a) 得到报文的消息序号(即为 SNs) ; b) 选择用于签名的公钥算法,生成签名算法信息(包括发送方公钥证书) ; c) 使用自己的私钥(KRs)对 SNs 进行签名并编码,生成签名值; d) 把由签名算法信息以及签名值构成的认证信息封装到报文头中。 7.1.3 认证信息的检验 接收方收到报文后在作进一步处理前,必须先检验报文头的认证信息。只有通过检验的报文才是合 法的;否则,报文非法,将被抛弃。
25、认证信息检验流程见图2。 认证信息的检验过程如下: a) 获取报文头的消息序号(记为 SNr) ,判断 SNr 是否为合法的序号。若合法则作下一步检查, 否则报文身份认证失败; b) 从认证信息的签名信息获取发送方公钥证书,并检验公钥证书的合法性; c) 从认证信息的签名信息获取签名采用的公钥算法; d) 使用发送方公钥(Kus)对签名信息中的签名值进行解密得到签名内容(记为 SNs) ; e) 比较 SNr 和 SNs,若两者相同,身份认证通过;否则报文非法,身份认证失败。 节点 ciX ML 数据包 消息序号(SNr ) 验证SNr合法性 验证身份信息得到SNs 比较SNr 和SNs 两者
26、相等,检验通过 SNr非法,检验失败 不相等,检验失败 SNr合法图2 认证信息检验流程图 7.2 授权 DB11/T 449.22007 18 经过身份认证的报文, 需要进一步检查发送方具有的权限。 为此, 接收方要在本地维持一份权限表, 其中记录节点标识和权限的对应关系。对通过身份认证的报文,使用报文头的发送方节点标识来查询权 限表,得到发送方具有的权限。仅当报文请求的服务与发送方具有的权限符合时,请求才是合法的;否 则接收方将拒绝提供服务。 7.3 数据保密性 数据保密性是可选的安全性功能。对有保密需求的数据,应使用对称密钥算法进行加密。在这种情 况下,传送的数据是经过加密的密文,接收方
27、必须先进行解密才能获取数据内容。 7.3.1 数据加密 选择用于数据加密的对称密钥算法,生成加密算法信息。数据加密流程见图3。数据加密的过程如 下: a) 生成数据加密密钥(DEK) ; b) 用 DEK 对数据进行加密并编码,产生密文; c) 选择加密 DEK 的公钥算法,并使用接收方公钥(KUr)对 DEK进行加密并编码,生成加密密 钥信息; d) 把加密后的数据、以及由加密密钥信息和加密算法信息构成的加密信息封装到安全数据类型 中。 图3 数据加密流程图 7.3.2 数据解密 数据解密流程见图4。接收方解密数据的过程如下: a) 从安全数据的加密密钥信息获取加密 DEK 的公钥算法; b
28、) 用自己的私钥(KRr)对 DEK 解密; c) 从安全数据的加密算法信息获取加密数据的算法和算法初始化参数 (仅部分算法使用初始化参DB11/T 449.22007 19 数) ; d) 用 DEK 把加密的数据解密得到数据明文。 图4 数据解密流程图 7.4 数据完整性和源鉴别 数据完整性和源鉴别是可选的安全性功能。对需要保证完整性和进行源鉴别的数据,发送方应进行 数据摘要,并使用公钥算法对摘要签名;接收方收到报文后,在对数据内容进行处理前要先验证签名, 进行数据完整性和源鉴别的检验,只有通过检验的数据项才是合法的,否则将被抛弃。 7.4.1 数据签名 数据签名流程见图5。发送方进行数据
29、签名的过程如下: a) 选择数据摘要算法; b) 使用摘要算法对数据进行摘要(对不加密但是签名的数据项,进行摘要的内容是明文;对加密 且签名的数据,进行摘要的内容是密文) ; c) 选择用于签名的公钥算法,生成签名算法信息(包括发送方公钥证书) ; d) 使用自己的私钥(KRs)对数据摘要值进行签名并编码,生成签名值; e) 把由摘要算法信息、签名算法信息、以及签名值构成的签名信息封装到安全数据类型中。 DB11/T 449.22007 20 图5 数据签名流程图 7.4.2 签名验证 签名验证流程见图6。接收方验证签名,检验数据完整性和数据起源的过程如下: 注: 对于加密且签名的数据项,签名
30、验证应先于数据解密。 a) 从安全数据的签名信息获取发送方公钥证书,并检验公钥证书的合法性; b) 从安全数据的签名信息获取数据摘要算法; c) 使用摘要算法对数据进行摘要,得到摘要值(记为:Hr) ; d) 从安全数据的签名信息获取签名采用的公钥算法; e) 使用发送方公钥(Kus)对安全数据签名信息中的签名值进行解密得到签名内容(记为 Hs) ; f) 比较 Hr 和 Hs, 若两者相同则数据项通过完整性检验和数据源鉴别; 否则数据非法, 将被抛弃。 DB11/T 449.22007 21 图6 签名验证流程图 8 业务交换规范 业务交换的XML Schema源代码见附录A.2。 8.1
31、命名空间 本部分不指定法人基础信息业务交换XML描述使用的命名空间,以下采用 “法人基础信息命名空间 示例/jpiEXCHG/transaction”表述的命名空间应在实际应用中替换。 以下定义命名空间前缀:jpiEXCHG=“法人基础信息命名空间示例/jpiEXCHG”,jpiDATA=“法人基 础信息命名空间示例/jpiDATA”。 8.2 组成要素 DB11/T 449.22007 22 8.2.1 数据对象 可标识的法人基础信息数据元集合。数据对象由关键字和可选的数据项组成。数据对象内容可封装 为安全数据。数据对象结构见表13。 表13 数据对象结构 diagram children
32、关键字 数据项 jpiEXCHG:安全数据 source 可标识的法人基础信息 若数据对象不包含数据项,则该数据对象表示关键字所对应的法人基础信息数据;若数据对象包含 数据项,则该数据对象表示关键字所对应的法人基础信息指定的数据项内容。 8.2.2 关键字 法人基础信息的唯一标识。本部分规定“组织机构代码”或者“注册或登记号”为关键字缺省值, 也可根据应用需要定义其它法人基础信息数据元作为关键字。关键字结构见表14。 表14 关键字结构 diagram namespace 法人基础信息命名空间示例/jpiEXCHG/transaction children jpiData:组织机构代码 jpi
33、Data:注册或登记号 source DB11/T 449.22007 23 数据对象的唯一标识 8.2.3 数据项 法人基础信息数据元集合。数据项内容可封装为安全数据。数据项结构见表15。 表15 数据项结构 diagram children jpiEXCHG:安全数据 source 法人基础信息数据内容 8.2.4 数据状态 数据项的更新状态,包括新增和修改两种数据更新状态。 8.2.5 节点标识 节点的全局唯一标识。 8.2.6 操作条件 数据操作条件。操作条件由元操作条件、逻辑运算和括号组成。括号与逻辑运算表达式中()同义。 操作条件结构见表16。 表16 操作条件结构 DB11/T
34、449.22007 24 diagram namespace 法人基础信息命名空间示例/jpiEXCHG/transaction children 元操作条件 逻辑运算 括号 source 数据操作条件 表达式( ) DB11/T 449.22007 25 8.2.6.1 元操作条件 关系表达式。元操作条件包括数据项元素和一个关系运算元素。元操作条件结构见表17。 表17 元操作条件结构 diagram namespace 法人基础信息命名空间示例/jpiEXCHG/transaction children 关系运算 source 数据操作的元条件,表示数据项与数据值之间的关系运算 该数据项内
35、容引用数据标准 关系运算是指数据项操作条件,取值为“大于”、“小于”、“大于等于”、“小于等于”、“等 于”和“不等于”等。 8.2.6.2 逻辑运算 元操作条件之间的逻辑关系。取值为“与”、“或”。 8.2.7 比对结果 数据项比对结果。它表示关键字对应的数据项内容的比对结果。数据编码表示数据项比对结果的数 据结构,1:表示结果相同,0:表示结果不相同。编码顺序与比对请求的数据项顺序相同。比对结果结 构见表18。 DB11/T 449.22007 26 表18 比对结果结构 diagram namespace 法人基础信息命名空间示例/jpiEXCHG/transaction childre
36、n 关键字 数据编码 source 数据项比对结果 对应数据项比对结果1:成功 0:失败 8.3 交换方式 8.3.1 注册请求 节点向中心注册节点信息。注册时节点向中心发送关键字及机构名称信息。注册请求结构见表19。 表19 注册请求结构 diagram DB11/T 449.22007 27 namespace 法人基础信息命名空间示例/jpiEXCHG/transaction children 关键字 jpiData:机构名称 source 节点向中心注册节点信息 8.3.2 注册响应 注册请求的应答。注册响应包含节点标识。注册响应结构见表20。 表20 注册响应结构 diagram n
37、amespace 法人基础信息命名空间示例/jpiEXCHG/transaction children 节点标识 source 注册请求的应答 8.3.3 订阅请求 节点向中心订阅数据。节点向中心发送请求订阅的数据项。订阅请求结构见表 21。 DB11/T 449.22007 28 表21 订阅请求结构 diagram namespace 法人基础信息命名空间示例/jpiEXCHG/transaction children 数据项 source 节点向中心订阅数据内容 8.3.4 订阅响应 订阅请求的应答。订阅响应包含订阅的数据项。订阅响应结构见表22。 表22 订阅响应结构 diagram
38、namespace 法人基础信息命名空间示例/jpiEXCHG/transaction children 数据项 source 订阅请求的应答 8.3.5 订阅发布 中心向订阅节点发送其订阅的数据。该数据对象包括关键字及其对应订阅数据项内容。订阅发布结 构见表23。 DB11/T 449.22007 29 表23 订阅发布结构 diagram children 数据对象 source 中心向指定节点发送订阅数据 8.3.6 更新通知 发送数据项更新消息。数据项更新是指数据对象或数据项内容发生改变,数据状态为数据项更新类 型。更新通知结构见表24。 表24 更新通知结构 diagram chil
39、dren 数据对象 数据项 数据状态 source 发送数据项更新消息 DB11/T 449.22007 30 数据对象的更新若指定关键字而未指定数据项,则表示该关键字对应的法人基础信息数据发生改 变;若指定关键字和数据项,则表示该关键字对应的法人基础信息指定的数据项内容发生改变。 数据项的更新表示指定的数据项内容发生改变。 8.3.7 查询请求 发送数据查询请求。查询请求应包含两部分内容,即操作条件以及查询的数据项。查询请求结构见 表25。 表25 查询请求结构 diagram children 操作条件 数据项 source 发送数据查询请求 8.3.8 查询响应 查询请求的应答。查询响应
40、包含一个或多个数据对象。查询响应结构见表26。 表26 查询响应结构 diagram children 数据对象 source 查询请求的应答 DB11/T 449.22007 31 8.3.9 比对请求 中心向节点请求数据比对。中心指定比对的一个或多个数据对象。比对请求结构见表27。 表27 比对请求结构 diagram children 数据对象 source 批量数据比对 8.3.10 比对响应 比对请求的响应。比对响应包含一个或多个比对结果。比对响应结构见表28。 表28 比对响应结构 diagram children 比对结果 source 比对请求的应答 数据项比对结果 DB11/
41、T 449.22007 32 对应数据项比对结果1:成功 0:失败 8.3.11 上传数据 节点向中心发送更新数据。发送数据可以是一个或多个更新的数据对象。上传数据结构见表29。 表29 上传数据结构 diagram children 数据状态 数据对象 source 节点向中心发送数据 DB11/T 449.22007 33 8.4 业务流程 8.4.1 注册 节点向中心请求注册,若注册成功,中心向节点返回注册响应;否则,返回业务错误。注册流程见 图7。 节点 中心 注册成功 注册失败 注册请求 注册处理 注册响应 业务错误图7 注册流程图 8.4.2 数据订阅和数据发布 节点向中心订阅数据
42、,若订阅成功,中心向节点返回订阅响应;否则,返回业务错误, 中心数据订 阅流程见图8。当订阅数据更改后,或者中心向订阅节点发布订阅数据,中心数据发布流程见图9;或者 中心向订阅节点发布更新通知,订阅节点收到更新通知后,向中心查询更新数据,中心变更通知发布流 程见图10;或者中心转发其他节点的更新通知,订阅节点收到更新通知后,向其他节点查询更新数据, 节点数据发布流程见图11。 DB11/T 449.22007 34 节点 中心 订阅请求 订阅处理 订阅响应 业务错误 订阅成功 订阅失败图8 数据订阅流程图 节点 中心 数据变更检测 发送订阅数据图9 中心数据发布流程图 DB11/T 449.2
43、2007 35 节点 中心 数据变更检测 发送数据变更通知 变更数据查询 查询处理 查询响应 业务错误 查询成功 查询失败图10 中心变更通知发布流程程图 DB11/T 449.22007 36 节点 中心 节点 查询成功 查询失败 转发数据变更通知 数据变更通知 变更数据查询 查询处理 查询响应 业务错误图11 节点数据发布流程图 8.4.3 数据查询 节点向中心发出数据查询请求,若查询成功,中心向节点返回查询响应;若查询失败,则返回业务 错误。中心数据查询流程见图12。 节点之间数据查询可以通过中心转发,也可以直接点对点访问。若节点1采取通过中心转发方式查 询节点2数据,首先,节点1向中心
44、提交查询节点2数据的请求,中心向节点2转发该请求;节点2进行查 询处理后,向中心返回查询结果,中心向节点1转发该查询结果。节点间数据查询流程见图13。若节点1 采取直接点对点方式查询节点2数据,查询流程参见节点向中心查询数据流程。 DB11/T 449.22007 37 节点 中心 查询成功 查询失败 查询请求 查询处理 查询响应 业务错误图12 中心数据查询流程图 节点1 中心 节点2 查询请求 转发请求 查询处理 查询响应 业务错误 查询成功 查询失败 转发结果图13 节点间数据查询流程图 8.4.4 数据比对 节点向中心请求数据比对,中心以比对请求中关键字做为基准,将比对请求中数据项内容
45、与节点对 应的数据项值进行比较,判断数值是否相同。若比对成功,中心向节点发送比对响应;若比对失败,则 返回业务错误。数据比对流程见图14。 节点之间数据比对可以通过中心转发,也可以直接点对点访问。若节点1采取通过中心转发方式与 节点2比对数据,首先,节点1向中心提交与节点2比对数据的请求,中心向节点2转发该请求;节点2进DB11/T 449.22007 38 行数比对后,向中心返回数据比对结果,中心向节点1转发该比对结果。数据比对流程见图15。若节点1 采取直接点对点方式查询节点2数据,查询流程参见节点向中心请求数据比对流程。 中心 节点 比对请求 比对处理 比对响应 业务错误 比对成功 比对
46、失败图14 中心数据比对流程图 节点2 节点1 中心 比对成功 比对失败 比对处理 比对请求 转发请求 比对响应 业务错误 转发比对结果图15 节点间数据比对流程图 8.4.5 数据上传 节点向中心上传节点数据。节点上传数据流程见图16。 DB11/T 449.22007 39 节点 中心 上传数据图16 数据上传流程图 8.5 业务错误 8.5.1 模型 业务操作的错误信息。业务错误结构见表28。 表30 业务错误结构 diagram children 错误编码 错误描述 source 业务操作的业务错误 8.5.2 组成元素 8.5.2.1 错误描述 业务错误的详细描述。 8.5.2.2
47、错误编码 业务错误的编码。 8.5.3 编码规则 DB11/T 449.22007 40 操作类别 错误原因 操作类别的编码见表29,错误原因的编码见表30。 表31 操作类别的编码 编码 名称 描述 01 注册错误 与注册操作有关的错误 02 订阅错误 与订阅操作有关的错误 03 更新错误 与数据更新操作有关的错误 04 查询错误 与查询操作有关的错误 05 上报错误 与数据上报操作有关的错误 06 比对错误 与数据比对操作有关的错误 07 发布错误 与数据发布操作有关的错误 99 其它错误 表32 错误原因的编码 编码 名称 描述 001 节点认证无效 该接入节点的认证信息无效 002 节
48、点不存在 节点信息未注册 003 数据不存在 操作数据不存在 004 数据已存在 操作数据已经存在 005 权限超限 超出赋予的操作权限范围 006 数据库错误 数据库系统错误 999 其它原因 9 使用约定 9.1 错误消息的服务优先级 系统错误的服务优先级缺省为 8 级,业务错误的服务优先级缺省为 7级。 9.2 标识符定义 各节点的标识符由节点在中心注册时,由中心返回的全局唯一标识符定义,并以证书形式发放。中 心的标识符由中心定义。 9.3 附件的处理约定 实际交换中,消息可能包含附件类型的数据。对附件的处理可以参考IETF RFC2045和IETF RFC2046 相关规定。附件Sch
49、ema定义见表31。 表33 附件Schema定义 attributes Name Type Use Default Fixed Annotation 文件名 xs:string required 编码方式 xs:string optional base64 数据类型 xs:string required DB11/T 449.22007 41 source 其中编码方式按照IETF RFC2045规定的BASE64编码方式编码。 数据类型按照IETF RFC2046规定执行。 示例: aG93I44hjyqaG5g3= 9.4 在 SOAP 中使用 jpiEXCHG 在SOAP中使用jpiEXCHG参见附录C。 DB11/T 449.22007 42 附 录 A (规范性附录) jpiXML的Schema A.1 jpiXML.xsd jpiXML根元素 表示协议的版本号 DB11/T 449.22007 43 表示数据包的来源性质。 记录数据包将要传递的节点或 中心 记录将要发送数据包的节点或 中心 采用全局唯一标识符定义身份 表示同一业务中业务发起方与 业务响应方之间数据交换时数据包的匹配序号表示服务请求产生的时间 记录
copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1