gpt4 book ai didi

java - XPath 表达式语法验证

转载 作者:行者123 更新时间:2023-11-29 07:47:08 24 4
gpt4 key购买 nike

我目前正在使用 XPath 开发一个 Java 项目,由于我不是 XPath 专家,我需要找到一种方法来验证随机 XPath 表达式的语法,而不需要将它们与 XML 数据进行匹配。

我在网上发现了很多 XPath validator ,不幸的是它们都需要 XML 数据。

我的当务之急是验证以下表达式:

/cXML/Request/OrderRequest/OrderRequestHeader/Extrinsic/@name[NameOrder]/Name

我很感激对这个特定的有效性的评论...

最佳答案

“既然您不是 XPath 专家”,那么您在 XPath 表达式中犯的大部分错误可能不是语法错误而是语义错误。遗憾的是,XPath 表达式中的大多数错误都不会被检测为语法错误甚至运行时错误,而只会导致错误的答案。 (XPath 在这方面与正则表达式非常相似。)

你的例子就是一个很好的例子。它在语法上是有效的,但永远不会选择任何东西。这是因为它包含步骤 @name[NameOrder],该步骤选择所有具有 NameOrder 子元素的“name”属性。属性永远不会有 child ,所以没有什么能满足这个表达式。 Saxon 会给你一个警告,但这不是语法错误。

所以我认为您进行语法验证的方法不会对您有太大帮助。

关于java - XPath 表达式语法验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24729210/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com