XPath 在为遨游 XML 树并且选择一套元素节点的 XML 应用程序是无所不在的。在 XPath 质问处理,最重要的问题之一是怎么高效地检查在二 XPath 表情之间的抑制关系。为了从错综和复杂性出来,由众多的 XPath 特征引起了,我们在由节点测试组成的 XPath 表达式的经常使用的碎片上调查这个问题,孩子轴(/) ,后代轴(//) ,树枝([]) 并且标签通配符(*) 。优先的工作证明了同形技术能被用于检查的抑制。然而,同形是为抑制的足够然而并非必要的条件。为这碎片的特殊的班,同形算法归还假 negatives。处理这个问题,这篇论文建议二种抑制技术,调节同形和隐藏的调节同形,然后礼品为检查鸣算法抑制。试验性的结果证实建议算法的有实行可能和效率。电子增补材料这篇文章(doi:10.1007/s11390-007-9080-0 ) 的联机版本包含增补材料,它对授权用户可得到。
XPath is ubiquitous in XML applications for navigating XML trees and selecting a set of element nodes. In XPath query processing, one of the most important issues is how to efficiently check containment relationship between two XPath expressions. To get out of the intricacy and complexity caused by numerous XPath features, we investigate this issue on a frequently used fragment of XPath expressions that consists of node tests, the child axis (/), the descendant axis (//), branches ([]) and label wildcards (*). Prior work has shown that homomorphism technology can be used for containment checking. However, homomorphism is the sufficient but not necessary condition for containment. For special classes of this fragment, the homomorphism algorithm returns false negatives. To address this problem, this paper proposes two containment techniques, conditioned homomorphism and hidden conditioned homomorphism, and then presents sound algorithms for checking containment. Experimental results confirm the practicability and efficiency of the proposed algorithms.