XPath, XQuery ve XSLT Fonksiyonları
- Önceki Sayfa XPath Özeti
- Sonraki Sayfa XPath Eğitimi
erişim fonksiyonları
İsim | Açıklama |
---|---|
fn:node-name(node) | parametre nodunun nod adını döndürür. |
fn:nilled(node) | parametre nodunu reddeder veya reddetmez boolean değerini döndürür. |
fn:data(item.item,...) | proje sırasını kabul eder ve atomik değer sırası döndürür. |
|
mevcut nodun veya belirtilen nodun base-uri özelliğinin değerini döndürür. |
fn:document-uri(node) | belirtilen nodun document-uri özelliğinin değerini döndürür. |
hata ve takip fonksiyonları
İsim | Açıklama |
---|---|
|
örnek: error(fn:QName('http://example.com/test', 'err:toohigh'), 'Error: Price is too high') sonuç: http://example.com/test#toohigh URL'sini ve "Error: Price is too high" string'ini dışsal işlem ortamına döndürür. |
fn:trace(value,label) | sorguları debug etmek için kullanılır. |
sayısal fonksiyonlar
İsim | Açıklama |
---|---|
fn:number(arg) |
parametrenin sayısal değerini döndürür. Parametre boolean değer, string veya nod koleksiyonu olabilir. örnek: number('100') sonuç: 100 |
fn:abs(num) |
parametrenin mutlak değerini döndürür. örnek: abs(3.14) sonuç: 3.14 örnek: abs(-3.14) sonuç: 3.14 |
fn:ceiling(num) |
num parametresinin büyük olan en küçük tamsayıyı döndürür. örnek: ceiling(3.14) Sonuç: 4 |
fn:floor(num) |
num parametresinin en büyük sınırlı tam sayısını döndürür. Örnek: floor(3.14) Sonuç: 3 |
fn:round(num) |
num parametresini en yakın tam sayıya yuvarlar. Örnek: round(3.14) Sonuç: 3 |
fn:round-half-to-even() |
Örnek: round-half-to-even(0.5) Sonuç: 0 Örnek: round-half-to-even(1.5) Sonuç: 2 Örnek: round-half-to-even(2.5) Sonuç: 2 |
Dizge fonksiyonları hakkında
İsim | Açıklama |
---|---|
fn:string(arg) |
Parametrenin dizge değerini döndürür. Parametre sayı, mantıksal değer veya nod kümesi olabilir. Örnek: string(314) Sonuç: "314" |
fn:codepoints-to-string(int,int,...) |
Kod noktası dizisine göre dizge döndürür. Örnek: codepoints-to-string(84, 104, 233, 114, 232, 115, 101) Sonuç: 'Thérèse' |
fn:string-to-codepoints(string) |
Dizgeye göre kod noktası dizisi döndürür. Örnek: string-to-codepoints("Thérèse") Sonuç: 84, 104, 233, 114, 232, 115, 101 |
fn:codepoint-equal(comp1,comp2) | Unicode kod noktası karşılaştırmasına göre, eğer comp1'nin değeri comp2'nin değerine eşitse true döndürülür. (http://www.w3.org/2005/02/xpath-functions/collation/codepoint), aksi takdirde false döndürülür. |
|
Eğer comp1 comp2'den küçükse -1 döndürülür. Eğer comp1 comp2'ye eşitse 0 döndürülür. Eğer comp1 comp2'den büyüktense 1 döndürülür. (Kullanılan karşılaştırma kurallarına göre). Örnek: compare('ghi', 'ghi') Sonuç: 0 |
fn:concat(string,string,...) |
Dizge birleştirmesi döndürür. Örnek: concat('XPath ','is ','FUN!') Sonuç: 'XPath is FUN!' |
fn:birleştir(string,string,...,ayrım) |
sep parametresini ayırıcı olarak kullanarak string parametresini birleştirilmiş diziyi döner. Örnek: string-join(('We', 'are', 'having', 'fun!'), ' ') Sonuç: ' We are having fun! ' Örnek: string-join(('We', 'are', 'having', 'fun!')) Sonuç: 'Wearehavingfun!' Örnek: string-join((), 'sep') Sonuç: '' |
|
start konumundan başlayan belirtilen uzunlukta bir alt diziyi döner. İlk karakterin indeksi 1'dir. len parametresi atanılmadıysa, start konumundan dizinin sonuna kadar olan alt diziyi döner. Örnek: substring('Beatles',1,4) Sonuç: 'Beat' Örnek: substring('Beatles',2) Sonuç: 'eatles' |
|
Belirtilen dizinin uzunluğunu döner. string parametresi yoksa, mevcut düğümün string değerinin uzunluğunu döner. Örnek: string-length('Beatles') Sonuç: 7 |
|
Belirtilen dizinin başlangıç ve bitiş boşluklarını kaldırır, içerdikleri tüm boşluk dizilerini birleştirir ve sonuç olarak döner. string parametresi yoksa, mevcut düğümü işlemek için kullanılır. Örnek: normalize-space(' The XML ') Sonuç: 'The XML' |
fn:normalize-unicode() | Unicode standartlarını uygulayın. |
fn:upper-case(string) |
string parametresini büyük harflere dönüştürür. Örnek: upper-case('The XML') Sonuç: 'THE XML' |
fn:lower-case(string) |
string parametresini küçük harflere dönüştürür. Örnek: lower-case('The XML') Sonuç: 'the xml' |
fn:translate(string1,string2,string3) |
string1 içinde string2'yi string3 ile değiştir. Örnek: translate('12:30','30','45') Sonuç: '12:45' Örnek: translate('12:30','03','54') Sonuç: '12:45' Örnek: translate('12:30','0123','abcd') Sonuç: 'bc:da' |
fn:escape-uri(stringURI,esc-res) |
Örnek: escape-uri("http://example.com/test#car", true()) Sonuç: "http%3A%2F%2Fexample.com%2Ftest#car" Örnek: escape-uri("http://example.com/test#car", false()) Sonuç: "http://example.com/test#car" Örnek: escape-uri ("http://example.com/~bébé", false()) Sonuç: "http://example.com/~b%C3%A9b%C3%A9" |
fn:contains(string1,string2) |
string1 string2 içeriyorsa true döndürür, aksi takdirde false döndürür. Örnek: contains('XML','XM') Sonuç: true |
fn:starts-with(string1,string2) |
string1 string2 ile başlıyorsa true döndürür, aksi takdirde false döndürür. Örnek: starts-with('XML','X') Sonuç: true |
fn:ends-with(string1,string2) |
string1 string2 ile bitiyorsa true döndürür, aksi takdirde false döndürür. Örnek: ends-with('XML','X') Sonuç: false |
fn:substring-before(string1,string2) |
string1 içinde string2'nin ardından bulunan alt dizgeyi döndürür. Örnek: substring-before('12/10','/') Sonuç: '12' |
fn:substring-after(string1,string2) |
string1 içinde string2'nin ardından bulunan alt dizgeyi döndürür. Örnek: substring-after('12/10','/') Sonuç: '10' |
fn:matches(string,pattern) |
String parametresi belirtilen desene uyuyor ise true, aksi takdirde false döndürür. Örnek: matches("Merano", "ran") Sonuç: true |
fn:replace(string,pattern,replace) |
Belirtilen deseni replace parametresi ile değiştir ve sonuç döndür. Örnek: replace("Bella Italia", "l", "*") Sonuç: 'Be**a Ita*ia' Örnek: replace("Bella Italia", "l", "") Sonuç: 'Bea Itaia' |
fn:tokenize(string,pattern) |
Örnek: tokenize("XPath is fun", "\s+") Sonuç: ("XPath", "is", "fun") |
anyURI için fonksiyon
İsim | Açıklama |
---|---|
fn:resolve-uri(relative,base) |
Boolean değerler hakkında
İsim | Açıklama |
---|---|
fn:boolean(arg) | Sayı, string veya node kümesi boolean değerini döndürür. |
fn:not(arg) |
Boolean() fonksiyonu ile parametreyi bir boolean değere dönüştürür. Eğer bu boolean değeri false ise true döndürür, aksi takdirde true döndürür. Örnek: not(true()) Sonuç: false |
fn:true() |
Boolean değer true döndürür. Örnek: true() Sonuç: true |
fn:false() |
Boolean değer false döndürür. Örnek: false() Sonuç: false |
Süre, tarih ve zaman fonksiyonları hakkında
Tarih, zaman ve süre bileşenlerini çıkarma fonksiyonu
İsim | Açıklama |
---|---|
fn:dateTime(date,time) | Parameteri tarih ve zaman olarak dönüştür. |
fn:years-from-duration(datetimedur) | Dönüş parameter değerinin yıl kısmını tam sayı olarak, standart sözcük ifadesi ile ifade eder. |
fn:months-from-duration(datetimedur) | Dönüş parameter değerinin ay kısmını tam sayı olarak, standart sözcük ifadesi ile ifade eder. |
fn:days-from-duration(datetimedur) | Dönüş parameter değerinin gün kısmını tam sayı olarak, standart sözcük ifadesi ile ifade eder. |
fn:hours-from-duration(datetimedur) | Parametrenin saat kısmını temsil eden tamsayıyı standart kelime ifadesi ile döndürür. |
fn:minutes-from-duration(datetimedur) | Parametrenin dakika kısmını temsil eden tamsayıyı standart kelime ifadesi ile döndürür. |
fn:seconds-from-duration(datetimedur) | Parametrenin dakika kısmını temsil eden ondalık sayıyı standart kelime ifadesi ile döndürür. |
fn:year-from-dateTime(datetime) |
Parametrenin yerel değerinin yıl kısmını temsil eden tamsayıyı döndürür. Örnek: year-from-dateTime(xs:dateTime("2005-01-10T12:30-04:10")) Sonuç: 2005 |
fn:month-from-dateTime(datetime) |
Parametrenin yerel değerinin ay kısmını temsil eden tamsayıyı döndürür. Örnek: month-from-dateTime(xs:dateTime("2005-01-10T12:30-04:10")) Sonuç: 01 |
fn:day-from-dateTime(datetime) |
Parametrenin yerel değerinin gün kısmını temsil eden tamsayıyı döndürür. Örnek: day-from-dateTime(xs:dateTime("2005-01-10T12:30-04:10")) Sonuç: 10 |
fn:hours-from-dateTime(datetime) |
Parametrenin yerel değerinin saat kısmını temsil eden tamsayıyı döndürür. Örnek: hours-from-dateTime(xs:dateTime("2005-01-10T12:30-04:10")) Sonuç: 12 |
fn:minutes-from-dateTime(datetime) |
Parametrenin yerel değerinin dakika kısmını temsil eden tamsayıyı döndürür. Örnek: minutes-from-dateTime(xs:dateTime("2005-01-10T12:30-04:10")) Sonuç: 30 |
fn:seconds-from-dateTime(datetime) |
Parametrenin yerel değerinin saniye kısmını temsil eden ondalık sayıyı döndürür. Örnek: seconds-from-dateTime(xs:dateTime("2005-01-10T12:30:00-04:10")) Sonuç: 0 |
fn:timezone-from-dateTime(datetime) | Varsa parametrenin zaman dilimi kısmını döndürür. |
fn:year-from-date(date) |
Parametrenin yerel değerinde yılı temsil eden tamsayıyı döndürür. Örnek: year-from-date(xs:date("2005-04-23")) Sonuç: 2005 |
fn:month-from-date(date) |
Parametrenin yerel değerinde ayı temsil eden tamsayıyı döndürür. Örnek: month-from-date(xs:date("2005-04-23")) Sonuç: 4 |
fn:day-from-date(date) |
Parametrenin yerel değerinde günü temsil eden tamsayıyı döndürür. Örnek: day-from-date(xs:date("2005-04-23")) Sonuç: 23 |
fn:timezone-from-date(date) | Varsa parametrenin zaman dilimi kısmını döndürür. |
fn:hours-from-time(time) |
Parametrenin yerel değerinde saat kısmını temsil eden tamsayıyı döndürür. Örnek: hours-from-time(xs:time("10:22:00")) Sonuç: 10 |
fn:minutes-from-time(time) |
Parametrenin yerel değerinde dakika kısmını temsil eden tamsayıyı döndürür. Örnek: minutes-from-time(xs:time("10:22:00")) Sonuç: 22 |
fn:seconds-from-time(time) |
Parametrenin yerel değerinde saniye kısmını temsil eden tamsayıyı döndürür. Örnek: seconds-from-time(xs:time("10:22:00")) Sonuç: 0 |
fn:timezone-from-time(time) | Varsa parametrenin zaman dilimi kısmını döndürür. |
fn:adjust-dateTime-to-timezone(datetime,timezone) | timezone parametresi boşsa, zaman dilimi olmayan dateTime döndürür. Aksi takdirde zaman dilimi olan dateTime döndürür. |
fn:adjust-date-to-timezone(date,timezone) | timezone parametresi boşsa, zaman dilimi olmayan tarih döndürür. Aksi takdirde zaman dilimi olan tarih döndürür. |
fn:adjust-time-to-timezone(time,timezone) | timezone parametresi boşsa, zaman dilimi olmayan zaman döndürür. Aksi takdirde zaman dilimi olan zaman döndürür. |
QNames ile ilgili fonksiyonlar
İsim | Açıklama |
---|---|
fn:QName() | |
fn:local-name-from-QName() | |
fn:namespace-uri-from-QName() | |
fn:namespace-uri-for-prefix() | |
fn:in-scope-prefixes() | |
fn:resolve-QName() |
düğüm fonksiyonları hakkında
İsim | Açıklama |
---|---|
|
geçerli düğümün adını veya belirtilen düğüm kümesinin ilk düğümünün adını döner. |
|
geçerli düğümün adını veya belirtilen düğüm kümesinin ilk düğümünün adını - isim uzayı ön eki olmadan döner. |
|
geçerli düğüm veya belirtilen düğüm kümesinin ilk düğümünün isim uzaysı URI'sini döner. |
fn:lang(lang) |
geçerli düğümün dili belirtilen dile eşitse true döner. örnek: Lang("en") için true <p xml:lang="en">...</p> örnek: Lang("de") için false <p xml:lang="en">...</p> |
|
geçerli düğüm veya belirtilen düğümün düğüm ağacının kök düğümünü döner. Genellikle belge düğümüdür. |
dizi fonksiyonları
genel fonksiyon
İsim | Açıklama |
---|---|
fn:index-of((item,item,...),searchitem) |
proje dizgisinde searchitem parametresine eşit olan konumları döner. örnek: index-of ((15, 40, 25, 40, 10), 40) Sonuç: (2, 4) örnek: index-of (("a", "dog", "and", "a", "duck"), "a") Sonuç (1, 4) örnek: index-of ((15, 40, 25, 40, 10), 18) Sonuç: () |
fn:remove((item,item,...),position) |
item parametresi ile oluşturulan yeni dizgeyi döner - position parametresi belirtilen öğeyi siler. örnek: remove(("ab", "cd", "ef"), 0) Sonuç: ("ab", "cd", "ef") örnek: remove(("ab", "cd", "ef"), 1) Sonuç: ("cd", "ef") örnek: remove(("ab", "cd", "ef"), 4) Sonuç: ("ab", "cd", "ef") |
fn:empty(item,item,...) |
parametre değeri boş dizgi ise true döner, aksi takdirde false döner. örnek: empty(remove(("ab", "cd"), 1)) Sonuç: false |
fn:exists(item,item,...) |
Parametre değeri boş sıra değilse true döndürür, aksi takdirde false döndürür. Örnek: exists(remove(("ab"), 1)) Sonuç: false |
fn:distinct-values((item,item,...),collation) |
Farklı değerleri döndürür. Örnek: distinct-values((1, 2, 3, 1, 2)) Sonuç: (1, 2, 3) |
fn:insert-before((item,item,...),pos,inserts) |
item parametresi ile oluşturulan yeni sırayı döndürür - aynı zamanda pos parametresi belirtilen konuma inserts parametresinin değerini ekler. Örnek: insert-before(("ab", "cd"), 0, "gh") Sonuç: ("gh", "ab", "cd") Örnek: insert-before(("ab", "cd"), 1, "gh") Sonuç: ("gh", "ab", "cd") Örnek: insert-before(("ab", "cd"), 2, "gh") Sonuç: ("ab", "gh", "cd") Örnek: insert-before(("ab", "cd"), 5, "gh") Sonuç: ("ab", "cd", "gh") |
fn:reverse((item,item,...)) |
Belirtilen projelerin ters sırasını döndürür. Örnek: reverse(("ab", "cd", "ef")) Sonuç: ("ef", "cd", "ab") Örnek: reverse(("ab")) Sonuç: ("ab") |
fn:subsequence((item,item,...),start,len) |
start parametresi belirtilen konumdan döndürür的项目序列,seri uzunluğu len parametresi tarafından belirlenir. İlk projenin konumu 1'dir. Örnek: subsequence(($item1, $item2, $item3,...), 3) Sonuç: ($item3, ...) Örnek: subsequence(($item1, $item2, $item3, ...), 2, 2) Sonuç: ($item2, $item3) |
fn:unordered((item,item,...)) | projenin sıralanışını belirleyen implementasyona bağlı olarak döndürür. |
test serisi kapasitesini belirleyen fonksiyon
İsim | Açıklama |
---|---|
fn:zero-or-one(item,item,...) | Parametre sıfır veya bir öğe içeriyorsa, parametreyi döndürür, aksi takdirde hata oluşturur. |
fn:one-or-more(item,item,...) | Parametre bir veya daha fazla öğe içeriyorsa, parametreyi döndürür, aksi takdirde hata oluşturur. |
fn:exactly-one(item,item,...) | Parametre bir öğe içeriyorsa, parametreyi döndürür, aksi takdirde hata oluşturur. |
Eşit, Birleşim, Çarpım ve Fark
İsim | Açıklama |
---|---|
fn:deep-equal(param1,param2,collation) | Param1 ve param2 benzerse (derin-benzerlik), true döndürür, aksi takdirde false döndürür. |
Toplama fonksiyonu
İsim | Açıklama |
---|---|
fn:count((item,item,...)) | Nodun sayısını döndürür. |
fn:avg((arg,arg,...)) |
Parametre değerlerinin ortalamasını döndürür. Örnek: avg((1,2,3)) Sonuç: 2 |
fn:max((arg,arg,...)) |
Daha büyük olan diğer parametrelere eşit olan parametreyi döndürür. Örnek: max((1,2,3)) Sonuç: 3 Örnek: max(('a', 'k')) Sonuç: 'k' |
fn:min((arg,arg,...)) |
Daha büyük olan diğer parametrelere eşit olan parametreyi döndürür. Örnek: min((1,2,3)) Sonuç: 1 Örnek: min(('a', 'k')) Sonuç: 'a' |
fn:sum(arg,arg,...) | Belirtilen node koleksiyonunda her bir nodun değerlerinin toplamını döndürür. |
Seri oluşturma fonksiyonu
İsim | Açıklama |
---|---|
fn:id((string,string,...),node) | Dizide belirtilen bir veya daha fazla değere eşit olan ID değeri olan element nodlarının bir sırasını döndürür |
fn:idref((string,string,...),node) | Dizide belirtilen bir veya daha fazla değere eşit olan IDREF değeri olan element veya öznitelik nodlarının bir sırasını döndürür |
fn:doc(URI) | |
fn:doc-available(URI) | doc() fonksiyonu belge düğümünü dönerse true döner, aksi takdirde false döner。 |
|
Bağlam Fonksiyonları
İsim | Açıklama |
---|---|
fn:position() |
İşlenen düğümün index konumunu geri dönün。 Örnek: //book[position()<=3] Son üç book elementini seçin. |
fn:last() |
İşlenen düğüm listesindeki öğe sayısını geri dönün。 Örnek: //book[last()] Sonuncu book elementini seçin. |
fn:current-dateTime() | Zaman dilimi ile birlikte mevcut dateTime'yi geri dönün。 |
fn:current-date() | Zaman dilimi ile birlikte mevcut tarihi geri dönün。 |
fn:current-time() | Zaman dilimi ile birlikte mevcut zamanı geri dönün。 |
fn:implicit-timezone() | Gizli zaman dilimini geri dönün。 |
fn:default-collation() | Varsayılan karşılaştırma değerini geri dönün。 |
fn:static-base-uri() | base-uri değerine geri dönün。 |
- Önceki Sayfa XPath Özeti
- Sonraki Sayfa XPath Eğitimi