XPath、XQuery、および XSLT 関数
XPath、
関数リファレンスマニュアル
|
|
| 関数名前空間のデフォルトのプレフィックスは fn です:
Name
fn:node-name (node ) | パラメータノードのノード名を返します。 |
---|---|
fn:nilled(node) | パラメータノードを拒否するかどうかのブール値を返します。 |
fn:data(item.item,...) | 項目のシーケンスを受け取り、アトミック値のシーケンスを返します。 |
| fn:document-uri(node)指定されたノードの document-uri 属性の値を返します。 |
エラーとトレース関数 |
名前
| fn:trace(value,label) | はクエリをデバッグするために使用されます。 |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
名前 | 説明 |
---|---|
fn:number(arg) | パラメータの値を返します。パラメータにはブール値、文字列、またはノード セットを使用できます。 例:number('100') 結果:100 |
fn:abs(num) | パラメータの絶対値を返します。 例: abs(3.14) 結果: 3.14 例: abs(-3.14) 結果: 3.14 |
fn:ceiling(num) | num 引数より大きい最小の整数を返します。 例: Ceiling(3.14) 結果: 4 |
fn:floor(num) | num パラメータ以下の最大の整数を返します。 例: Floor(3.14) 結果: 3 |
fn:round(num) | num パラメーターを最も近い整数に丸めます。 例:round(3.14) 結果:3 |
fn:round-half-to-even() | 例:round-half-to-even(0.5) 結果:0 例:round-half-to-even(1.5) 結果:2 例:round-half-to-even(2.5) 結果:2 |
文字列に関する関数
Name | Description |
---|---|
fn:string(arg) | パラメータの文字列値を返します。パラメータには、数値、論理値、またはノードのセットを指定できます。 例: string(314) 結果: "314" |
fn:codepoints-to-string(int,int,...) | コードポイントシーケンスに基づいて文字列を返します。 例: codepoints-to-string(84, 104, 233, 114, 232, 115, 101) 結果: 'Thérèse' |
fn: string-to-codepoints(string) | によるto String は、コード ポイントのシーケンスを返します。 例: string-to-codepoints("Thérèse") 結果: 84, 104, 233, 114, 232, 115, 101 |
fn:codepoint-equal(comp1,comp2) | によるとUnicode コード ポイントの比較。comp1 の値が comp2 の値と等しい場合に true を返します。 (http://www.w3.org/2005/02/xpath-functions/collation/codepoint)、それ以外の場合は false が返されます。 |
| comp1 が comp2 より小さい場合、-1 を返します。 comp1 が comp2 と等しい場合、0 が返されます。 comp1 が comp2 より大きい場合、1 を返します。 (使用される比較ルールによって異なります)。 例: Compare('ghi', 'ghi') 結果: 0 |
fn:concat(string,string,...) | 文字列の連結を返します。 例: concat('XPath ','is ','FUN!') 結果: 'XPath は楽しい!' |
fn:string-join((string,string,...), sep) | 文字列パラメータと連結された文字列を返すには、区切り文字として sep パラメータを使用します。 例: string-join(('私たち', 'are', 'having', 'fun!'), ' ') 結果: ' 私たちは楽しんでいます! ' 例: string-join(( 'We'、'are'、'having'、'fun!')) 結果: 'Wearehavingfun!' 例: string-join((), 'sep') 結果:'' |
| 開始位置から指定された長さの部分文字列を返します。最初の文字のインデックスは 1 です。 len 引数を省略した場合は、文字列の開始位置から終了位置までの部分文字列が返されます。 例: substring('Beatles',1,4) 結果: 'Beat' 例: substring('Beatles',2) 結果: 'eatles' |
| 指定された文字列の長さを返します。文字列引数がない場合は、現在のノードの文字列値の長さを返します。 例: string-length('Beatles') 結果: 7 |
| 指定された文字列の先頭と末尾の空白を削除し、すべての内部空白シーケンスを置き換えます。 1 つを選択し、結果を返します。文字列パラメータがない場合は、現在のノードが処理されます。 例: Normalize-space(' The XML ') 結果: 'The XML' |
fn:normalize-unicode() | Unicode 正規化を実行します。 |
fn:upper-case(string) | 文字列パラメータを大文字に変換します。 例: upper-case('The XML') 結果: 'THE XML' |
fn: lower-case(string) | 文字列パラメータを小文字に変換します。 例: lower-case('The XML') 結果: 'the xml' |
fn:translate(string1,string2,string3) | string1 の string2 を string3 に置き換えます。 例:translate('12:30','30','45') 結果:'12:45' 例:translate('12:30','03','54') 結果: '12:45' 例: translation('12:30','0123','abcd') 結果: 'bc:da' |
fn:escape-uri(stringURI, esc-res) | 例:escape-uri("http://example.com/test#car", true()) 結果:"http%3A%2F%2Fexample.com%2Ftest#car" 例:escape-uri("http://example.com/test#car", false()) 結果:"http://example.com/test#car" 例:escape-uri ("http://example.com/~bébé", false()) 結果: "http://example.com/~b%C3%A9b%C3%A9" |
fn:contains (string1,string2) | string1 に string2 が含まれる場合は true を返し、それ以外の場合は false を返します。 例: contains('XML','XM') 結果: true |
fn:starts-with(string1,string2) | string1 が string2 で始まる場合は true を返し、それ以外の場合は false を返します。 例:starts-with('XML','X') 結果:true |
fn:ends-with(string1,string2) | string1がstring2で終わる場合はtrueを返し、それ以外の場合はReturn間違い。 例: opens-with('XML','X') 結果: false |
fn:substring-before(string1,string2) | string1 に出現する前の string2 の部分文字列を返します。 例: substring-before('12/10','/') 結果: '12' |
fn:substring-after(string1,string2) | string1 に出現した後に string2 を返します。部分文字列。 例: substring-after('12/10','/') 結果: '10' |
fn:matches(string,pattern) | 文字列パラメータが指定されたパターンと一致する場合、その場合は true を返し、それ以外の場合は false を返します。 例:matches("Merano", "ran") 結果: true |
fn:replace(string,pattern,replace) | 指定されたパターンをreplaceパラメータで置換し、結果を返します。 例: replace("Bella Italia", "l", "*") 結果: 'Be**a Ita*ia' 例: replace("Bella Italia", "l", "") 結果: 'Bea Itaia' |
fn:tokenize(string,pattern) | 例: tokenize("XPath is fun", "s+") 結果: ("XPath", "is" 、「楽しい」) |
anyURIの関数
名前 | 説明 |
---|---|
fn:resolve-uri(relative,base) |
ブール関数について値
説明 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
数値、文字列、またはノードのセットのブール値を返します。 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
まず、boolean() 関数を使用してパラメータをブール値に復元します。ブール値が false の場合は true、それ以外の場合は true を返します。 例: not(true())結果: false | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ブール値 true を返します。 例: true()結果: true | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ブール値 false を返します。 例: false()結果: false |
Name | Description |
---|---|
fn:dateTime(date,time) | パラメータの変換日付と時刻まで。 |
fn:years-from-duration(datetimedur) | 標準の字句表記で表現された、パラメータ値の年の部分の整数を返します。 |
fn:months-from-duration(datetimedur) | 標準の字句表記で表現された、パラメータ値の月の部分の整数を返します。 |
fn:days-from-duration(datetimedur) | 標準の語彙表記で表現された、パラメータ値の日数部分の整数を返します。 |
fn:hours-from-duration(datetimedur) | パラメーター値の時間の部分を、標準の字句表記で表現された整数として返します。 |
fn: minutes-from-duration(datetimedur) | 引数値の分の部分を、標準の字句表記で表現された整数として返します。 |
fn:seconds-from-duration(datetimedur) | 標準語彙表記で表現された、パラメーター値の分の部分の 10 進数を返します。 |
fn:year-from-dateTime(datetime) | パラメータのローカル値の年の部分の整数を返します。 例: year-from-dateTime(xs:dateTime("2005-01-10T12:30-04:10")) 結果: 2005 |
fn:month-from-dateTime(datetime) | パラメータのローカル値の月の部分の整数を返します。 例: month-from-dateTime(xs:dateTime("2005-01-10T12:30-04:10")) 結果: 01 |
fn:day-from-dateTime(datetime) | パラメータのローカル値の日の部分の整数を返します。 例: day-from-dateTime(xs:dateTime("2005-01-10T12:30-04:10")) 結果: 10 |
fn:hours-from-dateTime(datetime) | 引数のローカル値の時間の部分を整数として返します。 例: hours-from-dateTime(xs:dateTime("2005-01-10T12:30-04:10")) 結果: 12 |
fn: minutes-from-dateTime(datetime) | 引数のローカル値の分の部分の整数を返します。 例: minutes-from-dateTime(xs:dateTime("2005-01-10T12:30-04:10")) 結果: 30 |
fn:seconds-from-dateTime(datetime) | パラメータのローカル値の秒部分を 10 進数で返します。 例: minutes-from-dateTime(xs:dateTime("2005-01-10T12:30:00-04:10")) 結果: 0 |
fn:timezone-from-dateTime(datetime ) | パラメーターのタイムゾーン部分が存在する場合、それを返します。 |
fn:year-from-date(date) | パラメータのローカル値で年を表す整数を返します。 例: year-from-date(xs:date("2005-04-23")) 結果: 2005 |
fn:month-from-date(date) | 戻りパラメータのローカル値月を表す整数。 例: month-from-date(xs:date("2005-04-23")) 結果: 4 |
fn:day-from-date(date) | 戻りパラメータのローカル値日を表す整数。 例: day-from-date(xs:date("2005-04-23")) 結果: 23 |
fn:timezone-from-date(date) | タイムゾーン部分を返しますパラメータが存在する場合。 |
fn:hours-from-time(time) | パラメータのローカル値の時間の部分を表す整数を返します。 例: hours-from-time(xs:time("10:22:00")) 結果: 10 |
fn: minutes-from-time(time) | 戻りパラメータのローカル値分の部分を表す整数。 例: minutes-from-time(xs:time("10:22:00")) 結果: 22 |
fn:秒からの時間(time) | 戻りパラメータのローカル値2 番目の部分を表す整数。 例: minutes-from-time(xs:time("10:22:00")) 結果: 0 |
fn:timezone-from-time(time) | タイムゾーン部分を返しますパラメータが存在する場合。 |
fn:adjust-dateTime-to-timezone(datetime,timezone) | timezone パラメーターが空の場合は、タイムゾーンなしで dateTime を返します。それ以外の場合は、タイムゾーンを含む dateTime が返されます。 |
fn:adjust-date-to-timezone(date,timezone) | timezone パラメーターが空の場合、タイムゾーンなしの日付が返されます。それ以外の場合は、タイムゾーンを含む日付が返されます。 |
fn:adjust-time-to-timezone(time,timezone) | timezone パラメーターが空の場合、タイムゾーンなしの時間が返されます。それ以外の場合は、タイムゾーン付きの時刻を返します。 |
QNamesに関連する関数
Name | Description |
---|---|
fn:QName() | |
fn:local-name-from - Q名前() | |
fn:namespace-uri-from-QName() | |
fn:namespace-uri-for-prefix() | |
fn:in-scope-prefixes() | |
fn:resolve-QName() |
ノードの機能について
名前 | 説明 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 現在の名前または呼称を返しますノード ノード セット内の最初のノード。 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 現在のノードの名前、または指定されたノードセット内の最初のノードの名前を名前なしで返します。スペース接頭語。 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 現在のノードまたは指定されたノードセット内の最初のノードの名前空間 URI を返します。 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fn:lang(lang) | 現在のノードの言語が指定された言語と一致する場合、true を返します。 例: Lang("en") は次の場合に true <p xml:lang="en">...</p> 例: Lang("de") は、次の場合に false です。 <p xml:lang=ja 指定されたノードが属するノードまたはノード ツリーのルート ノード。通常はドキュメント ノードです。 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
名前 | 説明 |
---|---|
fn:index-of((item,item,...),searchitem) | Return 位置searchitem パラメーターと等しい項目のシーケンス内。 例: インデックスの ((15, 40, 25, 40, 10), 40) 結果: (2, 4) 例: インデックスの (("a", "dog", "and ", "a", "duck"), "a") 結果 (1, 4) 例:index-of ((15, 40, 25, 40, 10), 18) 結果: ( ) |
fn:remove((item,item,...),position) | positionパラメータで指定された項目を削除しながら、itemパラメータによって構築された新しいシーケンスを返します。 例:remove(("ab", "cd", "ef"), 0) 結果:("ab", "cd", "ef") 例:remove(("ab", "cd", "ef"), 1) 結果: ("cd", "ef") 例: Remove(("ab", "cd", "ef"), 4) 結果: ("ab", "cd", "ef") |
fn:empty(item,item,...) | パラメータ値が空のシーケンスの場合は true を返し、それ以外の場合は false を返します。 例: empty(remove(("ab", "cd"), 1)) 結果: false |
fn:exists(item,item,...) | パラメータ値の場合is not シーケンスが空の場合は true を返し、それ以外の場合は false を返します。 例:exists(remove(("ab"), 1)) 結果: false |
fn:distinct-values((item,item,...),collation) | return unique異なる価値観。 例: unique-values((1, 2, 3, 1, 2)) 結果: (1, 2, 3) |
fn:insert-before((item,item,... ),pos,inserts) | item パラメーターによって構築された新しいシーケンスを返し、pos パラメーターによって指定された位置に inserts パラメーターの値を挿入します。 例: insert-before(("ab", "cd"), 0, "gh") 結果: ("gh", "ab", "cd") 例: insert-before(( "ab", "cd"), 1, "gh") 結果: ("gh", "ab", "cd") 例: insert-before(("ab", "cd"), 2, "gh") 結果: ("ab", "gh", "cd") 例: insert-before(("ab", "cd"), 5, "gh") 結果("ab", "cd", "gh") |
fn:reverse((item,item,...)) | 指定された項目を逆順で返します。 例: reverse(("ab", "cd", "ef")) 結果: ("ef", "cd", "ab") 例: reverse(("ab")) 結果: ("ab") |
fn:subsequence((item,item,...),start,len) | startパラメータで指定された位置にある項目シーケンスを返します。シーケンスの長さはlenパラメータで指定されます。最初の項目の位置は 1 です。 例: subsequence(($item1, $item2, $item3,...), 3) 結果: ($item3,...) 例: subsequence(($item1, $item2, $item3) , ...), 2, 2) 結果: ($item2, $item3) |
fn:unowned((item,item,...)) | によって決定された順序でアイテムを返します。実装 。 |
シーケンス容量をテストする関数
名前 | 説明 |
---|---|
fn:zero-or-one(item,item,...) | 引数に0または1が含まれている場合プロジェクトの場合はパラメータが返されます。それ以外の場合はエラーが生成されます。 |
fn:one-or-more(item,item,...) | パラメータに 1 つ以上の項目が含まれている場合はパラメータを返し、それ以外の場合はエラーが生成されます。 |
fn:exactly-one(item,item,...) | パラメータに項目が含まれている場合はパラメータを返し、それ以外の場合はエラーが生成されます。 |
Equals、Union、Intersection、Except
名前 | 説明 |
---|---|
fn:deep-equal(param1,param2,collation) | If param1 and互いに一貫している待機 (deep -equal)、true を返し、それ以外の場合は false を返します。 |
Total関数
名前 | 説明 |
---|---|
fn:count((item,item,...)) | ノードの数を返します。 |
fn:avg((arg,arg,...)) | パラメータ値の平均を返します。 例: avg((1,2,3)) 結果: 2 |
fn:max((arg,arg,...)) | 他のパラメータより大きいパラメータを返します。 例: max((1,2,3)) 結果: 3 例: max(('a', 'k')) 結果: 'k' |
fn:min((arg,arg,...)) | 他のパラメータよりも小さいパラメータを返します。 例: min((1,2,3)) 結果: 1 例: min(('a', 'k')) 結果: 'a' |
fn:sum(arg,arg,...) | 指定されたノードセット内の各ノードの値の合計を返します。 |
シーケンスを生成する関数
名前 | 説明 |
---|---|
fn:id((string,string,...),node) | 等しいID値を持つ要素ノードのシーケンスを返します文字列引数で指定された 1 つ以上の値に代入します |
fn:idref((string,string,...),node) | 文字列引数で指定された 1 つ以上の値の値と等しい IDREF 値 |
fn:doc(URI) | |
fn:doc-available(URI) | If the doc( ) 関数はドキュメント ノードを返し、true を返します。それ以外の場合は false を返します。 |
|
コンテキスト関数
名前 | 説明 |
---|---|
fn :position() | 現在処理中のノードのインデックス位置を返します。 例: //book[position()<=3] 結果: 最初の 3 つの本の要素を選択します |
fn:last() | 処理されたノード リスト内のアイテムの数を返します。 例: //book[last()] 結果: 最後の本の要素を選択します |
fn:current-dateTime() | 現在の dateTime (タイムゾーン付き) を返します。 |
fn:current-date() | 現在の日付 (タイムゾーン付き) を返します。 |
fn:current-time() | 現在の時刻 (タイムゾーン付き) を返します。 |
fn:implicit-timezone() | 暗黙的なタイムゾーンの値を返します。 |
fn:default-collation() | デフォルトの照合順序の値を返します。 |
fn:static-base-uri() | base-uriの値を返します。 |