查询多个元素而不指定元素名称

时间:2012-01-04 18:43:31

标签: xpath xquery

这可能是一个愚蠢的问题,但是可以使用XPath进行查询而无需指定元素名称吗? 通常我会写类似

的东西
//ElementName[@id = "some_id"]

但问题是我有很多(大约40个)具有id属性的不同元素类型,如果id适合,我希望能够返回任何元素类型。但我不想单独为每种类型打电话。是否可以一次搜索所有这些,无论名称如何?

我在XQuery脚本中使用它,如果它提供任何帮助。

2 个答案:

答案 0 :(得分:5)

使用*代替名称//*[@id = "some_id"]

答案 1 :(得分:1)

直接查看@id元素可能更有效 - // *可以工作,但最初会返回文档中的每个节点然后过滤!

当然,这在小文件中可能无关紧要。但这是另一种选择:

//@id[.="some_id"]/..