[发明专利]外部序列化和去序列化无效

专利信息
申请号: 201210442357.6 申请日: 2012-11-07
公开(公告)号: CN102981841A 公开(公告)日: 2013-03-20
发明(设计)人: B·德斯梅特;H·J·M·梅杰 申请(专利权)人: 微软公司
主分类号: G06F9/44 分类号: G06F9/44
代理公司: 上海专利商标事务所有限公司 31100 代理人: 陈斌
地址: 美国华*** 国省代码: 美国;US
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 外部 序列
【说明书】:

技术领域

发明涉及外部序列化和去序列化。

背景技术

序列化和去序列化便于数据存储和传输。序列化是将对象或一组对象(也称为:对象图)转换成有助于在计算机可读介质上存储或在通信网络上传输的格式(例如二进制、XML(可扩展标记语言)、JSON(JavaScript对象符号)……)的进程。去序列化是将序列化的对象或一组对象重构为相同或语义上等效的格式的进程。序列化也称为紧缩或编组,相反,去序列化也被称为膨胀或解组。

编程语言通常提供支持对象序列化和去序列化的机制。例如,可实现接口或可指定自定义属性,等等。因此,对象可被编写成能提供序列化和去序列化。换言之,在设计期间定义对象时,考虑序列化和去序列化。

发明内容

下面呈现了简化的发明内容,以便提供对所公开主题的某些方面的基本概念。本发明内容不是广泛性的概观。它并不旨在标识关键/重要元素,也不旨在划定所要求保护主题的范围。其唯一目的是以简化形式呈现一些概念,作为稍后呈现的更具体实施例的序言。

简言之,本发明涉及外部序列化和去序列化,更一般地涉及外部变换。设计时不支持序列化和去序列化的对象可在外部被序列化和去序列化(例如相对于相应的对象模型)。换言之,对象模型的对象的序列化和去序列化是在不进行警告或以其它方式影响原始相应类型的情况下完成的。序列化和去序列化函数可从开发者处获得,和/或被自动发现或推断出。可遍历对象图,并基于对象元数据选择和(例如递归地)执行适当的序列化函数。随后,可基于序列化的对象元数据来定位去序列化函数,并应用该去序列化函数以将序列化的数据去序列化。根据一个特定方面,序列化可以是可配置的,以允许各种程度的细节被序列化并随后被去序列化。

为实现上述及相关目的,在此结合以下描述和附图描述了所要求保护主题的某些说明性方面。这些方面指示可实践本主题的各种方式,它们均落在所要求保护主题的范围之内。当结合附图阅读以下详细描述时,本发明的其他优点和新颖特征将变得显而易见。

附图说明

图1是外部序列化/去序列化系统的框图。

图2是代表性的序列化组件的框图。

图3示出用于循环检测的上下文的使用。

图4是代表性的去序列化组件的框图。

图5示出示例性的序列化和去序列化场景。

图6是序列化的方法的流程图。

图7是序列化的方法的流程图。

图8是便于序列化和去序列化的方法的流程图。

图9是去序列化的方法的流程图。

图10是示出用于本公开各方面的合适操作环境的示意性框图。

具体实施方式

以下细节一般涉及数据变换,包括但不限于序列化和去序列化。常规地,对象图的序列化假设封闭世界模型,在该模型中,对象已被编写成使得可提供序列化和去序列化。这可包括使用自定义属性或实现接口,等等。换言之,开发者作出有意识的决定,以允许默认的不可序列化的类型或对象的实例可被序列化。如果想要对设计时未考虑序列化(或者换言之,缺少如通常需要的对于对象模型的序列化和去序列化的支持)的类型进行序列化和去序列化,则会产生问题。为了解决此问题,可采用开放世界模型,相对于对象模型,开放世界模型执行外部序列化。换言之,对象模型的对象的序列化是在不进行警告或以其它方式影响原始相应类型的情况下完成的。例如,可发现关于对象的元数据,并利用元数据来产生和/或选择对该对象进行序列化或去序列化的函数。

为了便于清楚和理解,在序列化和去序列化的情境下描述了本公开的诸方面。然而,本主题不限于此。更一般地,诸方面涉及利用函数和反函数的类型之间的变换。这意味着类型“A”可被转换成类型“B”,并从类型“B”转换回类型“A”。更具体地,整数可被变换成串,并从串变换回整数。这就像将第一类型植入第二类型,并允许第一类型被恢复。一种使用情况是序列化和去序列化,但可以存在其它使用情况,包括出于兼容性目的在对象模型之间的转换,等等。

现在参考附图更详细地描述本发明的各个方面,在全部附图中用相似的标记来指示相似或相应的元素。然而应该理解,附图及其相关详细描述不旨在将所要求保护的主题限于所公开的具体形式。相反,其意图是覆盖落在所要求保护主题的精神和范围之内的所有修改、等价物和替换的方案。

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

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

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

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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