Fungsi XPath, XQuery dan XSLT
XPath, .
Manual Rujukan Fungsi
Akses |
|
|
Nama | Penerangan |
---|---|
fn:node-name(node) | Mengembalikan nama nod nod parameter. |
fn:nilled(node) | Mengembalikan nilai Boolean sama ada untuk menolak nod parameter. |
fn:data(item.item,...) | Menerima jujukan item dan mengembalikan jujukan nilai atom. |
| Mengembalikan nilai atribut base-uri nod semasa atau nod yang ditentukan. |
fn:document-uri(node) | Mengembalikan nilai atribut document-uri bagi nod yang ditentukan. |
Nama | Penerangan |
---|---|
| < 🎜>Contoh: ralat(fn:QName('http://example.com/test', 'err:toohigh'), 'Ralat: Harga terlalu tinggi')<🎜><🎜>Hasil: Memproses persekitaran secara luaran Mengembalikan http://example.com/test#toohigh dan rentetan "Ralat: Harga terlalu tinggi". <🎜> |
fn:trace(value,label) | digunakan untuk nyahpepijat pertanyaan. |
Fungsi yang berkaitan dengan nilai berangka
名称 | 说明 |
---|---|
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 |
Fungsi yang berkaitan dengan rentetan
Nama | Penerangan |
---|---|
fn : string(arg) | Mengembalikan nilai rentetan hujah. Parameter boleh menjadi nombor, nilai logik, atau set nod. Contoh: string(314) Hasil: "314" |
fn:codepoints-to-string(int,int, ...) | Mengembalikan rentetan berdasarkan urutan titik kod. Contoh: titik kod-ke-rentetan(84, 104, 233, 114, 232, 115, 101) Hasil: 'Thérèse' |
fn:string-to-codepoints(string) | Mengembalikan urutan titik kod berdasarkan rentetan. Contoh: string-to-codepoints("Thérèse") Keputusan: 84, 104, 233, 114, 232, 115, 101 |
fn:codepoint-equal(comp1,comp2) | Menurut perbandingan titik kod Unicode, jika nilai comp1 bersamaan dengan nilai comp2, maka benar dikembalikan. (http://www.w3.org/2005/02/xpath-functions/collation/codepoint), jika tidak palsu dikembalikan. |
| Jika comp1 kurang daripada comp2, kembalikan -1. Jika comp1 sama dengan comp2, 0 dikembalikan. Jika comp1 lebih besar daripada comp2, kembalikan 1. (Bergantung kepada peraturan perbandingan yang digunakan). Contoh: bandingkan('ghi', 'ghi') Keputusan: 0 |
fn:concat(rentetan, rentetan, ...) | Mengembalikan gabungan rentetan. Contoh: concat('XPath ','is ','FUN!') Hasil: 'XPath is FUN!' |
fn:string-join((string,string,...),sep) | Gunakan parameter sep sebagai pemisah untuk mengembalikan rentetan selepas parameter rentetan disambung. Contoh: string-join(('Kami', 'sedang', 'berseronok', 'seronok!'), ' ') Hasil: ' Kami berseronok! 🎜> Contoh: string-join(('We', 'are', 'having', 'fun!'))Hasil: 'Wearehavingfun!'Contoh: string-join((), 'sep')Hasil: '' |
| Mengembalikan nilai yang ditentukan bermula dari kedudukan mula Panjang subrentetan. Indeks aksara pertama ialah 1. Jika hujah len diabaikan, subrentetan dari kedudukan mula hingga akhir rentetan dikembalikan. Contoh: substring('Beatles',1,4)Hasil: 'Beat'Contoh: substring('Beatles',2)Keputusan: 'eatles' |
| Mengembalikan panjang rentetan yang ditentukan. Jika tiada hujah rentetan, mengembalikan panjang nilai rentetan nod semasa. Contoh: string-length('Beatles')Hasil: 7 |
| Alih keluar tempat kosong pada permulaan dan penghujung rentetan yang ditentukan, gantikan semua urutan kosong dalaman dengan satu, dan kemudian kembalikan hasilnya. Jika tiada parameter rentetan, nod semasa diproses. Contoh: normalize-space(' The XML ') Hasil: 'The XML' |
fn:normalize-unicode( ) | Lakukan penormalan Unikod. |
fn:huruf besar(rentetan) | Tukar parameter rentetan kepada huruf besar. Contoh: huruf besar('XML') Hasil: 'XML' |
fn:huruf kecil( rentetan) | Tukar parameter rentetan kepada huruf kecil. Contoh: huruf kecil('The XML') Hasil: 'the xml' |
fn:translate(string1, string2,string3) | Gantikan string2 dalam string1 dengan string3. Contoh: terjemah('12:30','30','45') Keputusan: '12:45' Contoh: terjemah('12: 30','03','54') Keputusan: '12:45' Contoh: terjemah('12:30','0123','abcd') Keputusan: 'bc:da' |
fn:escape-uri(stringURI,esc-res) | Contoh: escape -uri("http://example.com/test#car", true()) Keputusan: "http%3A%2F%2Fexample.com%2Ftest#car" Contoh: escape-uri("http://example.com/test#car", false()) Hasil: "http://example.com/test#car" Contoh: escape-uri ("http://example.com/~bébé", false()) Hasil: "http://example.com/~b%C3%A9b%C3% A9" |
fn:mengandungi(rentetan1,rentetan2) | Jika rentetan1 mengandungi rentetan2, kembalikan benar, sebaliknya kembalikan palsu. Contoh: mengandungi('XML','XM') Hasil: benar |
fn:bermula-dengan(rentetan1, string2) | Jika string1 bermula dengan string2, mengembalikan benar, jika tidak mengembalikan palsu. Contoh: bermula-dengan('XML','X') Hasil: benar |
fn:berakhir-dengan( string1,string2) | Jika string1 berakhir dengan string2, kembalikan benar, jika tidak kembalikan palsu. Contoh: berakhir-dengan('XML','X') Hasil: palsu |
fn:substring-before( string1,string2) | Mengembalikan subrentetan string2 sebelum ia muncul dalam string1. Contoh: substring-before('12/10','/') Hasil: '12' |
fn: substring-after(string1,string2) | Mengembalikan substring selepas string2 muncul dalam string1. Contoh: substring-after('12/10','/') Hasil: '10' |
fn: sepadan(rentetan,pattern) | Mengembalikan benar jika parameter rentetan sepadan dengan corak yang ditentukan, jika tidak mengembalikan palsu. Contoh: perlawanan("Merano", "lari") Keputusan: benar |
fn:replace(rentetan,corak,ganti) | Gantikan corak yang ditentukan dengan parameter ganti, dan Kembalikan hasil. Contoh: ganti("Bella Italia", "l", "*") Keputusan: 'Jadi**a Ita*ia' Contoh: ganti( "Bella Italia", "l", "") Keputusan: 'Bea Itaia' |
fn:tokenize(rentetan,corak) | Contoh: tokenize("XPath is fun", "s+") Hasil: ("XPath", "is", "fun") |
Fungsi untuk sebarangURI
Nama | Penerangan |
---|
名称 | 说明 |
---|---|
fn:resolve-uri(relative,base) |
fn:resolve-uri(relative,base)
名称 | 说明 |
---|---|
fn:boolean(arg) | 返回数字、字符串或节点集的布尔值。 |
fn:not(arg) | 首先通过 boolean() 函数把参数还原为一个布尔值。如果该布尔值为 false,则返回 true,否则返回 true。 例子:not(true()) 结果:false |
fn:true() | 返回布尔值 true。 例子:true() 结果:true |
fn:false() | 返回布尔值 false。 例子:false() 结果:false |
Nama | Perihalan | <🎜><🎜><🎜>fn:boolean(arg)<🎜><🎜>Kembalikan nombor , rentetan atau nilai Boolean untuk set nod. <🎜><🎜><🎜><🎜>fn:not(arg)<🎜><🎜><🎜>Mula-mula, gunakan fungsi boolean() untuk memulihkan parameter kepada nilai Boolean. Mengembalikan benar jika nilai boolean adalah palsu, benar sebaliknya. <🎜><🎜>Contoh: not(true())<🎜><🎜>Result: false<🎜><🎜><🎜><🎜><🎜>fn:true()<🎜><🎜>< 🎜>Mengembalikan boolean benar. <🎜><🎜>Contoh: benar()<🎜><🎜>Hasil: benar<🎜><🎜><🎜><🎜><🎜>fn:false()<🎜><🎜><🎜> Kembali boolean palsu. <🎜><🎜>Contoh: false()<🎜><🎜>Hasil: palsu<🎜><🎜><🎜><🎜><🎜>
---|
Nama | Perihalan |
---|---|
fn:dateTime(tarikh,masa) | Tukar parameter kepada tarikh dan masa. |
fn:years-from-duration(datetimedur) | Mengembalikan bahagian integer tahun bagi nilai argumen, dinyatakan dalam tatatanda leksikal standard. |
fn:months-from-duration(datetimedur) | Mengembalikan integer bahagian bulan bagi nilai parameter, dinyatakan dalam tatatanda leksikal standard. |
fn:days-from-duration(datetimedur) | Mengembalikan integer bahagian hari bagi nilai argumen, dinyatakan dalam tatatanda leksikal standard. |
fn:hours-from-duration(datetimedur) | Mengembalikan bahagian jam nilai parameter sebagai integer, dinyatakan dalam tatatanda leksikal standard. |
fn:minutes-from-duration(datetimedur) | Mengembalikan bahagian minit nilai parameter sebagai integer, dinyatakan dalam tatatanda leksikal standard. |
fn:seconds-from-duration(datetimedur) | Mengembalikan bahagian perpuluhan bahagian minit nilai parameter, dinyatakan dalam tatatanda leksikal standard. |
fn:year-from-dateTime(datetime) | Mengembalikan integer tahun bahagian nilai setempat parameter. Contoh: year-from-dateTime(xs:dateTime("2005-01-10T12:30-04:10")) Keputusan: 2005 |
fn:month-from-dateTime(datetime) | Mengembalikan integer bahagian bulan bagi nilai setempat parameter. Contoh: bulan-dari-tarikhMasa(xs:dateTime("2005-01-10T12:30-04:10")) Keputusan: 01 |
fn:day-from-dateTime(datetime) | Mengembalikan integer bahagian hari nilai setempat parameter. Contoh: day-from-dateTime(xs:dateTime("2005-01-10T12:30-04:10")) Hasil: 10 |
fn:hours-from-dateTime(datetime) | Mengembalikan bahagian jam nilai setempat parameter sebagai integer. Contoh: jam-dari-tarikhMasa(xs:dateTime("2005-01-10T12:30-04:10")) Keputusan: 12 |
fn:minutes-from-dateTime(datetime) | Mengembalikan integer bahagian minit nilai setempat parameter. Contoh: minit-dari-tarikhMasa(xs:dateTime("2005-01-10T12:30-04:10")) Keputusan: 30 |
fn:seconds-from-dateTime(datetime) | Mengembalikan nombor perpuluhan bahagian saat nilai setempat parameter. Contoh: saat-dari-tarikhMasa(xs:dateTime("2005-01-10T12:30:00-04:10")) Keputusan: 0 |
fn:timezone-from-dateTime(datetime) | Mengembalikan bahagian zon waktu parameter, jika ada. |
fn:year-from-date(date) | Mengembalikan integer yang mewakili tahun dalam nilai setempat parameter. Contoh: tahun-dari-tarikh(xs:tarikh("2005-04-23")) Keputusan: 2005 |
fn:month-from-date(date) | Mengembalikan integer yang mewakili bulan dalam nilai setempat parameter. Contoh: bulan-dari-tarikh(xs:tarikh("2005-04-23")) Keputusan: 4 |
fn: day-from-date(date) | Mengembalikan integer yang mewakili hari dalam nilai setempat parameter. Contoh: hari-dari-tarikh(xs:tarikh("2005-04-23")) Keputusan: 23 |
fn:timezone-from-date(date) | Mengembalikan bahagian zon waktu parameter, jika ada. |
fn:hours-from-time(time) | Mengembalikan integer yang mewakili bahagian jam bagi nilai setempat parameter. Contoh: jam-dari-masa(xs:time("10:22:00")) Hasil: 10 |
fn:minutes-from-time(time) | Mengembalikan integer yang mewakili bahagian minit nilai setempat parameter. Contoh: minit-dari-masa(xs:masa("10:22:00")) Keputusan: 22 |
fn:saat-dari-masa(masa) | Mengembalikan integer yang mewakili bahagian saat dalam nilai setempat parameter. Contoh: saat-dari-masa(xs:masa("10:22:00")) Keputusan: 0 |
fn:timezone-from-time(time) | Mengembalikan bahagian zon waktu parameter, jika ada. |
fn:adjust-dateTime-to-timezone(datetime,timezone) | Jika parameter zon waktu kosong, kembalikan dateTime tanpa zon waktu. Jika tidak dateTime dengan zon masa dikembalikan. |
fn:adjust-date-to-timezone(date,timezone) | Jika parameter zon waktu kosong, tarikh kembali tanpa zon waktu. Jika tidak, tarikh dengan zon masa dikembalikan. |
fn:laraskan-masa-ke-zon waktu(masa,zon waktu) | Jika parameter zon waktu kosong, masa tanpa zon waktu dikembalikan. Jika tidak, kembalikan masa dengan zon waktu. |
Fungsi yang berkaitan dengan QNames
Nama | Penerangan |
---|
名称 | 说明 |
---|---|
fn:QName() | |
fn:local-name-from-QName() | |
fn:namespace-uri-from-QName() | |
fn:namespace-uri-for-prefix() | |
fn:in-scope-prefixes() | |
fn:resolve-QName() |
Fungsi mengenai nod
名称 | 说明 |
---|---|
| 返回当前节点的名称或指定节点集中的第一个节点。 |
| 返回当前节点的名称或指定节点集中的第一个节点 - 不带有命名空间前缀。 |
| 返回当前节点或指定节点集中第一个节点的命名空间 URI。 |
fn:lang(lang) | 如果当前节点的语言匹配指定的语言,则返回 true。 例子:Lang("en") is true for <p xml:lang="en">...</p> 例子:Lang("de") is false for <p xml:lang="en">...</p> |
| 返回当前节点或指定的节点所属的节点树的根节点。通常是文档节点。 |
Fungsi yang berkaitan dengan jujukan
Fungsi am
Nama | Penerangan |
---|---|
fn:index-of((item,item,...),searchitem) | Mengembalikan urutan item yang sama dengan parameter searchitem Lokasi. Contoh: indeks-daripada ((15, 40, 25, 40, 10), 40) Keputusan: (2, 4) Contoh: indeks-dari (("a", "anjing", "dan", "a", "itik"), "a") Keputusan (1, 4) Contoh: indeks-dari ((15, 40, 25, 40, 10), 18) Keputusan: () |
fn:remove((item,item,. ..), kedudukan) | Mengembalikan urutan baharu yang dibina daripada parameter item - sambil memadamkan item yang ditentukan oleh parameter kedudukan. Contoh: alih keluar(("ab", "cd", "ef"), 0) Keputusan: ("ab", "cd", "ef") Contoh: remove(("ab", "cd", "ef"), 1) Hasil: ("cd", "ef") Contoh: remove( ("ab", "cd", "ef"), 4) Keputusan: ("ab", "cd", "ef") |
fn:empty(item,item,...) | Jika nilai parameter ialah jujukan kosong, ia akan mengembalikan benar, jika tidak ia akan mengembalikan false. Contoh: kosong(buang(("ab", "cd"), 1)) Hasil: palsu |
fn :exists(item,item,...) | Jika nilai parameter bukan jujukan kosong, kembalikan benar, jika tidak kembalikan palsu. Contoh: wujud(remove(("ab"), 1)) Hasil: palsu |
fn:distinct-values ((item,item,...),collation) | Mengembalikan nilai unik. Contoh: distinct-values((1, 2, 3, 1, 2)) Hasil: (1, 2, 3) |
fn:insert-before((item,item,...),pos,inserts) | Mengembalikan urutan baharu yang dibina oleh parameter item - sambil memasukkan sisipan pada kedudukan yang ditentukan oleh parameter pos Nilai parameter. Contoh: insert-before(("ab", "cd"), 0, "gh") Hasil: ("gh", "ab", "cd") Contoh: insert-before(("ab", "cd"), 1, "gh") Hasil: ("gh", "ab", "cd") Contoh: insert-before(("ab", "cd"), 2, "gh") Hasil: ("ab", "gh", "cd") Contoh: insert-before(("ab", "cd"), 5, "gh") Hasil: ("ab", "cd", "gh") |
fn:reverse((item,item,...)) | Mengembalikan tertib terbalik item yang ditentukan. Contoh: songsang(("ab", "cd", "ef")) Hasil: ("ef", "cd", "ab") Contoh: songsang(("ab")) Hasil: ("ab") |
fn:subsequence((item,item,...),start,len) | Mengembalikan kedudukan yang ditentukan oleh parameter mula dan mengembalikan jujukan item, jujukan Panjangnya ditentukan oleh parameter len. Kedudukan item pertama ialah 1. Contoh: seterusnya(($item1, $item2, $item3,...), 3) Hasil: ($item3,...) Contoh :subsequence(($item1, $item2, $item3, ...), 2, 2) Hasil: ($item2, $item3) |
fn:unordered((item,item,...)) | Kembalikan item dalam susunan yang ditentukan oleh pelaksanaan. |
Fungsi untuk menguji kapasiti jujukan
Nama | Penerangan |
---|
名称 | 说明 |
---|---|
fn:zero-or-one(item,item,...) | 如果参数包含零个或一个项目,则返回参数,否则生成错误。 |
fn:one-or-more(item,item,...) | 如果参数包含一个或多个项目,则返回参数,否则生成错误。 |
fn:exactly-one(item,item,...) | 如果参数包含一个项目,则返回参数,否则生成错误。 |
fn:zero-or-one(item,item ,...)
Mengembalikan parameter jika ia mengandungi sifar atau satu item, jika tidak menjana ralat.名称 | 说明 |
---|---|
fn:deep-equal(param1,param2,collation) | 如果 param1 和 param2 与彼此相等(deep-equal),则返回 true,否则返回 false。 |
fn:one-or-more(item,item,...)
名称 | 说明 |
---|---|
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,...) | 返回指定节点集中每个节点的数值的总和。 |
Nama | Penerangan | <🎜><🎜><🎜>fn:deep-equal(param1,param2 ,collation)<🎜><🎜>Mengembalikan benar jika param1 dan param2 adalah sama antara satu sama lain (deep-equal), jika tidak, mengembalikan false. <🎜><🎜><🎜><🎜><🎜><🎜>Jumlah fungsi<🎜><🎜>
---|
Nama | Penerangan | <🎜><🎜><🎜>fn:count((item,item,...)) <🎜><🎜>Mengembalikan bilangan nod. <🎜><🎜><🎜><🎜>fn:avg((arg,arg,...))<🎜><🎜>Mengembalikan purata nilai parameter. Contoh: purata((1,2,3)) Keputusan: 2<🎜><🎜><🎜><🎜>fn:max((arg,arg,...))<🎜><🎜>Mengembalikan parameter yang lebih besar daripada parameter lain. Contoh: maks((1,2,3)) Keputusan: 3 Contoh: max(('a', 'k')) Keputusan: 'k'<🎜><🎜><🎜><🎜>fn:min((arg,arg,...))<🎜><🎜>Mengembalikan parameter yang lebih kecil daripada parameter lain. Contoh: min((1,2,3)) Keputusan: 1 Contoh: min(('a', 'k')) Keputusan: 'a'<🎜><🎜><🎜><🎜>fn:sum(arg,arg,...)<🎜><🎜>Mengembalikan jumlah nilai setiap nod dalam nod yang ditentukan ditetapkan. <🎜><🎜><🎜><🎜>
---|
名称 | 说明 |
---|---|
fn:id((string,string,...),node) | Returns a sequence of element nodes that have an ID value equal to the value of one or more of the values specified in the string argument |
fn:idref((string,string,...),node) | Returns a sequence of element or attribute nodes that have an IDREF value equal to the value of one or more of the values specified in the string argument |
fn:doc(URI) | |
fn:doc-available(URI) | 如果 doc() 函数返回文档节点,则返回 true,否则返回 false。 |
|
Fungsi konteks
名称 | 说明 |
---|---|
fn:position() | 返回当前正在被处理的节点的 index 位置。 例子://book[position()<=3] 结果:选择前三个 book 元素 |
fn:last() | 返回在被处理的节点列表中的项目数目。 例子://book[last()] 结果:选择最后一个 book 元素 |
fn:current-dateTime() | 返回当前的 dateTime(带有时区)。 |
fn:current-date() | 返回当前的日期(带有时区)。 |
fn:current-time() | 返回当前的时间(带有时区)。 |
fn:implicit-timezone() | 返回隐式时区的值。 |
fn:default-collation() | 返回默认对照的值。 |
fn:static-base-uri() | 返回 base-uri 的值。 |