林正在读规格的项目/文件和它说:以下XPath片段的含义是什么?
你可能集中在以下XPath片段: P :: = A | * | p/p | p // p | p [q]
什么意思是p :: = A?
林正在读规格的项目/文件和它说:以下XPath片段的含义是什么?
你可能集中在以下XPath片段: P :: = A | * | p/p | p // p | p [q]
什么意思是p :: = A?
我认为它所指的是在这种情况下支持XPath的一个子集。
p ::= ...
是BNF说p
由以下语法定义。
我假设A
和q
的定义类似,虽然你没有给出上下文。我猜A
是一个元素名称,而q
是一个布尔表达式(不过这是定义的)。
这mearly说的XPath支持的子集如下:
A
)*
p/p
)p//p
)p[q]
)[BNF](http://en.wikipedia.org/wiki/Backus%E2%80%93Naur_Form)记录。 – MattH 2013-03-25 14:28:29
所提供的表达:
A | * | p/p | p//p | p[q]
是工会由各个子表达式中选择的节点的。
它选择命名A
任何子元素加上任何子元素加上任何p
元件是一个p
元件,它是当前(初始上下文)的子节点的子节点,以及任何p
元件,其的后代p
元素是当前节点的子元素,加上具有q
子元素的(当前节点的)任何p
子元素。
它相当于短:
* | p//p
的具体问题,问:
什么是
p :: = A
意思?
XPath表达式
A
选择被命名A
当前节点的所有子元素。
':: ='在XPath中没有任何意义。也许作者试图给一个XPath片段命名? – 2013-03-24 09:50:20
无论如何,“XPath片段”应该是什么意思?我从未见过这句话。也许:“一个XPath(子)表达式”? – 2013-03-24 16:05:27