前驅軸的position

2021-09-02 03:10:27 字數 641 閱讀 1647

關於前驅軸和position()已經討論過不少了,可總是意猶未盡哪!實在是它們隱含了太多東西。

xml原檔案:張三

20

李四 21

王五 22

3

xslt檔案:

轉換後的結果:

張三  1

李四  2

王五  3

王五噢,看到了什麼,當我們用for-each來輸出的時候,張三在前驅軸的position明明是1的,但我們直接用preceding-sibling::*[1]來輸出,卻發現position()為1的是王五。

這到底是為什麼?

只能事後諸葛馬後炮地這樣來理解,當尋找前驅軸時,是從當前節點向xml文件的源頭來找的,所以第乙個找到的應該是王五,然而當用for-each來對前驅軸的所有節點輸出時,前驅軸已經作為乙個節點集合來處理了,這時的position()來標誌節點的當前位置,只是乙個累加的結果而已。

我們試著改變xslt檔案:

輸出結果為:

王五  1

王五所以,可以看出,在[ ]中的position()應該是真正的節點在節點集中的位置,而處在for-each 迴圈中的position()則是乙個累加的效果而已。

詳細頁面:

BST的前驅和後繼

bst 中序遍歷是 從小到大排序的 1.查詢後繼 找第乙個比他大的數 根據bst的 左小右大性質 1.若該節點有右孩子,則找 該右子數的最下值 2.如該節點無右孩子,不斷尋找祖先p1 如果p1的父節點g1 且g1.letfchild p1 則找到了第乙個比他大的數 若無則為空 2.無右孩子 斜線的拐...

機械鍵盤之黑軸 青軸 茶軸 紅軸 白軸的區別

如果說效能,目前臺機系統和筆記本系統 超極本系統都已經比較接近,現在玩台機的,一般是看中自己個性化的配置,以及一些經典的外設,包括顯示器 機箱 鍵盤和滑鼠。現在隨意進入乙個外設論壇,鍵盤區幾乎都在孜孜不倦的討論機械鍵盤,機械鍵盤相對於現在鍵盤技術發展,似乎有些 倒退 但實際使用感覺和效果來說,這種回...

3軸 6軸 9軸IMU的區別

由於地球重力場相當於已知資訊,因而當載體處於平穩運動時,完全可以依靠採集自加表的測量資訊來推算得到載體除了航向外的其它兩個姿態資訊,而若將加表與其它感測器如磁力計結合使用,就能實現在多種運動情況下測得完整的載體姿態資訊。1 磁力計的基本工作原理如下 設磁力計三軸磁分量的資料為 mbx mby mbz...