[发明专利]一种XML文档的表格存储方法及装置有效
申请号: | 201210523863.8 | 申请日: | 2012-12-07 |
公开(公告)号: | CN103049494B | 公开(公告)日: | 2017-05-24 |
发明(设计)人: | 吴万里 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 广州三环专利代理有限公司44202 | 代理人: | 郝传鑫,熊永强 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 xml 文档 表格 存储 方法 装置 | ||
技术领域
本发明属于文档应用领域,具体涉及一种XML文档的表格存储方法及装置。
背景技术
当前在例如CRM(客户关系管理,customer relationship management,简称“CRM”)、OCS(在线计费系统,Online Charging System,简称“OCS”)和ESB(企业服务总线,enterprise service bus,简称“ESB”)等业务系统或一些XML处理工具等应用系统中广泛使用XML(可扩展标记语言,extensible markuplanguage,简称“XML”)并需要解析和存储XML文档,由于XML文档便于扩展、便于解析和业务处理,所以以XML文档的方式格式化数据或作为通信协议的情况普遍存在,也给业务系统扩展性、松耦合性等方面带来了很大的方便。
但是正因为XML文档自身可扩展性的特性,如能存储方便则应用会更广泛,但在表格存储如数据库表的存储方式中,如何存储XML文档是一个十分棘手的问题,一个方面,由于XML文档的数据太易于扩展,所以其整体大小不固定,很容易超出数据库单个字段的最大容量;另一方面,如果把整个XML文档都存储于一个字段中,可读性非常差,管理人员需要特殊的方式才能了解数据或数据分析;又一方面,很难与现有技术结合使用,特别是搜索、管理不方便,如在数据库中SQL(结构化查询语言,structured query language,简称“SQL”)语句很难深入到XML文档内部做数据的搜索、更新、管理等。
发明内容
本发明实施例提供一种XML文档的表格存储方法及装置,以期实现XML文档的表格存储,便于在表格中对XML文档数据进行搜索、更新和管理。
本发明第一方面提供一种XML文档的表格存储方法,可包括:
将XML文档加载到XML文档对象模型;
读取加载后的XML文档的节点信息,所述节点信息包括:节点名、节点值、节点属性名和节点属性值;
对所述读取的节点信息中的节点名和所述节点属性名进行路径化处理;
将路径化的节点名和节点属性名以及相应的节点值和节点属性值写入表格。
在第一种可能的实施方式中,所述对所述读取的节点信息中的节点名和节点属性名进行路径化处理,包括:
依据根节点到所述节点的节点路径,对读取的节点的节点名进行路径化处理;
依据节点属性名与该节点属性名对应的路径化的节点名的关系,对所述节点属性名进行路径化处理。
结合第一方面或第一方面的第一种可能的实施方式,在第二种可能的实施方式中,所述将路径化的节点名和节点属性名以及相应的节点值和节点属性值写入表格,包括:
将路径化的节点名和相应的节点值作为一个条目写入表格;
分别对应所述路径化的节点名和相应的节点值在表格中的相对位置,将所述路径化的节点名对应的每个路径化的节点属性名和相应的节点属性值作为一个条目写入表格中该节点的路径化的节点名所在条目与另一个节点的路径化的节点名所在条目之间。
结合第一方面的第二种可能的实施方式,在第三种可能的实施方式中,所述方法还包括:
判断所述表格中各条目的类别,并在所述各条目中写入相应的类别标识。
结合第一方面的第三种可能的实施方式,在第四种可能的实施方式中,所述方法还包括:
将属于同一个XML文档的条目以相同的文档标识进行标识,并将所述标识写入各条目。结合第一方面的第二种可能的实施方式,在第五种可能的实施方式中,所述方法还包括:
对属于同一个XML文档的所述条目以递增顺序编号,并将所述编号写入相应的条目。
本发明第二方面提供一种XML文档的表格存储装置,可包括:
加载单元,用于将XML文档加载到XML文档对象模型;
读取单元,用于读取加载后的XML文档的节点信息,所述节点信息包括:节点名、节点值、节点属性名和节点属性值;
处理单元,用于对所述读取的节点信息中的节点名和节点属性名进行路径化处理;
写入单元,用于将路径化的节点名和节点属性名以及相应的节点值和节点属性值写入表格。
在第一种可能的实施方式中,所述处理单元还包括:
第一子处理单元,用于依据根节点到所述节点的节点路径,对读取的节点的节点名进行路径化处理;
第二子处理单元,用于依据节点属性名与该节点属性名对应的路径化的节点名的关系,对所述节点属性名进行路径化处理。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210523863.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:应急灯系统
- 下一篇:一种信号发射功率分配方法及装置