Funksheni za XQuery
- Picha ya Kwanza Picha ya Kwanza
- Picha ya Kina Muhtasari wa XQuery
XQuery 1.0, XPath 2.0 na XSLT 2.0 wana kifaa cha kina cha kawaida.
Funksheni za XQuery
XQuery ina mifaa cha kina cha kawaida na juu ya 100. Mifaa hii inaweza kutumika kwa mawazo wa string, adhimu, tarehe na wa kizuizi, mawazo ya mtoaji, muendelezo wa kina na QName, muendelezo wa mawazo wa muundo, na wengine. Unaweza pia kuandika mifaa cha kina wako wa kawaida katika XQuery.
Mifano ya Mifaa cha Kina cha XQuery
URI ya Kifaa cha Kina cha XQuery:
http://www.w3.org/2005/02/xpath-functions
Kifaa cha kina cha kawaida cha jina la mfunzo ni fn:.
Tahara:Mifano ya mfunzo inayotumika kwa mawazo wa fn: kama, fn:string(). Hata hivyo, kwa sababu fn: ni kifaa cha kina cha kawaida, jina la mfunzo hakupendukiwa kufanywa kwa kawaida wakati wa kusomea.
Wewe unaweza kuona mawazo ya kina ya <Makala ya Mwongozo wa XQuery wa Kifaa》。
Mifano ya muundo wa mfunzo
Tumishiriki wa kufanyia kwa muundo wa mfunzo na mawazo. Tazama mifano ya chache:
Mfano 1: Kwa uandikwa wa kina
<name>{upper-case($booktitle)}</name>
Mfano 2: Kwa mawazo wa njia
doc("books.xml")/bookstore/book[substring(title,1,5)='Harry']
Mfano 3: Kwa let statement
let $name := (substring($booktitle,1,4))
Fungsheni ya kumekadiriwa wa XQuery
Ikiwa haukutafutwa fungsheni ya XQuery ya uwanja, inaweza kuandika fungsheni yako.
Wengi wengi wanaobuni fungsheni za kumekadiriwa kwa kuzingatia msingi wa maelezo au kwa kina ya kawaida.
Muundo
declare function mifano: jina fungsheni($parameter AS aina ya data)
AS aina ya data ya matokeo
{
(: ...matokeo ya fungsheni... :)
;
Kihusiano cha fungsheni ya kumekadiriwa:
- Tumia neno declare function
- Jina la fungsheni lazima kuwa na mifano
- Aina ya data ya parameter inadaiwa kufanana na aina ya data iliyochaguliwa katika XML Schema
- Matokeo ya fungsheni inahusishwa na viungo vya kina
Mifano ya fungsheni ya kumekadiriwa kwa kuzingatia msingi wa maelezo:
declare function local:minPrice(
$price as xs:decimal?,
$discount as xs:decimal?
AS xs:decimal?
{
let $disc := ($price * $discount) div 100
return ($price - $disc)
;
(: Iliandikwa mifano ya kutumia mafanikio ya juu :)
<minPrice>{local:minPrice($book/price, $book/discount)}</minPrice>
- Picha ya Kwanza Picha ya Kwanza
- Picha ya Kina Muhtasari wa XQuery