XSLT 2.0, XPath 2.0, dan XQuery 1.0, berbagi fungsi perpustakaan yang sama.
fungsi Referensi
Awalan default untuk fungsi namespace adalah fn:
URI dari fungsi namespace adalah: http://www.w3.org/2005/xpath-functions
Tip: Fungsi sering disebut dengan fn yang: awalan, seperti fn: string() . Namun, karena fn: adalah awalan default namespace, nama fungsi tidak perlu diawali saat dipanggil.
Fungsi accessor
Nama | Deskripsi |
---|---|
fn:node- name( node ) | Mengembalikan simpul-nama node argumen |
fn: nilled( node ) | Mengembalikan nilai Boolean yang menunjukkan apakah simpul argumen nilled |
fn: data( item.item,... ) | Mengambil urutan item dan mengembalikan urutan nilai atom |
fn:base- uri() fn:base- uri( node ) | Mengembalikan nilai properti dasar-uri dari node saat ini atau yang ditentukan |
fn:document- uri( node ) | Mengembalikan nilai properti dokumen-uri untuk node tertentu |
Kesalahan dan Trace Fungsi
Nama | Deskripsi |
---|---|
fn: error() fn: error( error ) fn: error( error,description ) fn: error( error,description,error-object ) | Contoh: error(fn:QName('http://example.com/test', 'err:toohigh') , 'Error: Harga terlalu tinggi') Hasil: Pengembalian http://example.com/test#toohigh dan string "Error: Price is too high" dengan lingkungan pengolahan eksternal |
fn: trace( value,label ) | Digunakan untuk query men-debug |
Fungsi pada Nilai Numerik
Nama | Deskripsi |
---|---|
fn: number( arg ) | Mengembalikan nilai numerik dari argumen. Argumen bisa menjadi boolean, string, atau node-set Contoh: number('100') |
fn: abs( num ) | Mengembalikan nilai absolut dari argumen Contoh: abs(3.14) Contoh: abs(-3.14) |
fn: ceiling( num ) | Mengembalikan bilangan bulat terkecil yang lebih besar dari argumen nomor Contoh: ceiling(3.14) |
fn: floor( num ) | Mengembalikan bilangan bulat terbesar yang tidak lebih besar dari argumen nomor Contoh: floor(3.14) |
fn: round( num ) | Rounds jumlah argumen ke bilangan bulat terdekat Contoh: round(3.14) |
fn:round-half-to- even() | Contoh: round-setengah-to- even(0.5) Hasil: 0 Contoh: round-setengah-to- even(1.5) Contoh: round-setengah-to- even(2.5) |
Fungsi pada String
Nama | Deskripsi |
---|---|
fn: string( arg ) | Mengembalikan nilai string dari argumen. Argumen bisa menjadi nomor, boolean, atau node-set Contoh: string(314) |
fn:codepoints-to- string(( int,int,... ) ) | Menciptakan string dari urutan kode Unicode Standard poin Contoh: codepoints-to- string((84, 104, 233, 114, 232, 115, 101) ) |
fn:string-to- codepoints( string ) | Mengembalikan urutan Unicode poin kode standar dari sebuah string Contoh: string-to- codepoints("Th r se") |
fn:codepoint- equal( comp1,comp2 ) | Mengembalikan nilai true jika nilai comp1 sama dengan nilai comp2, menurut Unicode kode titik pemeriksaan (http://www.w3.org/2005/02/xpath-functions/collation/codepoint) , jika tidak maka kembali palsu |
fn: compare( comp1,comp2 ) fn: compare( comp1,comp2,collation ) | Mengembalikan -1 jika comp1 kurang dari comp2, 0 jika comp1 sama dengan comp2, atau 1 jika comp1 lebih besar dari comp2 (sesuai dengan aturan pemeriksaan yang digunakan) Contoh: compare('ghi', 'ghi') |
fn: concat( string,string,... ) | Mengembalikan gabungan dari string Contoh: concat('XPath ','is ','FUN!') |
fn:string- join( (string,string,...) ,sep) | Mengembalikan sebuah string dibuat dengan menggabungkan argumen tali dan menggunakan argumen September sebagai pemisah Contoh: STRING- join(('We', 'are', 'having', 'fun!') ,' ') Contoh: STRING- join(('We', 'are', 'having', 'fun!') ) Contoh: STRING- join(() , 'September') |
fn: substring( string,start,len ) fn: substring( string,start ) | Mengembalikan substring dari posisi awal dengan panjang tertentu. Indeks dari karakter pertama adalah 1. Jika panjang dihilangkan ia mengembalikan substring dari posisi awal sampai akhir Contoh: substring('Beatles',1,4) Contoh: substring('Beatles',2) |
fn:string- length( string ) fn:string- length() | Mengembalikan panjang string yang ditentukan. Jika tidak ada argumen string itu mengembalikan panjang nilai string dari node saat ini Contoh: STRING- length('Beatles') |
fn:normalize- space( string ) fn:normalize- space() | Menghapus terkemuka dan trailing spasi dari string yang ditentukan, dan menggantikan semua urutan internal ruang putih dengan satu dan mengembalikan hasilnya. Jika tidak ada argumen string melakukan hal yang sama pada node saat ini Contoh: normalize- space(' The XML ') |
fn:normalize- unicode() | |
fn:upper- case( string ) | Mengkonversi argumen string untuk huruf besar Contoh: huruf besar case('The XML') |
fn:lower- case( string ) | Mengkonversi argumen string untuk huruf kecil Contoh: lebih rendah untuk case('The XML') |
fn: translate( string1,string2,string3 ) | Mengkonversi string1 dengan mengganti karakter dalam string2 dengan karakter di string3 Contoh: translate('12:30','30','45') Contoh: translate('12:30','03','54') Contoh: translate('12:30','0123','abcd') |
fn:escape- uri( stringURI,esc-res ) | Contoh: escape- uri("http://example.com/test#car", true() ) Hasil: "http%3A%2F%2Fexample.com%2Ftest#car" Contoh: escape- uri("http://example.com/test#car", false() ) Contoh: melarikan diri-uri ("http://example.com/~b b ", false() ) |
fn: contains( string1,string2 ) | Mengembalikan nilai true jika string1 berisi string2, jika tidak maka kembali palsu Contoh: contains('XML','XM') |
fn:starts- with( string1,string2 ) | Mengembalikan nilai true jika string1 dimulai dengan string2, jika tidak maka kembali palsu Contoh: langkah awal yang with('XML','X') |
fn:ends- with( string1,string2 ) | Mengembalikan nilai true jika string1 berakhir dengan string2, jika tidak maka kembali palsu Contoh: ends- with('XML','X') |
fn:substring- before( string1,string2 ) | Mengembalikan awal string1 sebelum string2 terjadi di dalamnya Contoh: substring- before('12/10','/') |
fn:substring- after( string1,string2 ) | Mengembalikan sisa string1 setelah string2 terjadi di dalamnya Contoh: substring- after('12/10','/') |
fn: matches( string,pattern ) | Mengembalikan nilai true jika argumen string cocok dengan pola, jika tidak, ia mengembalikan palsu Contoh: matches("Merano", "ran") |
fn: replace( string,pattern,replace ) | Mengembalikan sebuah string yang dibuat dengan mengganti pola yang diberikan dengan mengganti argumen Contoh: replace("Bella Italia", "l" , "*") Contoh: replace("Bella Italia", "l" , "") |
fn: tokenize( string,pattern ) | Contoh: tokenize("XPath is fun", "\s+") Hasil: ("XPath", "is" , "fun") |
Fungsi untuk anyURI
Nama | Deskripsi |
---|---|
fn:resolve- uri( relative,base ) |
Fungsi pada Nilai Boolean
Nama | Deskripsi |
---|---|
fn: boolean( arg ) | Mengembalikan nilai boolean untuk angka, string, atau node-set |
fn: not( arg ) | Argumen pertama dikurangi nilai boolean dengan menerapkan boolean() fungsi. Mengembalikan benar jika nilai boolean adalah palsu, dan false jika nilai boolean benar Contoh: not(true() ) |
fn: true() | Mengembalikan nilai boolean true Contoh: true() |
fn: false() | Mengembalikan nilai boolean palsu Contoh: false() |
Fungsi pada Durasi, Tanggal dan Times
Fungsi Ekstraksi komponen pada Durasi, Tanggal dan Times
Nama | Deskripsi |
---|---|
fn: dateTime( date,time ) | Mengkonversi argumen ke tanggal dan waktu |
fn:years-from- duration( datetimedur ) | Mengembalikan integer yang mewakili komponen tahun dalam representasi leksikal kanonik dari nilai argumen |
fn:months-from- duration( datetimedur ) | Mengembalikan integer yang mewakili komponen bulan dalam representasi leksikal kanonik dari nilai argumen |
fn:days-from- duration( datetimedur ) | Mengembalikan integer yang mewakili komponen hari dalam representasi leksikal kanonik dari nilai argumen |
fn:hours-from- duration( datetimedur ) | Mengembalikan integer yang mewakili komponen jam dalam representasi leksikal kanonik dari nilai argumen |
fn:minutes-from- duration( datetimedur ) | Mengembalikan integer yang mewakili komponen menit dalam representasi leksikal kanonik dari nilai argumen |
fn:seconds-from- duration( datetimedur ) | Mengembalikan desimal yang mewakili komponen detik dalam representasi leksikal kanonik dari nilai argumen |
fn:year-from- dateTime( datetime ) | Mengembalikan integer yang mewakili komponen tahun di nilai lokal dari argumen Contoh: tahun-dari- dateTime(xs:dateTime("2005-01-10T12:30-04:10") ) |
fn:month-from- dateTime( datetime ) | Mengembalikan integer yang mewakili komponen bulan di nilai lokal dari argumen Contoh: bulan-dari- dateTime(xs:dateTime("2005-01-10T12:30-04:10") ) |
fn:day-from- dateTime( datetime ) | Mengembalikan integer yang mewakili komponen hari di nilai lokal dari argumen Contoh: hari-dari- dateTime(xs:dateTime("2005-01-10T12:30-04:10") ) |
fn:hours-from- dateTime( datetime ) | Mengembalikan integer yang mewakili komponen jam dalam nilai lokal dari argumen Contoh: jam-dari- dateTime(xs:dateTime("2005-01-10T12:30-04:10") ) |
fn:minutes-from- dateTime( datetime ) | Mengembalikan integer yang mewakili komponen menit di nilai lokal dari argumen Contoh: menit-dari- dateTime(xs:dateTime("2005-01-10T12:30-04:10") ) |
fn:seconds-from- dateTime( datetime ) | Mengembalikan desimal yang mewakili komponen detik dalam nilai lokal dari argumen Contoh: detik-dari- dateTime(xs:dateTime("2005-01-10T12:30:00-04:10") ) |
fn:timezone-from- dateTime( datetime ) | Mengembalikan waktu komponen zona argumen jika ada |
fn:year-from- date( date ) | Mengembalikan integer yang mewakili tahun di nilai lokal dari argumen Contoh: tahun-dari- date(xs:date("2005-04-23") ) |
fn:month-from- date( date ) | Mengembalikan integer yang mewakili bulan di nilai lokal dari argumen Contoh: bulan-dari- date(xs:date("2005-04-23") ) |
fn:day-from- date( date ) | Mengembalikan integer yang mewakili hari dalam nilai lokal dari argumen Contoh: hari-dari- date(xs:date("2005-04-23") ) |
fn:timezone-from- date( date ) | Mengembalikan waktu komponen zona argumen jika ada |
fn:hours-from- time( time ) | Mengembalikan integer yang mewakili komponen jam dalam nilai lokal dari argumen Contoh: jam-dari- time(xs:time("10:22:00") ) |
fn:minutes-from- time( time ) | Mengembalikan integer yang mewakili komponen menit di nilai lokal dari argumen Contoh: menit-dari- time(xs:time("10:22:00") ) |
fn:seconds-from- time( time ) | Mengembalikan integer yang mewakili komponen detik dalam nilai lokal dari argumen Contoh: detik-dari- time(xs:time("10:22:00") ) |
fn:timezone-from- time( time ) | Mengembalikan waktu komponen zona argumen jika ada |
fn:adjust-dateTime-to- timezone( datetime,timezone ) | Jika argumen zona waktu kosong, ia mengembalikan datetime tanpa zona waktu. Jika tidak, ia mengembalikan datetime dengan zona waktu |
fn:adjust-date-to- timezone( date ,timezone ) | Jika argumen zona waktu kosong, ia mengembalikan date tanpa zona waktu. Jika tidak, ia mengembalikan kencan dengan zona waktu |
fn:adjust-time-to- timezone( time ,timezone ) | Jika argumen zona waktu kosong, ia mengembalikan waktu tanpa zona waktu. Jika tidak, ia mengembalikan waktu dengan zona waktu |
Fungsi Terkait QNames
Nama | Deskripsi |
---|---|
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 pada Nodes
Nama | Deskripsi |
---|---|
fn: name() fn: name( nodeset ) | Mengembalikan nama node saat ini atau node pertama di node set tertentu |
fn:local- name() fn:local- name( nodeset ) | Mengembalikan nama node saat ini atau node pertama dalam node set tertentu - tanpa awalan namespace |
fn:namespace- uri() fn:namespace- uri( nodeset ) | Mengembalikan namespace URI dari node saat ini atau node pertama di node set tertentu |
fn: lang( lang ) | Mengembalikan nilai true jika bahasa node saat ini sesuai dengan bahasa dari bahasa tertentu Contoh: Lang("en") adalah benar untuk Contoh: Lang("de") adalah palsu untuk |
fn: root() fn: root( node ) | Mengembalikan akar pohon yang node saat ini atau yang ditentukan milik. Hal ini biasanya akan menjadi simpul dokumen |
Fungsi pada Urutan
Fungsi umum tentang Urutan
Nama | Deskripsi |
---|---|
fn:index- of( (item,item,...) ,searchitem) | Mengembalikan posisi dalam urutan item yang sama dengan argumen searchitem Contoh: Indeks-of ((15, 40, 25, 40, 10) , 40) Contoh: Indeks-of (("a", "dog" , "and" , "a" , "duck") , "a") Contoh: Indeks-of ((15, 40, 25, 40, 10) , 18) |
fn: remove( (item,item,...) ,position) | Mengembalikan urutan baru dibangun dari nilai argumen barang - dengan item yang ditentukan oleh posisi argumen dihapus Contoh: remove(("ab", "cd" , "ef") , 0) Contoh: remove(("ab", "cd" , "ef") , 1) Contoh: remove(("ab", "cd" , "ef") , 4) |
fn: empty( item,item,... ) | Mengembalikan nilai true jika nilai argumen IS urutan kosong, jika tidak maka kembali palsu Contoh: empty(remove(("ab", "cd") , 1)) |
fn: exists( item,item,... ) | Mengembalikan nilai true jika nilai argumen TIDAK urutan kosong, jika tidak maka kembali palsu Contoh: exists(remove(("ab") , 1)) |
fn:distinct- values( (item,item,...) ,collation) | Pengembalian hanya berbeda (different) nilai-nilai Contoh: distinct- values((1, 2, 3, 1, 2) ) |
fn:insert- before( (item,item,...) ,pos,inserts) | Mengembalikan urutan baru dibangun dari nilai argumen barang - dengan nilai argumen sisipan dimasukkan dalam posisi yang ditentukan oleh argumen pos Contoh: Insert before(("ab", "cd") , 0, "gh") Contoh: Insert before(("ab", "cd") , 1, "gh") Contoh: Insert before(("ab", "cd") , 2, "gh") Contoh: Insert before(("ab", "cd") , 5, "gh") |
fn: reverse( (item,item,...) ) | Mengembalikan urutan terbalik dari item tertentu Contoh: reverse(("ab", "cd" , "ef") ) Contoh: reverse(("ab") ) |
fn: subsequence( (item,item,...) ,start,len) | Mengembalikan urutan item dari posisi yang ditentukan oleh awal argumen dan melanjutkan untuk jumlah item yang ditentukan oleh argumen len. Item pertama terletak pada posisi 1 Contoh: subsequence(($item1, $item2, $item3,...) , 3) Contoh: subsequence(($item1, $item2, $item3, ...) , 2, 2) |
fn: unordered( (item,item,...) ) | Mengembalikan item dalam urutan tergantung implementasi |
Fungsi Itu Uji Kardinalitas dari Urutan
Nama | Deskripsi |
---|---|
fn:zero-or- one( item,item,... ) | Mengembalikan argumen jika mengandung nol atau satu item, jika tidak menimbulkan kesalahan |
fn:one-or- more( item,item,... ) | Mengembalikan argumen jika mengandung satu atau lebih item, jika tidak menimbulkan kesalahan |
fn:exactly- one( item,item,... ) | Mengembalikan argumen jika mengandung tepat satu item, jika tidak menimbulkan kesalahan |
Sama, Union, Intersection dan Kecuali
Nama | Deskripsi |
---|---|
fn:deep- equal( param1,param2,collation ) | Mengembalikan nilai true jika param1 dan param2 yang mendalam-sama satu sama lain, jika tidak maka kembali palsu |
Fungsi agregat
Nama | Deskripsi |
---|---|
fn: count( (item,item,...) ) | Mengembalikan jumlah node |
fn: avg( (arg,arg,...) ) | Mengembalikan rata-rata nilai argumen Contoh: avg((1,2,3) ) |
fn: max( (arg,arg,...) ) | Mengembalikan argumen yang lebih besar dari yang lain Contoh: max((1,2,3) ) Contoh: max(('a', 'k') ) |
fn: min( (arg,arg,...) ) | Mengembalikan argumen yang kurang dari yang lain Contoh: min((1,2,3) ) Contoh: min(('a', 'k') ) |
fn: sum( arg,arg,... ) | Mengembalikan jumlah dari nilai numerik dari setiap node dalam ditentukan simpul-set |
Fungsi yang Menghasilkan Urutan
Nama | Deskripsi |
---|---|
fn: id( (string,string,...) ,node) | Mengembalikan urutan node elemen yang memiliki nilai ID sama dengan nilai dari satu atau lebih dari nilai yang ditentukan dalam argumen string |
fn: idref( (string,string,...) ,node) | Mengembalikan urutan unsur atau atribut node yang memiliki nilai IDREF sama dengan nilai dari satu atau lebih dari nilai yang ditentukan dalam argumen string |
fn: doc( URI ) | |
fn:doc- available( URI ) | Mengembalikan nilai true jika doc() mengembalikan fungsi node dokumen, jika tidak maka kembali palsu |
fn: collection() fn: collection( string ) |
Fungsi konteks
Nama | Deskripsi |
---|---|
fn: position() | Mengembalikan posisi indeks node yang sedang diproses Contoh: // buku [ position() <= 3] |
fn: last() | Mengembalikan jumlah item dalam daftar node diproses Contoh: // buku [ last() ] |
fn:current- dateTime() | Mengembalikan datetime saat ini (with timezone) |
fn:current- date() | Mengembalikan tanggal (with timezone) |
fn:current- time() | Mengembalikan waktu saat ini (with timezone) |
fn:implicit- timezone() | Mengembalikan nilai zona implisit |
fn:default- collation() | Mengembalikan nilai pemeriksaan standar |
fn:static-base- uri() | Mengembalikan nilai dasar-uri |
Fungsi XSLT
Selain itu, ada adalah sebagai berikut built-in fungsi XSLT:
Nama | Deskripsi |
---|---|
current() | Mengembalikan node saat |
document() | Digunakan untuk mengakses node dalam dokumen XML eksternal |
element- available() | Tes apakah elemen tertentu didukung oleh prosesor XSLT |
format- number() | Mengkonversi angka ke string |
function- available() | Tes apakah fungsi tertentu didukung oleh prosesor XSLT |
generate- id() | Mengembalikan nilai string yang secara unik mengidentifikasi sebuah node tertentu |
key() | Mengembalikan simpul-set menggunakan indeks ditentukan oleh <xsl:key> elemen |
system- property() | Mengembalikan nilai properti sistem |
unparsed-entity- uri() | Mengembalikan URI dari suatu entitas unparsed |