2

Xquery / Xpath /* の意味は何ですか:

(: ここで $patterns は次のように<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)
      )
};
4

1 に答える 1

2
/*

ルート (ドキュメント) ノードのすべての要素の子を選択する XPath 式です

これは以下と同等です:

/child::*

適切な形式の XML ドキュメントには最上位の要素 (ドキュメント ノードの子) が 1 つだけ含まれている必要があるため、上記の 2 つの式は、XML ドキュメントの最上位の要素を 1 つだけ選択します。

于 2013-01-16T13:31:45.403 に答える