2013-01-16 23 views
2

的Xquery/Xpath的是什麼意思/ *:的Xquery/Xpath的是什麼意思/ *:

(:這裏$圖案看起來像<pattern match="something" replace="else" /> :)

declare function local:transform($text as text(), $patterns as element(pattern)*) { 
    if(not($patterns)) then 
     $text 
    else 
     let $patternsremaining := $patterns[position() > 1], 
      $modifiedtext := replace($text, $pattern/@match, $pattern/@replace) 
     return 
     if($local:language="French" and not($patterns[@match='le'])) then (
      local:transform($modifiedtext, ($patternsremaining, <pattern match="Londres" replace="London" />)) 
    ) 
     else(
     local:transform($modifiedtext, $patternsremaining) 
    ) 
}; 
+0

它是根節點的孩子。但是它與你發佈的來源有什麼關係?沒有/ * – BeniBela

+0

@BeniBela標記引擎隱藏它。我編輯了這個問題來暴露它。 –

+0

@Ross Patterson:看起來像/ *根本不在那裏。 – BoltClock

回答

2
/* 

是一個XPath表達式,用於選擇根(文檔)節點的所有元素子元素。

它等效於:

/child::* 

正如任何良好的XML文檔必須只有一個頂部元件(文檔節點的子),上述兩個表達式選擇恰好一個要素 - 所述頂部元件的XML文檔。