[发明专利]一种基于XML的数据交换方法和系统在审

专利信息
申请号: 201711034221.0 申请日: 2017-10-30
公开(公告)号: CN107894973A 公开(公告)日: 2018-04-10
发明(设计)人: 周忠华;申堃;李伟;杨肖;唐寅 申请(专利权)人: 武汉华工赛百数据系统有限公司
主分类号: G06F17/22 分类号: G06F17/22;G06F17/30
代理公司: 北京路浩知识产权代理有限公司11002 代理人: 王莹,吴欢燕
地址: 430223 湖北省武汉市东湖*** 国省代码: 湖北;42
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 xml 数据 交换 方法 系统
【说明书】:

技术领域

发明涉及计算机技术领域,更具体地,涉及一种基于XML的数据交换方法和系统。

背景技术

在互联网领域,各个平台之间都需要通过数据交换来传递关键业务信息。当一个平台将其汇总的数据以大量的XML数据报文形式上报到另一个平台,该平台需要将这些数据进行解析,并将解析结果以及解析出的内容回传,便于后续两个平台之间的信息反馈和数据分析。在整个交互过程中,由于数据量非常大,因此在做XML数据报文解析的同时,需要考虑到解析效率以及消耗资源等问题。XML,即可扩展标记语言,标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言。目前,XML数据报文被广泛应用于数据交换。

一种常用的XML解析方法是VTD-XML解析方法。VTD-XML是一种无提取的XML解析方法,它较好的解决了文档对象模型(DocumentObject Model,简称DOM)解析占用内存过大的缺点,并且还提供了快速的解析与遍历、对XPath的支持和增量更新等特性,较好的解决了SAX(Simple API for XML)解析没有内置的文档导航支持、不能够随机访问XML文档、不支持在原地修改XML和XML越复杂时解析应用逻辑越复杂等不足。为了实现非提取(non-extractive)这个目的,它将原XML文件原封不动的以二进制的方式读进内存,连解码都不做,然后在这个二进制byte数组上解析每个元素(element)的位置及其类型信息(该信息指每个element的内存物理存储地址,类似于C语言的指针),并记录下来。这种记录就被称为虚拟令牌描述符(Virtual Token Descriptor,简称VTD)。之后的遍历操作便在这些保存下来的记录上进行,如果需要提取XML内容就就查找VTD数组,利用VTD记录中的位置等信息在原始byte数组上进行解码并返回字符串。

由于VTD技术的具体应用太过底层,VTD-XML解析方法在解析中会反复调用各种底层应用程序编程接口(Application Programming Interface,简称API),API无法复用,导致基于XML的数据交换效率不高、可扩展性不高。

现有的大部分系统平台数据交换中,数据交换机制中一般没有明确的数据格式规范,也没有制定明确的流程。

发明内容

为解决现有数据交换存在的数据交换流程不明确的不足,本发明提供一种基于XML的数据交换方法和系统。

根据本发明的一个方面,提供一种基于XML的数据交换方法,包括:S1、解析子平台发送的符合规范的XML数据报文,获取解析后数据的类型和值;S2、根据所述解析后数据的类型,判断所述解析后数据的值是否存在逻辑错误;S3、根据所述解析后数据的值是否存在逻辑错误的判断结果,生成响应数据,并将所述响应数据反馈给所述子平台。

优选地,所述步骤S1进一步包括:S11、通过解析所述符合规范的XML数据报文的报文头,获取所述解析后数据的类型;S12、根据所述解析后数据的类型,解析所述符合规范的XML数据报文的报文体,获取所述解析后数据的值。

优选地,XML数据为由多个节点组成的树状结构,所述步骤S12具体包括:利用数据交换公共接口,根据所述解析后数据的类型,选择对应的数据交换实现类,解析所述符合规范的XML数据报文的报文体,获取所述解析后数据的值;其中,所述数据交换公共接口包括第一抽象方法和第二抽象方法;所述第一抽象方法,用于获取从根节点至每个叶子节点的路径;所述第二抽象方法,用于根据每条路径,获取所有路径上叶子节点的值作为所述解析后数据的值。

优选地,所述数据交换公共接口还包括第三抽象方法;所述第三抽象方法被所述第二抽象方法调用,所述第三抽象方法用于定位到当前节点的子节点。

优选地,所述步骤S1之前还包括:S0、接收所述子平台发送的XML数据报文,判断所述XML数据报文是否符合规范;当所述XML数据报文不符合规范时,记录相应的错误代码和错误信息,并反馈至所述子平台。

优选地,所述判断所述XML数据报文是否符合规范的具体步骤包括:检查所述XML数据报文是否为有效的XML格式;当所述XML数据报文为有效的XML格式时,检查所述XML数据报文的报文头是否满足XSD文件规定的格式;当所述XML数据报文的报文头满足XSD文件规定的格式时,检查所述XML数据报文的报文体的每个节点的层级是否满足XSD文件规定的格式;当所述XML数据报文的报文体的每个节点的层级满足XSD文件规定的格式时,检查所述每个节点的属性和值是否满足XSD文件中的定义。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉华工赛百数据系统有限公司,未经武汉华工赛百数据系统有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201711034221.0/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top