林正在讀規格的項目/文件和它說:以下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