论文部分内容阅读
XML是一种半结构化的数据描述语言,因其具备高可读性、跨平台性和可扩展等特性,在互联网领域被广泛应用。为了推动XML数据查询和处理的标准化,国际万维网组织W3C发布了XQuery语言用于描述XML数据的查询。由于XML数据具有的半结构化特性,因此对XML数据的查询相对复杂。所以,查询的优化技术引起众多学者的关注。Twig模式查询,又称为树模式查询,是XQuery的核心操作。由于Twig查询中往往存在一些多余的子查询,即查询请求本身具有冗余性。通过剪裁这些冗余分支和节点的方式,可以减小查询的计算量,提高查询的效率。XML Schema定义了XML文档中的数据类型,通过分析XML Schema,提取元素之间的结构约束关系,即Schema特征关系。参照Schema特征关系可以确定Twig模式中的冗余节点,删除冗余节点的过程即Twig模式最小化。本文将Schema特征关系扩展为必然孩子、必然父亲等基本特征关系和路径必然孩子、路径必然父亲等扩展特征关系,为Twig模式最小化提供更多机会。基于XML Schema文档设计Schema特征提取算法,用于判断Schema文档是否满足给定标签名节点间的特征关系。当Twig模式中的节点满足相应的特征关系时,才能对其进行优化,这些条件归纳成优化规则。本文将针对Twig模式中的两种节点类型(查询节点和逻辑节点)以及两种节点位置(中间节点和叶子节点)设计优化规则。本文设计并提出一种基于Schema特征的Twig模式最小化算法。算法根据当前Twig模式中待优化节点的类型和位置,选择相应的优化规则。调用Schema特征提取算法,判断规则中条件是否成立,随后进行优化操作。最后,针对算法设计了测试案例,实验结果证明算法的有效性,且算法提高了查询效率,并根据测试结果分析得出了影响Twig模式最小化算法的因素。