论文部分内容阅读
XML逐渐成为了Internet上数据表示和数据交换的新标准,并且已经出现了大量与XML数据流相关的应用。已有的XML上的基于关键字的查询研究主要是针对XML文档和XML数据库。随着XML数据流相关应用的大量出现,XML数据流上基于关键字的查询已成为一个新的研究方向。在XML数据流上执行关键字查询时,应该尽可能地返回较有意义的查询结果,即在查询过程中考虑部分语义,并通常需要进行Top-K处理。
由于基于路径的XML上的查询比较复杂、且对用户的要求较高,研究者们提出了基于关键字的查询,为用户提供了一个简单、方便、易用的查询接口。但大量的工作都是在XML文档及XML数据库上的,由于XML数据流自身的特点,这些XML上的研究工作在XML数据流上并不适用。本文针对XML数据流,研究在其上的关键字语义查询及相应的Top-K处理。论文主要工作如下:
1.为了表示较有意义的查询结果,文中给出了有意义、且相关的最小公共祖先节点(MRLCA)的定义,并将其作为查询结果的根节点。MKLCA是一个实体节点,具有一定的实际意义,且其下的关键字匹配节点之间具有高度的关联性。同时指出,在查找MRLCA的过程中,利用已知的DTD结构,对节点进行分类,可以更加有效地判断一个查询结果中各个关键字匹配节点之间是否是相互关联的。
2.给出了有意义、且节点相互关联的连接树(MRCT)的定义,并将MRCT作为关键字查询的查询结果。MRCT是一棵以MRLCA为根的子树,其中包含了各个关键字匹配节点,此外还包含了实体节点的属性,以使得查询结果更有实际意义。
3.给出了一个有效的MRLCA提取算法,此算法根据给定的关键字集合,使用基于栈的方法从XML数据流上查找得到各个关键字匹配节点,然后检查每组关键字匹配节点的相关性,并提取MRLCA。根据MRLCA,再生成相应的MRCT作为候选结果,为下一步的Top-K处理作准备。
4.给出了三个影响查询结果排序的因素,并在此基础上,采用基于欧氏距离的处理方法,综合考虑此三方面因素,在结果集上进行Top-K处理,以取得与关键字查询最相关、且有意义的前K个结果。