我遇到了这个 XPath 字符串...
courses[?(@.id==101)].students[?(@.id==111)]
我什至不确定它是否是有效的 XPath,因为“?” 和 '。' 被使用。而且它在许多在线 XPath 评估器中不起作用。
虽然,在 XPath 3 中,有一个查找运算符 ('?') 和一些 JSON 扫描功能。参考:https ://www.altova.com/training/xpath3/xpath-31#lookup-operator
所以,我想知道'?()'和'。是。
到目前为止,我猜测这个表达式被用来搜索 XML 中的 JSON 内容。
猜测 JSON 对象是这样的:
{
"courses":[
{
'id':'101',
'name':'Course 101',
'students':[
{
'id':'111',
'name':'Student 111'
}
]
}
]
}
简而言之,它是一个有效的 XPath 3 表达式吗?如果是,那么“?()”和“。”到底是什么?正在做?