[发明专利]部分XML确认有效
| 申请号: | 200680041056.5 | 申请日: | 2006-11-06 |
| 公开(公告)号: | CN101300577A | 公开(公告)日: | 2008-11-05 |
| 发明(设计)人: | D·托米克;S·保尔;G·舒浩勒;I·塞里;W·余 | 申请(专利权)人: | 微软公司 |
| 主分类号: | G06F17/30 | 分类号: | G06F17/30;G06F17/27;G06F17/00 |
| 代理公司: | 上海专利商标事务所有限公司 | 代理人: | 张政权 |
| 地址: | 美国华*** | 国省代码: | 美国;US |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 部分 xml 确认 | ||
背景
XML(扩展标记语言)提供了标记数据的标准方式,使得数据可以由诸如Web浏览器以各种方式读取和解释。XML文档广泛地用于日常事务中。XML模式是为XML数据模型定义模式定义语言的W3C(万维网联盟)标准。模式定义可用于确认XML实例文档的内容和结构。
通常,XML模式被用于定义在XML文档中使用的数据格式。如果要更新XML文档,那么经更新的信息必须符合相关联的模式置于文档的约束。XML模式文档是使用不同于关系型数据系统的表格和列的方式表达的XML文档。在XML模式文档中提供的类型信息也可用于检查XML查询的正确性,并优化XML查询和XML存储。由此,对置于在XML文档中的数据满足模式约束的验证是一个重要的考虑因素。在一些实例中,XML文档可能是较大的。一个示例可以是其中列出大量客户以及他们的客户编号和一个或多个地址和其他相关客户信息的客户列表。该信息可用于经由XML格式从一个位置转移到另一个位置,但是也可用于经由关系型数据库来编辑或使用该信息。存储在关系型数据库中的XML数据可以被存储为二进制大对象(BLOB)。由此,如果需要对客户列表的更新,那么在关系型数据库存储中所存储的数据的结构也必须匹配模式。
具有使用关系型结构存储XML模式文档的能力至少具有以下优点。可以使用关系型索引结构而非解析XML模式文档来有效地搜索类型定义。可以选择性地将合适的XML模式文档(例如CustomerType(客户类型)定义)的片段加载到存储器缓冲区中,以供XML实例的确认,这提供了显著的性能改进。并且可以在关系型存储上提供SQL(结构化查询语言)视图,以供关系用户知道所存储的XML模式文档。但是,用于操纵SQL和XML之间的数据的技术是有限的,并且某些技术要求对SQL性能的很高代价,因为当作出仅对文档一部分的更新时要确认整个XML文档。
概述
仅修改存储在关系型数据库中的XML文档的一部分通常导致整个XML文档确认的代价。本发明提供了执行仅部分确认的技术。对XML文档中要修改的数据而非整个文档执行部分确认。该方法包括将文档确认转换成算子树。该算子树包括对应于用于依照XML模式确认经修改的数据的第一部分的第一算子,和对应于依照XML模式确认经修改的数据的父部分的第二算子。从整个文档模式中提取模式的第一和第二部分。使用第一算子和模式的第一部分执行对经修改的数据的第一确认,即深确认。接着,使用第二算子,用模式的第二部分执行对第一确认的结果的第二确认,即浅确认。验证XML文档约束并且将经修改的数据合并到XML文档中,由此避免了对XML文档的完全确认。
根据本发明的一方面,一种用于对XML文档执行部分XML确认的方法,所述方法包括:(a)接收修改XML文档的数据的用户请求(810),所述文档由一文档模式定义,所述数据受所述文档模式的第一部分约束,所述模式的第二部分包括所述第一部分的父部分,其中所述父部分包括对所述第一部分的约束;(b)将与所述请求相关联的XML文档转换成一算子树结构(820)以供一查询处理器执行,所述算子树具有对应于所述模式的第一部分的第一算子和对应于所述第一部分的父部分的第二算子;(c)提取所述模式的第一部分(830);(d)使用所述第一算子,用所述模式的第一部分执行对经修改的数据的确认(840)以形成一经部分确认的XML文档部分,该步骤包括:对所述经修改的数据执行深确认,其中对照所述模式的第一部分的约束检查所述经修改的数据,所述执行深确认包括递归地确认所述经修改的数据的完整逻辑实体;(e)提取所述模式的第二部分(850);(f)使用所述第二算子,用所述模式的第二部分执行对所述经部分确认的XML文档部分的确认(860),该步骤包括对所述经部分确认的XML文档执行浅确认,所述执行浅确认包括使用所述第二算子的父节点信息来执行确认;(g)验证所述经部分确认的XML文档部分与所述模式的第二部分的约束一致(870);以及(h)将所述经修改的数据合并到所述XML文档中(880),其中避免了对所述XML文档的完全确认。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软公司,未经微软公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200680041056.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:背光模组及其光学板
- 下一篇:多孔碳电极材料及其制备方法





