[发明专利]一种用于SWF文件的半结构化数据模型构建方法及装置在审
申请号: | 201710033834.6 | 申请日: | 2017-01-16 |
公开(公告)号: | CN106802953A | 公开(公告)日: | 2017-06-06 |
发明(设计)人: | 赵海英;谭欣;贾耕云 | 申请(专利权)人: | 北京邮电大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京柏杉松知识产权代理事务所(普通合伙)11413 | 代理人: | 赵元,马敬 |
地址: | 100876 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 用于 swf 文件 结构 数据模型 构建 方法 装置 | ||
技术领域
本发明涉及半结构化技术领域,特别是涉及一种用于SWF文件的半结构化数据模型构建方法及装置。
背景技术
SWF(Shock Wave Flash)是Macromedia(现已被Adobe公司收购)公司的动画设计软件Flash的专用格式,被广泛应用于网页设计、动画制作等领域,SWF文件通常也被称为Flash文件。SWF文件由文件头、文件体和文件尾构成,一个完整的SWF文件的文件体包括多个对象。
现有技术中,SWF文件主要通过树状的XML格式即SWF文件的半结构化数据模型进行存储。在存储时,根据SWF文件的文件体中包括的对象的数量,构建对应数量的子树;然后根据存储的数据类型,确定预设存储空间,并将每个子树的存储空间确定为预设存储空间;之后,一个子树存储一个对象,如果子树存储空间不够,按照预设存储空间成倍增加子树的存储空间。
例如,假设一个SWF文件的文件体包括对象1、对象2和对象3,对象1的大小为50bit,对象2的大小为33bit,对象3的大小为30bit,确定将SWF文件存储为非结构化数据,且非结构化数据的预设存储空间是35bit。则在存储时,首先构建3个子树,并将每个子树的存储空间确定为35bit。之后,一个子树存储一个对象。然后,存储对象1的子树存储空间不够,则存储对象1的子树的存储空间重新确定为35+35=70bit,进而存储对象1。
这样的话,每个子树都有可能出现实际占有空间小于子树存储空间的情况,即每个子树都有可能存储空间占用不全,进而造成存储空间的冗余。可见,现有技术中,构建的半结构化数据模型存在存储空间冗余的问题,从而导致存储资源浪费。
发明内容
本发明实施例的目的在于提供一种用于SWF文件的半结构化数据模型构建方法及装置,以解决现有技术中存在的半结构化数据模型存储空间冗余的问题,避免资源浪费。具体技术方案如下:
一种用于SWF文件的半结构化数据模型构建方法,包括:
构建初始半结构化数据模型,其中,所述初始半结构化数据模型至少包括文件体子树;
针对待存储的SWF文件的文件体,获得所述文件体中各个对象的类别标识,并确定各包含相同类别标识对象的对象分组;
针对各对象分组,根据该对象分组内包含的各对象的大小,确定该对象分组的存储空间;
在所述文件体子树中构建各对象分组对应的类别子树;并根据各对象分组的存储空间,确定各类别子树的存储空间。
可选地,所述方法还包括:
针对每个类别子树,根据该该类别子树对应对象分组中包括的各对象,在该类别子树中构建各对象对应的对象子树;
根据各对象的大小,确定各对象子树的存储空间。
可选地,所述方法还包括:
获得各对象的位置信息,并根据各对象的位置信息,将各对象存储到对应的对象子树中。
可选地,所述方法还包括:
针对每个对象子树,在该对象子树中构建哈夫曼huffman树T,其中,所述T为所述对象子树的子树,所述T包括ID子树,R子树,W子树;所述R子树包括L子树,A子树,C子树;
其中,所述ID为该对象子树所对应的对象的标识ID号;所述R为所述对象的特征;所述W为huffman的权重;所述L为在所述SWF文件中,所述对象的位置信息;所述A为所述对象的属性信息;所述C为所述对象的关联关系。
可选地,所述初始半结构化数据模型还包括:文件头子树和文件尾子树;
其中,所述文件头子树的存储空间固定,所述文件尾子树的存储空间固定,且,所述文件头子树包括是否压缩节点、舞台大小节点、字节长度节点、版本号节点、帧数节点和帧率节点。
为达到上述目的,本发明实施例还提供了一种用于SWF文件的半结构化数据模型构建装置,包括:
第一构建模块,用于构建初始半结构化数据模型,其中,所述初始半结构化数据模型至少包括文件体子树;
第一获得模块,用于针对待存储的SWF文件的文件体,获得所述文件体中各个对象的类别标识,并确定各包含相同类别标识对象的对象分组;
第一确定模块,用于针对各对象分组,根据该对象分组内包含的各对象的大小,确定该对象分组的存储空间;
第二确定模块,用于在所述文件体子树中构建各对象分组对应的类别子树;并根据各对象分组的存储空间,确定各类别子树的存储空间。
可选地,所述装置还包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京邮电大学,未经北京邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710033834.6/2.html,转载请声明来源钻瓜专利网。