我想选择具有给定命名空间(前缀)的文档中最顶层的元素。
更具体地说:我的 XML 文档要么以 /html/body(在 XHTML 命名空间中)开头,要么以特定命名空间中的多个元素之一开头。我实际上想删除 /html/body 并只返回正文内容或整个根命名空间元素。
在 XPath 2.0 和 XQuery 1.0 中,您可以使用以下命令针对命名空间前缀进行测试范围内前缀() http://www.w3.org/TR/xquery-operators/#func-in-scope-prefixes谓词中的函数。
例如
//*[in-scope-prefixes(.)='html']
如果你不能使用 v2,在 XPath 1.0 中你可以使用命名空间-uri() http://www.w3.org/TR/xpath#function-namespace-uri函数来测试命名空间本身。
例如
//*[namespace-uri()='http://www.w3c.org/1999/xhtml']
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)