XQuery funksiyalari


XQuery 1.0, XPath 2.0 va XSLT 2.0 bir xil funksiyalar kutubxonasidan foydalanadi.


ULASHISH

XQuery funksiyalari

XQuery XPath ifodalari asosida qurilgan. XQuery 1.0 va XPath 2.0 bir xil ma’lumotlar modeliga ega va bir xil funksiyalar hamda operatorlarni qo‘llab-quvvatlaydi.

XPath operatorlari

XPath funksiyalari

XQuery’da o‘z funksiyalaringizni ham aniqlashingiz mumkin.


XQuery ma’lumot tiplari

XQuery XML Schema 1.0 (XSD) bilan bir xil ma’lumot tiplaridan foydalanadi.

XSD string tiplari

XSD sana tiplari

XSD sonli tiplar

XSD boshqa tiplar


Funksiya chaqiruvlariga misollar

Funksiya chaqiruvi ifoda kelishi mumkin bo‘lgan har qanday joyda kelishi mumkin. Quyidagi misollarga qarang:

1-misol: element ichida

<name>{upper-case($booktitle)}</name>

2-misol: yo‘l ifodasining predikatida

doc("books.xml")/bookstore/book[substring(title,1,5)='Harry']

3-misol: let bandida

let $name := (substring($booktitle,1,4))


XQuery’da foydalanuvchi aniqlaydigan funksiyalar

Agar kerakli XQuery funksiyasini topa olmasangiz, uni o‘zingiz yozishingiz mumkin.

Foydalanuvchi aniqlaydigan funksiyalarni so‘rovning o‘zida yoki alohida kutubxonada aniqlash mumkin.

Sintaksis

declare function prefix:function_name($parameter as datatype) as returnDatatype {  ...funksiya kodi shu yerda... };

Foydalanuvchi aniqlaydigan funksiyalar bo‘yicha eslatmalar:

  • declare function kalit so‘zidan foydalaning
  • Funksiya nomi prefiksga ega bo‘lishi kerak
  • Parametrlarning ma’lumot tiplari asosan XML Schema’da aniqlangan ma’lumot tiplari bilan bir xil
  • Funksiya tanasi jingalak qavslar ichiga olinishi kerak

So‘rovda e’lon qilingan foydalanuvchi funksiyasiga misol

declare function local:minPrice($p as xs:decimal?,$d as xs:decimal?) as xs:decimal? { let $disc := ($p * $d) div 100 return ($p - $disc) }; Below is an example of how to call the function above: <minPrice>{local:minPrice($book/price,$book/discount)}</minPrice>

W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!