网络内容语义结构标注的方法和装置的制作方法

文档序号:6575996阅读:192来源:国知局
专利名称:网络内容语义结构标注的方法和装置的制作方法
技术领域
本发明属于计算机科学技术领域语义网络分支,具体涉及一种网络内容语义结构标注的 方法和装置,适用于网络信息提取、企业网站自助推广、全文搜索和语义搜索、商业情报挖 掘、信息聚合、网络知识分类、网络知识库建立、网络服务和内容混搭(mashup)等应用领 域。
背景技术
万维网(Web)给人们的信息和知识管理带来了巨大改变,现在,人们逐渐习惯了到万 维网上寻找知识和问题的答案,以前需要花费几个小时甚至更长时间翻阅图书资料,现在可 能只需要几分钟。然而,当前万维网上的信息的处理方法还是比较单一的,最成功的处理方 法是将网页内容下载下来,建立全文索引,网络用户通过输入关键字进行信息搜索。这个提 取和索引过程仅限于对字面文本的处理,并不处理内容的语义,显而易见,具有很大的局限 性,例如,搜索的准确率很低,用户不得不从一堆搜索结果中人工筛选需要的内容。然而, 计算机凭借现有的算法和能力无法像人一样阅读和理解万维网中的内容。人工智能是一种解
决方案,然而,根据现有的研究进度,人工智能的目标还是比较遥远的。其实,有另外一种 更实用的解决方案将现有互联网中的内容进行结构化改造,首先汇聚网络内容语义结构元 数据,然后利用该元数据将互联网上的内容按照特定语义格式提取下来存储成结构化数据或 者进行在线的格式化。这样,现有的非结构化信息转变成了像关系数据库一样的结构化信息, 使计算机的进一步处理加工成为可能。
事实上,从万维网(Web)上提取信息早在上个世纪就出现了,信息提取就是将网页上 特定语义的内容片段取下来供其他应用系统使用,经过十几年的发展,出现了各种信息提取 算法,而且随着计算机技术的发展,用新计算机语言和技术不断武装以前算法,其能力大大 增强,然而,本质上所有这些算法和技术的基础没有改变,我们知道,万维网上的内容是用 HTML文档呈现给人们的,即使服务器使用了各种先进的动态页面管理技术,客户端浏览器 面对的仍然是HTML文档,几乎所有的信息提取算法和技术都是利用HTML文档中的各种 标签,使用字符串正则表达式或者DOM结构遍历技术,从文档中指定位置提取信息。随着 一些新技术的出现,例如,XPath,XSLT,XQuery等,信息提取的效率和能力大大提高,然而,
6没有质的改变,其局限性主要提现在下面三点
1,信息提取技术的应用是分散的
信息提取的应用十分普遍,几乎每个互联网领域的公司和个人都或多或少地需要从现有的万维网内容中提取需要的信息。当前,计算机编程语言发展的十分强大,编写一段信息提
取的代码也许只需要几个小时,因此,这些公司和个人几乎都有编写定制的信息提取代码的
经历。虽然单个个体的开发投入很小,而整个产业领域的开发投入总量是巨大的,所以,当
前这种分散状态耗费了可观的资源。
2,信息提取开发成果是无法继承和积累的
由于信息提取系统的开发是分散的,每个个体的开发成果无法继承和积累,个体开发的信息提取代码都是为特定目的的,随着应用场景的改变,从技术上这些代码无法重用,例如,目标页面改变了就需要新代码应对新的文档结构;开发人员到一个新项目中,因为项目环境的变化,他很可能选择开发一个全新的信息提取代码;开发人员替换后,继任者很有可能抛弃前任的成果,重新开发。成果不能继承是一项损失,再加上重复开发的支出,都对企业盈利造成损害,如果,再将这些损失扩大到产业领域甚至整个人类社会领域,总量是巨大的,这跟万维网的理念是相悖的。
3,网络内容的语义结构不是显见的
当前网络上的绝大多数内容是用来显示的文本,缺少语义信息,计算机程序难于对其进行格式化,同时信息提取算法只有使用绝对定位方法,很容易受页面排版改变的冲击。近几年,出现了几个万维网内容标注的方法和技术,例如,MicroFormat技术,通过在HTML文档中增加代表特定语义的HTML标签或者HTML元素属性,可以将结构化信息传递给浏览器或者其他网络内容处理器,此类技术大大增强了信息提取和内容格式化的准确度和可处理性。然而这类技术要求内容发布者使用标准的内容注解标签或者元素属性编写HTML页面,但是要成为标准,需要经历一个较长的协商过程,而内容发布者不可能坐等标准的颁布而放弃内容的发布;另一方面,当前互联网的存量内容已经十分巨大了,使用标准的内容注解进行重写的成本是无法接受的。
本发明的方法和装置成功地解决了上述这些问题,从语义注解角度看,对于本发明来说,页面上的现有标签或者属性都是潜在的语义注解,内容发布者可以自由使用本领域语境中的任何词汇,同时,语义结构的定义将不再与页面内容揉合在一起,而是建立一个独立的且共享的语义结构描述知识库,任何信息提取任务或者内容格式化任务都可以利用;从信息提取角度看,本发明使信息提取行为不再是备受争议的攫取行为,而是积极参与万维网价值增值的回馈循环。使用本发明的方法和装置,网络用户能够参与到万维网内容语义结构的定义和共享活动中,随着参与度的增加,定义出来的语义结构将联系成一张语义网络,使用这些语义结构,能够有效地对网络内容进行结构化改造,而且,由于这些语义结构是共享发布的,能够有效地减少重复劳动造成的消耗。网络用户不再需要重复定制大量的信息提取程序,使用本发明的方法和装置,先搜索是否已经存在满足需求的别人共享出来的语义结构,如果存在,只需生成自己的网络内容格式化指令即可,而且生成网络内容格式化指令的过程是完全自动的,将程序员从繁杂的编写定制代码的活动中解放出来。

发明内容
本发明公开了一种网络内容语义结构标注的方法和装置,根据本发明的一个方面,提供了一种网络内容语义结构标注的方法,所述语义结构包括网络内容的语义注解、被注解的信息的属性、语义注解之间的关系,其特征在于,所述方法包括
(1) 识别网络内容的语义结构;
(2) 编辑语义结构;
(3) 发布和共享语义结构描述文件;
(4) 使用语义结构生成网页内容格式化指令文件。
根据本发明的另一个方面,提供了一种网络内容语义结构标注的的装置,所述语义结构包括网络内容的语义注解、被注解的信息的属性、语义注解之间的关系,其特征在于,所述装置包括
语义标志识别单元从网络页面上将携带可识别的语义标志的DOM节点识别出来,输出候选语义节点列表
关系参数计算单元计算网络页面DOM节点的关系参数,在确保关系参数没有违背的条件下计算候选语义节点的关系参数
语义结构管理单元使用语义节点的关系参数和语义节点列表,构建语义结构树,管理内存中的语义结构树的存取操作,向其它单元提供语义结构的操作接口
语义结构编辑单元管理用户操作界面,接受用户对语义结构编辑的请求,计算编辑后的语义节点列表和关系参数
语义结构描述文件管理单元从语义结构管理单元获取语义结构树,转换成语义结构描述文件,完成发布和共享过程;或者,从语义结构知识库读取语义结构描述文件并转换成语义节点列表和关系参数,完成语义结构加载过程。在这两个过程中都要与语义结构访问授权单元交互,以决定用户对语义结构描述文件的共享操作模式。
语义结构访问授权单元根据当前用户的角色和语义结构描述文件的权限属性,确定用户对语义结构的共享操作模式。
格式化指令生成单元根据内存中的语义结构生成网络页面内容格式化指令,管理指令文件的存取。


图1是网络页面内容DOM树和语义结构树的示意2是根据本发明的优选实施例的识别和构建语义结构树的流程3是根据本发明的优选实施例的定义和编辑语义结构的用户界面4是根据本发明的优选实施例发布和共享语义结构描述文件的流程5是根据本发明的优选实施例的编辑语义结构和生成格式化指令文件的流程6是根据本发明的优选实施例的生成格式化指令文件的流程7是根据本发明的优选实施例的网络内容语义结构标注的装置的分解图
具体实施例方式
下面结合附图对本发明的优选实施例进行详细的说明。
网络内容语义结构标注的方法
图1是网络页面内容DOM树和语义结构树的示意图,左图是网络页面内容DOM树,深色节点代表携带语义标志的DOM节点,使用本发明的方法,可以将语义节点识别出来,构建语义结构树,如右图所示,用户可以使用本发明的优选实施例提供的语义结构编辑手段修改语义树。本发明的很多计算都使用了 DOM树和语义结构树的层号,层号是从根节点开始递增编号的,如虚线所示。为了更好的理解本发明,首先说明几个专用术语。容器(container):在语义结构树中,拥有语义树子树的节点称为容器。语义信息属性(property):在语义结构树中,不拥有语义树子树的叶子节点称为语义信息属性。
9图2是根据本发明的优选实施例的识别和构建语义结构树的流程图。首先在步骤201,用户使用本发明的优选实施例指定一个网络页面范围,在此范围内识别候选语义节点,本步骤不是必须的,如果用户没有指定,则在整个页面范围内识别。
接着在步骤202,前序遍历网络页面的DOM树,产生一个DOM节点序列,每个节点赋予一个编号,后续所有计算过程使用该节点编号获取DOM节点。
接着在步骤203,计算DOM节点关系参数,加上202步计算得到的节点序号,产生一个三元组(no。, level。, path。),其中no。是节点在DOM节点序列中的序号;level。是节点在DOM树中位于第几层;patho是从DOM树中査询该节点的表达式,由XPath表达式和路径歩骤序列组成。
接着在步骤204,生成候选语义节点序列。从DOM节点序列中将携带语义标志的节点识别出来,按照识别的前后顺序,存储到候选语义节点序列中。
接着在步骤205,计算语义节点关系参数。根据候选语义节点的DOM节点关系参数三元组计算得到语义节点关系参数三元组(nos, levels, parentNos),其中nos是节点在语义节点序列中的序号,只要对节点序列顺序编号即可获得;levels是节点在语义结构树中位于第几层;parentNos是该语义节点在语义树中的父节点的编号。
该算法中,首先需要确定语义节点的父节点,获得parentNos,方法是,以该节点为起点,在DOM节点序列中循环向前查找所有节点,对比其levd。,该值小于本节点的就是本节点的父节点。接着,计算levels,即父节点的levels加1。
接着在步骤206,构建语义树,使用语义节点关系参数三元组(nos, levels, parentNos),将语义节点序列用树结构表达。在本发明的优选实施例中,DOM树和语义结构树分别显示在左栏的DOM树浏览窗口和右栏的语义树编辑窗口中,如图3
图4是根据本发明的优选实施例发布和共享语义结构描述文件的流程图。首先在步骤401,用户使用本发明的优选实施例时,将被要求进行鉴权,只有合法用户才能进行语义结构定义操作。
接着在步骤402,定义语义结构,包括图2所示的所有过程,以及语义结构编辑过程。接着在步骤403,生成语义结构描述文件。
接着在步骤404,可以给新定义的语义结构赋予访问权限属性,如果没有明确赋予属性值,缺省值是拥有者拥有读和写权限、拥有者所属的组拥有读权限、其他人拥有读权限。接着在步骤405,根据用户的角色,决定是否允许共享发布,通常,通过鉴权的合法用
户都有权力发布新定义的语义结构。
最后在步骤406,接受发布请求,将语义结构描述文件存储下来,并且发布到网络上,
允许其他人授权访问。
图5是根据本发明的优选实施例的编辑语义结构和生成格式化指令文件的流程图,同图4展示的流程不同,在本流程中,用户不是定义一个新的语义结构,而是加载现有的语义结构描述文件,进行编辑或者生成网页内容格式化指令文件。首先在步骤501,用户使用本发明的优选实施例时,将被要求进行鉴权,只有合法用户才能进行后续操作。
接着在步骤502,本发明的优选实施例决定用户对某个语义结构描述文件的共享使用模式,至少应该是读取模式,否则,将终止流程,以禁止用户使用该语义结构描述文件。
接着在步骤503,将语义结构描述文件读取到内存中,重构语义结构树。
接着在步骤504,从该步骤向下,将分成两种情况。第一种情况,用户对语义结构进行编辑,然后再次发布共享,这种情况至少需要修改模式;第二种情况,用户只是使用该语义结构生成网络内容格式化指令文件,只需要读取模式即可。
第一种情况,在步骤505,编辑语义结构,进行本发明所述的各种编辑操作接着在步骤506,根据用户的角色,决定是否允许共享发布,至少需要修改模式才能发布成功。
接着在步骤507,接受发布请求,将语义结构描述文件存储下来,并且发布到网络上,允许其他人授权访问。
第二种情况,在步骤508,生成网络内容格式化指令文件,具体算法和过程在图6中展示。
接着在步骤509,根据用户的角色,决定是否允许将指令文件存储在本发明优选实施例的服务器上。网络内容格式化指令文件和语义结构描述文件的权限管理策略可以相同,也可以不同,本发明优选实施例可以提供单独的服务器存储格式化指令文件。
接着在步骤510,接受存储请求,将指令文件存储在服务器上。
接着在步骤511,生成本格式化指令的语义结构的利用度加l,利用度是一个数值,存储在服务器上,用以跟踪语义结构使用情况。图6是根据本发明的优选实施例的生成格式化指令文件的流程图。首先在步骤601,将语义树中的子树进行排序,就是将所有的容器节点找出来,层次值levels大的放在前面,产生语义树的反向树,下面602、 603、 604步骤的计算都是按照反向树的顺序进行的。
接着在步骤602,计算子树的树参数,每棵子树都有一个树参数二元组(stemPos,branchPath),其中,stemPos是子树树干的最高点的位置,也就是从该点以后将分叉;branchPath是一个列表,罗列所有孩子节点的定位表达式,是改进的XPath表达式。
接着在步骤603,计算子树的定位规则,由子树定位点和识别标志两部分组成。
具体的说,子树的定位点通过下述公式计算得出pos=min(stemPos, dupPos,freeFormatPos,contPos),即找出四个定位点中的最前者。其中,stemPos来自于子树的树参数二元组,dupPos根据子树重现规律计算获得的,freeFormatPos是包容该子树的容器节点上指定的语义标志的定位点,contPos是包容该子树的容器节点上需要格式化的网页内容的定位点。
识别标志是用于从网络页面上识别出该子树的标志,包括容器节点的语义标志和用户指定的其他网络页面标志。
接着在步骤604,计算容器内孩子节点的内容的定位规则,此规则是相对于容器节点的定位表达式。
接着在步骤605,生成网络内容格式化指令文件,使用XPath和XSLT指令实现步骤603、604计算出来的定位规则,存储到一个XML文件中。
接着在步骤606,将格式化指令文件存储到外存储器中,以便在格式化目标网络页面时读取使用。
网络内容语义结构标注的装置
图7是根据本发明的优选实施例的网络内容语义结构标注的装置的分解图。语义标志识别单元701:加载网络页面,生成页面内容的DOM树结构,前序遍历DOM
树,产生一个DOM节点序列,每个节点赋予一个编号。然后从中将携带可识别的语义标志
的DOM节点识别出来,输出候选语义节点列表
关系参数计算单元计算DOM节点关系参数,产生一个三元组(no。, level。, path。),在确保关系参数没有违背的条件下计算候选语义节点的关系参数三元组(nos, levels, parentN")
语义结构管理单元使用语义节点的关系参数和语义节点列表,构建语义结构树,管理
内存中的语义结构树的存取操作,向其它单元提供语义结构的操作接口
语义结构编辑单元管理用户操作界面,接受用户对语义结构编辑的请求,计算编辑后的语义节点列表和关系参数
语义结构描述文件管理单元负责语义结构描述文件的发布和加载过程管理,分别是将从语义结构管理单元获取的语义结构树转换成语义结构描述文件,完成发布和共享过程;从语义结构知识库读取语义结构描述文件并转换成语义节点列表和关系参数,完成语义结构加载过程。在这两个过程中都要与语义结构访问授权单元交互,以决定用户对语义结构描述文件的共享操作模式。
语义结构访问授权单元根据当前用户的角色和语义结构描述文件的权限属性,确定用户对语义结构的共享操作模式。
格式化指令生成单元根据内存中的语义结构生成网络页面内容格式化指令,实现图6所示的流程,同时,管理格式化指令文件的存取。
权利要求
1,一种网络内容语义结构标注的方法,所述语义结构包括网络内容的语义注解、被注解的信息的属性、语义注解之间的关系,其特征在于,所述方法包括(1)识别网络内容的语义结构;(2)编辑语义结构;(3)发布和共享语义结构描述文件;(4)使用语义结构生成网页内容格式化指令文件。
2,根据权利要求l所述的网络内容语义结构标注的方法,其特征在于所述语义注解是 标明网络内容的某个片段具有什么语义;所述被注解的信息的属性是对所述语义注解的用途、 特性和含义的进一步描述;所述语义注解之间的关系是所述语义注解之间的语义关系所述 语义结构描述文件是一个XML文件,用于在外存储器上存储语义结构树。
3,根据权利要求l所述的网络内容语义结构标注的方法,其特征在于,所述识别网络内 容的语义结构,步骤包括(11) 用户选定一个网络页面范围,如果不选定则在整个页面上识别语义结构;(12) 将携带可识别的语义标志的DOM节点识别出来;(13) 使用语义树构建算法将语义树节点构建成语义结构树。
4,根据权利要求3所述的网络内容语义结构标注的方法,其特征在于,所述语义树节点, 包含网络内容的语义注解和被注解的信息的属性等语义信息,在语义树中与其他节点的邻接 关系代表语义注解之间的关系。在识别阶段每个识别出来的携带可识别的语义标志的页面 DOM节点对应一个语义树节点。所述可识别的语义标志,包括(121) Microformat标志;(122) HTML页面元素名称(标签);(123) HTML页面元素的属性名称和/或取值;(124) 组合上述内容产生的DOM节点定位表达式。
5,根据权利要求3所述的网络内容语义结构标注的方法,其特征在于,所述构建成语义 结构树,步骤包括(131) 计算页面的所有DOM节点的关系参数;(132) 确保DOM节点的关系参数没有违背,计算语义树节点在语义树上的关系参数;(133) 使用语义树节点的关系参数构建语义树。
6,根据权利要求5所述的网络内容语义结构标注的方法,其特征在于,所述DOM节点 的关系参数,包括(1311) 通过前序遍历DOM树确定的节点序号;(1312) 在DOM树中的层次值,是一个数值,表示位于DOM树树状结构中第几层,0 代表树的根节点;(1313) 所在DOM树的树枝,是一个定位表达式,表明该DOM节点的所有的祖先节点。所述确保关系参数没有违背,包括(1321) 语义树上的节点的父子/祖孙关系与页面DOM树上的节点的父子/祖孙关系一致;(1322) 在页面DOM树同一树枝上的节点也位于语义树的同一树枝上。 所述语义树节点的关系参数,包括(1331) 语义树节点序号,代表前序遍历语义结构树时节点被访问的顺序;(1332) 在语义树中的层次值,是一个数值,表示位于语义树树状结构中第几层,0代 表树的根节点(1333) 在语义树中的父节点的编号。
7,根据权利要求l所述的网络内容语义结构标注的方法,其特征在于,所述编辑语义结 构,包括(21) 语义树节点的插入、删除、复制;(22) 语义树树枝的复制、迁移;(23) 给语义树节点指定语义标志,是建立DOM树中携带语义标志的节点与语义树节 点之间的对应关系;(24) 去除语义标志,是解除DOM树中携带语义标志的节点与语义树节点之间的对应关系;(25) 修改语义注解,是修改语义树节点的命名和修改语义树节点的语义的文字性标注;(26) 修改被注解的信息的属性。
8,根据权利要求1所述的网络内容语义结构标注的方法,其特征在于,所述发布和共享 语义结构描述文件,步骤包括(31) 给语义结构描述文件的访问权限属性赋值,访问权限属性由语义结构的拥有者赋 予和修改;(32) 语义结构描述文件存放到语义结构知识库中,开放给网络用户访问;(33) 对网络用户进行鉴权,确定用户的角色;(34) 根据语义结构描述文件的权限规定和网络用户的角色,决定网络用户共享使用的模式。
9,根据权利要求8所述的网络内容语义结构标注的方法,其特征在于,所述用户的角色, 包括(331) 用户身份标识,包括帐号名称、口令和个人联系信息(332) 用户所属的组(333) 用户的行为范围的规定 所述网络用户共享使用的模式,包括-(341) 拥有模式,涵盖其他使用模式的内容,而且能够给语义结构描述文件的访问权限 属性赋值;(342) 修改模式,涵盖读取模式的内容,而且能够编辑语义结构,重新发布和共享修改 过的语义结构描述文件;(343) 读取模式,能够读取语义结构描述文件,加载到所述的网络内容语义结构标注的 装置,重构语义结构树,生成网页内容格式化指令文件。所述语义结构知识库,是存放语义结构描述文件的数据库,可以是网络服务器,以共享给 网络用户访问,也可以是组织或者个人专用的存储装置。
10,根据权利要求1所述的网络内容语义结构标注的方法,其特征在于,所述使用语义 结构生成网页内容格式化指令文件,步骤包括(41) 将语义结构树中的子树按照语义树层次值反向排序;(42) 按顺序计算子树的树参数;(43) 按顺序计算子树的定位规则;(44) 按顺序计算网络内容的定位规则;(45) 使用XPath和XSLT表达式和语言自动实现子树的定位规则和内容的定位规则, 产生网页内容格式化指令文件;(46) 将网页内容格式化指令文件保存到外存储器中。
11.根据权利要求10所述的网络内容语义结构标注的方法,其特征在于,所述网页内容 格式化指令文件,包含一系列计算机指令,用于定位网络页面上的特定内容并将内容转换成 用户指定的反映内容语义的格式。 所述子树的定位规则,包括两类-(431) 定点定位规则,在网络页面上使用该类规则能够确定一个DOM子树;(432) 重现定位规则,在网络页面上使用该类规则能够确定多个具有特定重现规律的 DOM子树。所述网络内容的定位规则,是确定网络内容片段在网页上的位置的定位表达式。
12, 一种网络内容语义结构标注的装置,所述语义结构包括网络内容的语义注解、被注 解的信息的属性、语义注解之间的关系,其特征在于,所述装置包括-语义标志识别单元从网络页面上将携带可识别的语义标志的DOM节点识别出来,输 出候选语义节点列表关系参数计算单元计算网络页面DOM节点的关系参数,在确保关系参数没有违背的 条件下计算候选语义节点的关系参数语义结构管理单元使用语义节点的关系参数和语义节点列表,构建语义结构树,管理 内存中的语义结构树的存取操作,向其它单元提供语义结构的操作接口语义结构编辑单元管理用户操作界面,接受用户对语义结构编辑的请求,计算编辑后 的语义节点列表和关系参数语义结构描述文件管理单元从语义结构管理单元获取的语义结构树,转换成语义结构 描述文件,完成发布和共享过程;或者读取语义结构描述文件并转换成语义节点列表和关系 参数,完成语义结构加载过程。在这两个过程中都要与语义结构访问授权单元交互,以决定 用户对语义结构描述文件的共享操作模式。语义结构访问授权单元根据当前用户的角色和语义结构描述文件的权限属性,确定用 户对语义结构的共享操作模式。格式化指令生成单元根据内存中的语义结构生成网络页面内容格式化指令,管理指令 文件的存取。
全文摘要
本发明公开了一种网络内容语义结构标注的方法和装置,所述语义结构包括网络内容的语义注解、被注解的信息的属性、语义注解之间的关系。包括识别网络内容的语义结构;编辑语义结构;发布和共享语义结构描述文件,建立语义结构知识库;使用语义结构生成网页内容格式化指令文件。属于计算机科学技术领域语义网络分支,适用于网络信息提取、网络知识库建立、语义网络服务等应用领域。
文档编号G06F17/30GK101477571SQ20091010480
公开日2009年7月8日 申请日期2009年1月7日 优先权日2009年1月7日
发明者华天清, 齐勇挺 申请人:华天清;齐勇挺
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1