ล่าสุดการพัฒนาเว็บบทเรียน
 

XSLT XPath และ XQuery ฟังก์ชั่น


XSLT 2.0 XPath 2.0 และ 1.0 XQuery แบ่งปันห้องสมุดฟังก์ชั่นเดียวกัน


อ้างอิงฟังก์ชั่น

คำนำหน้าเริ่มต้นสำหรับ namespace ฟังก์ชั่น Fn:
URI ของ namespace ฟังก์ชั่นคือ http://www.w3.org/2005/xpath-functions

Tip: ฟังก์ชั่นมักจะถูกเรียกว่ามี Fn นี้: คำนำหน้าเช่น Fn: string() อย่างไรก็ตามตั้งแต่ศุกร์: เป็นคำนำหน้าเริ่มต้นของ namespace ชื่อฟังก์ชั่นไม่จำเป็นต้องนำหน้าเมื่อเรียก

ฟังก์ชั่นการเข้าถึง

ชื่อ ลักษณะ
fn:node- name( node ) ส่งคืนโหนดชื่อของโหนดโต้แย้ง
fn: nilled( node ) ส่งกลับค่าบูลีนระบุว่าโหนดอาร์กิวเมนต์ที่ถูก nilled
fn: data( item.item,... ) ใช้เวลาลำดับของรายการและส่งกลับลำดับของค่าอะตอม
fn:base- uri()
fn:base- uri( node )
ส่งกลับค่าของฐาน URI ทรัพย์สินของโหนดปัจจุบันหรือที่ระบุ
fn:document- uri( node ) ส่งกลับค่าของคุณสมบัติเอกสาร URI สำหรับโหนดที่ระบุ

ข้อผิดพลาดและติดตามฟังก์ชั่น

ชื่อ ลักษณะ
fn: error()
fn: error( error )
fn: error( error,description )
fn: error( error,description,error-object )
ตัวอย่าง: error(fn:QName('http://example.com/test', 'err:toohigh') 'ข้อผิดพลาด: ราคานี้เป็นราคาที่สูงเกินไป)

ผล: ผลตอบแทน http://example.com/test#toohigh และสตริง "Error: Price is too high" กับสภาพแวดล้อมการประมวลผลภายนอก

fn: trace( value,label ) ที่ใช้ในการแก้ปัญหาคำสั่ง

ฟังก์ชั่นในค่าตัวเลข

ชื่อ ลักษณะ
fn: number( arg ) แสดงค่าเป็นตัวเลขของการโต้แย้ง อาร์กิวเมนต์อาจจะเป็นบูลีนสตริงหรือโหนดชุด

ตัวอย่าง: number('100')
ผล: 100

fn: abs( num ) ส่งกลับค่าสัมบูรณ์ของการโต้แย้ง

ตัวอย่าง: abs(3.14)
ผล: 3.14

ตัวอย่าง: abs(-3.14)
ผล: 3.14

fn: ceiling( num ) ส่งคืนเลขที่เล็กที่สุดที่มากกว่าอาร์กิวเมนต์จำนวน

ตัวอย่าง: ceiling(3.14)
ผล: 4

fn: floor( num ) ส่งกลับเลขที่ใหญ่ที่สุดที่ไม่ได้เป็นมากกว่าอาร์กิวเมนต์จำนวน

ตัวอย่าง: floor(3.14)
ผล: 3

fn: round( num ) รอบอาร์กิวเมนต์จำนวนเต็มที่ใกล้เคียงที่สุด

ตัวอย่าง: round(3.14)
ผล: 3

fn:round-half-to- even() ตัวอย่าง: รอบครึ่ง-to- even(0.5)
ผล: 0

ตัวอย่าง: รอบครึ่ง-to- even(1.5)
ผล: 2

ตัวอย่าง: รอบครึ่ง-to- even(2.5)
ผล: 2

ฟังก์ชั่นในสาย

ชื่อ ลักษณะ
fn: string( arg ) ส่งคืนค่าสตริงของการโต้แย้ง อาร์กิวเมนต์อาจจะเป็นจำนวนบูลหรือโหนดชุด

ตัวอย่าง: string(314)
ผล: "314"

fn:codepoints-to- string(( int,int,... ) ) สร้างสตริงจากลำดับของจุดรหัสมาตรฐาน Unicode ที่

ตัวอย่าง: codepoints-to- string((84, 104, 233, 114, 232, 115, 101) )
ผล: 'Thrse'

fn:string-to- codepoints( string ) ส่งกลับลำดับของ Unicode จุดรหัสมาตรฐานจากสตริง

ตัวอย่าง: สตริง-to- codepoints("Th r se")
ผล: (84, 104, 233, 114, 232, 115, 101)

fn:codepoint- equal( comp1,comp2 ) ผลตอบแทนจริงถ้าค่าของ comp1 เท่ากับมูลค่าของ comp2 ตามยูนิโค้ดรหัสจุดเปรียบเทียบ (http://www.w3.org/2005/02/xpath-functions/collation/codepoint) มิฉะนั้นจะกลับเท็จ
fn: compare( comp1,comp2 )
fn: compare( comp1,comp2,collation )
กลับ -1 ถ้า comp1 น้อยกว่า comp2 0 ถ้า comp1 เท่ากับ comp2 หรือ 1 ถ้า comp1 มีค่ามากกว่า comp2 (ตามกฎของการเปรียบเทียบที่ใช้)

ตัวอย่าง: compare('ghi', 'ghi')
ผล: 0

fn: concat( string,string,... ) ผลตอบแทนที่ได้กำหนดการสตริง

ตัวอย่าง: concat('XPath ','is ','FUN!')
ผล: 'XPath สนุก!

fn:string- join( (string,string,...) ,sep) กลับสตริงที่สร้างขึ้นโดยเชื่อมโยงข้อโต้แย้งสตริงและใช้อาร์กิวเมนต์กันยายนเป็นตัวคั่น

ตัวอย่าง: String- join(('We', 'are', 'having', 'fun!') , ' ')
ส่งผลให้เกิดว่าเราจะมีความสนุกสนาน! '

ตัวอย่าง: String- join(('We', 'are', 'having', 'fun!') )
ผล: 'Wearehavingfun!

ตัวอย่าง: String- join(() 'กันยายน)
ผล: ''

fn: substring( string,start,len )
fn: substring( string,start )
ผลตอบแทนที่ได้จากการย่อยตำแหน่งเริ่มต้นความยาวที่ระบุ ดัชนีของตัวอักษรตัวแรกคือ 1. ถ้าความยาวถูกละไว้ก็จะส่งกลับสตริงย่อยจากตำแหน่งเริ่มต้นจนจบ

ตัวอย่าง: substring('Beatles',1,4)
ผล: 'ชนะ'

ตัวอย่าง: substring('Beatles',2)
ผล: 'eatles'

fn:string- length( string )
fn:string- length()
ส่งกลับความยาวของสตริงที่ระบุ หากไม่มีข้อโต้แย้งสตริงก็จะส่งกลับความยาวของค่าสตริงของโหนดปัจจุบัน

ตัวอย่าง: String- length('Beatles')
ผล: 7

fn:normalize- space( string )
fn:normalize- space()
เอาชั้นนำและช่องว่างต่อท้ายจากสตริงที่ระบุและแทนที่ลำดับภายในทั้งหมดของพื้นที่สีขาวกับหนึ่งและผลตอบแทน หากไม่มีข้อโต้แย้งสตริงมันไม่เหมือนกันในโหนดปัจจุบัน

ตัวอย่าง: normalize- space(' The XML ')
ผล: 'The XML'

fn:normalize- unicode()
fn:upper- case( string ) แปลงอาร์กิวเมนต์สตริงบนกรณี

ตัวอย่าง: พิมพ์ใหญ่ case('The XML')
ผล: 'XML ที่'

fn:lower- case( string ) แปลงอาร์กิวเมนต์สตริงเพื่อกรณีที่ต่ำกว่า

ตัวอย่าง: ล่าง case('The XML')
ผล: 'XML ที่'

fn: translate( string1,string2,string3 ) แปลง string1 โดยการแทนที่ตัวอักษรใน string2 กับตัวละครใน string3

ตัวอย่าง: translate('12:30','30','45')
ผล: '12: 45'

ตัวอย่าง: translate('12:30','03','54')
ผล: '12: 45'

ตัวอย่าง: translate('12:30','0123','abcd')
ผล: 'BC: ดา'

fn:escape- uri( stringURI,esc-res ) ตัวอย่าง: escape- uri("http://example.com/test#car", true() )
ผล: "http%3A%2F%2Fexample.com%2Ftest#car"

ตัวอย่าง: escape- uri("http://example.com/test#car", false() )
ผล: "http://example.com/test#car"

ตัวอย่าง: หนี-Uri ("http://example.com/~b b ", false() )
ผล: "http://example.com/~b%C3%A9b%C3%A9"

fn: contains( string1,string2 ) ผลตอบแทนจริงถ้ามี string1 string2 มิฉะนั้นก็จะส่งกลับเท็จ

ตัวอย่าง: contains('XML','XM')
ผล: ความจริง

fn:starts- with( string1,string2 ) ผลตอบแทนจริงถ้าเริ่มต้นด้วย string1 string2 มิฉะนั้นก็จะส่งกลับเท็จ

ตัวอย่าง: starts- with('XML','X')
ผล: ความจริง

fn:ends- with( string1,string2 ) ผลตอบแทนจริงถ้า string1 string2 จบลงด้วยมิฉะนั้นก็จะส่งกลับเท็จ

ตัวอย่าง: ends- with('XML','X')
ผล: เท็จ

fn:substring- before( string1,string2 ) ผลตอบแทนที่ได้เริ่มต้นของ string1 ก่อน string2 เกิดขึ้นในนั้น

ตัวอย่าง: substring- before('12/10','/')
ผล: '12'

fn:substring- after( string1,string2 ) ผลตอบแทนที่เหลือของ string1 หลังจาก string2 เกิดขึ้นในนั้น

ตัวอย่าง: substring- after('12/10','/')
ผล: '10'

fn: matches( string,pattern ) ผลตอบแทนจริงถ้าอาร์กิวเมนต์สตริงตรงกับรูปแบบมิฉะนั้นก็จะส่งกลับเท็จ

ตัวอย่าง: matches("Merano", "ran")
ผล: ความจริง

fn: replace( string,pattern,replace ) กลับสตริงที่ถูกสร้างขึ้นโดยการเปลี่ยนรูปแบบที่กำหนดด้วยอาร์กิวเมนต์แทนที่

ตัวอย่าง: replace("Bella Italia", "l" , "*")
ผล: 'Be ** Ita * เอีย'

ตัวอย่าง: replace("Bella Italia", "l" , "")
ผล: 'บี Itaia'

fn: tokenize( string,pattern ) ตัวอย่าง: tokenize("XPath is fun", "\s+")
ผล: ("XPath", "is" , "fun")

ฟังก์ชั่นสำหรับ anyURI

ชื่อ ลักษณะ
fn:resolve- uri( relative,base )

ฟังก์ชั่นค่าบูลีน

ชื่อ ลักษณะ
fn: boolean( arg ) ส่งกลับค่าบูลีนสำหรับจำนวนสตริงหรือโหนดชุด
fn: not( arg ) อาร์กิวเมนต์จะลดลงเป็นครั้งแรกเป็นค่าบูลีนโดยใช้ boolean() ฟังก์ชั่น ผลตอบแทนจริงถ้าค่าบูลีนเป็นเท็จและเท็จถ้าค่าบูลีนเป็นความจริง

ตัวอย่าง: not(true() )
ผล: เท็จ

fn: true() ส่งคืนค่าบูลีนจริง

ตัวอย่าง: true()
ผล: ความจริง

fn: false() ส่งคืนค่าบูลีนเท็จ

ตัวอย่าง: false()
ผล: เท็จ

ฟังก์ชั่นในระยะเวลาวันที่และเวลา

ฟังก์ชั่นการสกัดส่วนประกอบในระยะเวลาวันที่และเวลา

ชื่อ ลักษณะ
fn: dateTime( date,time ) แปลงข้อโต้แย้งไปยังวันที่และเวลา
fn:years-from- duration( datetimedur ) ส่งกลับจำนวนเต็มที่แสดงถึงองค์ประกอบปีในการเป็นตัวแทนคำศัพท์บัญญัติของมูลค่าของการโต้แย้งได้
fn:months-from- duration( datetimedur ) ส่งกลับจำนวนเต็มที่แสดงถึงองค์ประกอบเดือนในการเป็นตัวแทนคำศัพท์บัญญัติของมูลค่าของการโต้แย้งได้
fn:days-from- duration( datetimedur ) ส่งกลับจำนวนเต็มที่แสดงถึงองค์ประกอบวันในการเป็นตัวแทนคำศัพท์บัญญัติของมูลค่าของการโต้แย้งได้
fn:hours-from- duration( datetimedur ) ส่งกลับจำนวนเต็มที่แสดงถึงองค์ประกอบชั่วโมงในการเป็นตัวแทนคำศัพท์บัญญัติของมูลค่าของการโต้แย้งได้
fn:minutes-from- duration( datetimedur ) ส่งกลับจำนวนเต็มที่แสดงถึงองค์ประกอบนาทีในการแสดงคำศัพท์บัญญัติของมูลค่าของการโต้แย้งได้
fn:seconds-from- duration( datetimedur ) ส่งกลับค่าทศนิยมที่แสดงถึงองค์ประกอบวินาทีในการเป็นตัวแทนคำศัพท์บัญญัติของมูลค่าของการโต้แย้งได้
fn:year-from- dateTime( datetime ) ส่งกลับจำนวนเต็มที่แสดงถึงองค์ประกอบปีในมูลค่าที่มีการแปลของการโต้แย้งได้

ตัวอย่าง: ปี from- dateTime(xs:dateTime("2005-01-10T12:30-04:10") )
ผล: 2005

fn:month-from- dateTime( datetime ) ส่งกลับจำนวนเต็มที่แสดงถึงองค์ประกอบเดือนในมูลค่าที่มีการแปลของการโต้แย้งได้

ตัวอย่าง: เดือน from- dateTime(xs:dateTime("2005-01-10T12:30-04:10") )
ผล: 01

fn:day-from- dateTime( datetime ) ส่งกลับจำนวนเต็มที่แสดงถึงองค์ประกอบวันในมูลค่าที่มีการแปลของการโต้แย้งได้

ตัวอย่าง: วัน from- dateTime(xs:dateTime("2005-01-10T12:30-04:10") )
ผล: 10

fn:hours-from- dateTime( datetime ) ส่งกลับจำนวนเต็มที่แสดงถึงองค์ประกอบชั่วโมงในมูลค่าที่มีการแปลของการโต้แย้งได้

ตัวอย่าง: ชั่วโมง from- dateTime(xs:dateTime("2005-01-10T12:30-04:10") )
ผล: 12

fn:minutes-from- dateTime( datetime ) ส่งกลับจำนวนเต็มที่แสดงถึงองค์ประกอบนาทีในมูลค่าที่มีการแปลของการโต้แย้งได้

ตัวอย่าง: นาที from- dateTime(xs:dateTime("2005-01-10T12:30-04:10") )
ผล: 30

fn:seconds-from- dateTime( datetime ) ส่งกลับค่าทศนิยมที่แสดงถึงองค์ประกอบวินาทีในมูลค่าหน่วงของอาร์กิวเมนต์

ตัวอย่าง: วินาที from- dateTime(xs:dateTime("2005-01-10T12:30:00-04:10") )
ผล: 0

fn:timezone-from- dateTime( datetime ) ส่งกลับองค์ประกอบโซนเวลาของการโต้แย้งใด ๆ ถ้า
fn:year-from- date( date ) ส่งกลับจำนวนเต็มที่แสดงถึงปีในมูลค่าที่มีการแปลของการโต้แย้งได้

ตัวอย่าง: ปี from- date(xs:date("2005-04-23") )
ผล: 2005

fn:month-from- date( date ) ส่งกลับจำนวนเต็มที่แสดงถึงเดือนในมูลค่าที่มีการแปลของการโต้แย้งได้

ตัวอย่าง: เดือน from- date(xs:date("2005-04-23") )
ผล: 4

fn:day-from- date( date ) ส่งกลับจำนวนเต็มที่แสดงถึงวันที่มีการแปลค่าของอาร์กิวเมนต์ที่

ตัวอย่าง: วัน from- date(xs:date("2005-04-23") )
ผล: 23

fn:timezone-from- date( date ) ส่งกลับองค์ประกอบโซนเวลาของการโต้แย้งใด ๆ ถ้า
fn:hours-from- time( time ) ส่งกลับจำนวนเต็มที่แสดงถึงองค์ประกอบชั่วโมงในมูลค่าที่มีการแปลของการโต้แย้งได้

ตัวอย่าง: ชั่วโมง from- time(xs:time("10:22:00") )
ผล: 10

fn:minutes-from- time( time ) ส่งกลับจำนวนเต็มที่แสดงถึงองค์ประกอบนาทีในมูลค่าที่มีการแปลของการโต้แย้งได้

ตัวอย่าง: นาที from- time(xs:time("10:22:00") )
ผล: 22

fn:seconds-from- time( time ) ส่งกลับจำนวนเต็มที่แสดงถึงองค์ประกอบวินาทีในมูลค่าที่มีการแปลของการโต้แย้งได้

ตัวอย่าง: วินาที from- time(xs:time("10:22:00") )
ผล: 0

fn:timezone-from- time( time ) ส่งกลับองค์ประกอบโซนเวลาของการโต้แย้งใด ๆ ถ้า
fn:adjust-dateTime-to- timezone( datetime,timezone ) ถ้าอาร์กิวเมนต์เขตเวลาว่างก็จะส่งกลับวันที่และเวลาโดยไม่ต้องเขตเวลา มิฉะนั้นก็จะส่งกลับวันที่และเวลาที่มีเขตเวลา
fn:adjust-date-to- timezone( date ,timezone ) ถ้าอาร์กิวเมนต์เขตเวลาว่างก็จะส่งกลับวันโดยไม่มีเขตเวลา มิฉะนั้นก็จะส่งกลับวันที่มีเขตเวลา
fn:adjust-time-to- timezone( time ,timezone ) ถ้าอาร์กิวเมนต์เขตเวลาว่างก็จะส่งกลับเวลาที่ไม่มีเขตเวลา มิฉะนั้นก็จะส่งกลับเวลาที่มีเขตเวลา

ฟังก์ชั่นที่เกี่ยวข้องกับการ QNames

ชื่อ ลักษณะ
fn: QName()
fn:local-name-from- QName()
fn:namespace-uri-from- QName()
fn:namespace-uri-for- prefix()
fn:in-scope- prefixes()
fn:resolve- QName()

ฟังก์ชั่นบนโหนด

ชื่อ ลักษณะ
fn: name()
fn: name( nodeset )
ผลตอบแทนที่ได้ชื่อของโหนดปัจจุบันหรือโหนดแรกในชุดโหนดที่ระบุ
fn:local- name()
fn:local- name( nodeset )
ผลตอบแทนที่ได้ชื่อของโหนดปัจจุบันหรือโหนดแรกในชุดโหนดที่ระบุ - โดยไม่มีคำนำหน้า Namespace อย่าง
fn:namespace- uri()
fn:namespace- uri( nodeset )
ส่งคืน namespace URI ของโหนดปัจจุบันหรือโหนดแรกในชุดโหนดที่ระบุ
fn: lang( lang ) ผลตอบแทนจริงถ้าภาษาของโหนดปัจจุบันตรงกับภาษาของภาษาที่ระบุ

ตัวอย่าง: Lang("en") เป็นจริงสำหรับ
<p XML: lang = "th"> ... </ p>

ตัวอย่าง: Lang("de") เป็นเท็จ
<p XML: lang = "th"> ... </ p>

fn: root()
fn: root( node )
ผลตอบแทนที่รากของต้นไม้ที่โหนดปัจจุบันหรือที่ระบุกรรมสิทธิ์ ซึ่งมักจะเป็นโหนดเอกสาร

ฟังก์ชั่นในลำดับ

ฟังก์ชั่นทั่วไปเกี่ยวกับลำดับ

ชื่อ ลักษณะ
fn:index- of( (item,item,...) ,searchitem) ส่งคืนตำแหน่งภายในลำดับของรายการที่จะเท่ากับอาร์กิวเมนต์ searchitem ที่

ตัวอย่าง: ดัชนีของ ((15, 40, 25, 40, 10) , 40)
ผล: (2, 4)

ตัวอย่าง: ดัชนีของ (("a", "dog" , "and" , "a" , "duck") , "A")
ผล (1, 4)

ตัวอย่าง: ดัชนีของ ((15, 40, 25, 40, 10) , 18)
ผล: ()

fn: remove( (item,item,...) ,position) ส่งกลับลำดับใหม่สร้างขึ้นมาจากความคุ้มค่าของการขัดแย้งรายการ - กับรายการที่ระบุโดยอาร์กิวเมนต์ตำแหน่งออก

ตัวอย่าง: remove(("ab", "cd" , "ef") , 0)
ผล: ("ab", "cd" , "ef")

ตัวอย่าง: remove(("ab", "cd" , "ef") , 1)
ผล: ("cd", "ef")

ตัวอย่าง: remove(("ab", "cd" , "ef") , 4)
ผล: ("ab", "cd" , "ef")

fn: empty( item,item,... ) ผลตอบแทนจริงถ้าค่าของการขัดแย้งเป็นลำดับที่ว่างเปล่ามิฉะนั้นก็จะส่งกลับเท็จ

ตัวอย่าง: empty(remove(("ab", "cd") , 1))
ผล: เท็จ

fn: exists( item,item,... ) ผลตอบแทนจริงถ้าค่าของการขัดแย้งไม่ได้เป็นลำดับที่ว่างเปล่ามิฉะนั้นก็จะส่งกลับเท็จ

ตัวอย่าง: exists(remove(("ab") , 1))
ผล: เท็จ

fn:distinct- values( (item,item,...) ,collation) ส่งกลับเฉพาะที่แตกต่างกัน (different) ค่า

ตัวอย่าง: distinct- values((1, 2, 3, 1, 2) )
ผล: (1, 2, 3)

fn:insert- before( (item,item,...) ,pos,inserts) ส่งกลับลำดับใหม่สร้างขึ้นมาจากความคุ้มค่าของการขัดแย้งรายการ - มีค่าของอาร์กิวเมนต์แทรกแทรกอยู่ในตำแหน่งที่ระบุโดยอาร์กิวเมนต์การ pos

ตัวอย่าง: แทรก before(("ab", "cd") , 0, "GH")
ผล: ("gh", "ab" , "cd")

ตัวอย่าง: แทรก before(("ab", "cd") , 1, "GH")
ผล: ("gh", "ab" , "cd")

ตัวอย่าง: แทรก before(("ab", "cd") , 2, "GH")
ผล: ("ab", "gh" , "cd")

ตัวอย่าง: แทรก before(("ab", "cd") , 5, "GH")
ผล: ("ab", "cd" , "gh")

fn: reverse( (item,item,...) ) ส่งคืนเพื่อกลับรายการของรายการที่ระบุไว้

ตัวอย่าง: reverse(("ab", "cd" , "ef") )
ผล: ("ef", "cd" , "ab")

ตัวอย่าง: reverse(("ab") )
ผล: ("ab")

fn: subsequence( (item,item,...) ,start,len) ส่งกลับลำดับของรายการจากตำแหน่งที่ระบุโดยอาร์กิวเมนต์เริ่มต้นและต่อเนื่องสำหรับจำนวนของสินค้าที่ระบุโดยอาร์กิวเมนต์ len รายการแรกตั้งอยู่ที่ตำแหน่งที่ 1

ตัวอย่าง: subsequence(($item1, $item2, $item3,...) , 3)
ผล: ($item3, ...)

ตัวอย่าง: subsequence(($item1, $item2, $item3, ...) , 2, 2)
ผล: ($item2, $item3)

fn: unordered( (item,item,...) ) ส่งกลับรายการในการดำเนินการเพื่อขึ้น

ฟังก์ชั่นที่ทดสอบ Cardinality ของลำดับ

ชื่อ ลักษณะ
fn:zero-or- one( item,item,... ) ส่งกลับอาร์กิวเมนต์ถ้ามีศูนย์หรือหนึ่งรายการมิฉะนั้นจะทำให้เกิดข้อผิดพลาด
fn:one-or- more( item,item,... ) ผลตอบแทนที่ได้โต้แย้งว่ามันมีมากกว่าหนึ่งรายการมิฉะนั้นจะทำให้เกิดข้อผิดพลาด
fn:exactly- one( item,item,... ) ส่งกลับอาร์กิวเมนต์ถ้ามีอีกหนึ่งรายการมิฉะนั้นจะทำให้เกิดข้อผิดพลาด

เท่ากับสหภาพแยกและได้รับการยกเว้น

ชื่อ ลักษณะ
fn:deep- equal( param1,param2,collation ) ผลตอบแทนจริงถ้า param1 และ param2 มีความลึกเท่ากับแต่ละอื่น ๆ มิฉะนั้นจะกลับเท็จ

ฟังก์ชั่นรวม

ชื่อ ลักษณะ
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,... ) แสดงผลรวมของค่าตัวเลขของแต่ละโหนดในระบุโหนดชุด

ฟังก์ชั่นที่สร้างลำดับ

ชื่อ ลักษณะ
fn: id( (string,string,...) ,node) ส่งกลับลำดับของโหนดองค์ประกอบที่มีค่า ID เท่ากับมูลค่าของหนึ่งหรือมากกว่าของค่าที่ระบุไว้ในข้อโต้แย้งสตริง
fn: idref( (string,string,...) ,node) ส่งกลับลำดับขององค์ประกอบหรือแอตทริบิวต์โหนดที่มีค่า IDREF เท่ากับมูลค่าของหนึ่งหรือมากกว่าของค่าที่ระบุไว้ในข้อโต้แย้งสตริง
fn: doc( URI )
fn:doc- available( URI ) ผลตอบแทนจริงถ้า doc() ฟังก์ชันส่งกลับโหนดเอกสารมิฉะนั้นก็จะส่งกลับเท็จ
fn: collection()
fn: collection( string )

ฟังก์ชั่นบริบท

ชื่อ ลักษณะ
fn: position() ส่งกลับตำแหน่งดัชนีของโหนดว่าขณะนี้อยู่ระหว่างดำเนินการ

ตัวอย่าง: // หนังสือ [ position() <= 3]
ผล: เลือกแรกสามองค์ประกอบหนังสือ

fn: last() ส่งกลับจำนวนของรายการในรายการโหนดประมวลผล

ตัวอย่าง: // หนังสือ [ last() ]
ผล: การเลือกองค์ประกอบที่หนังสือเล่มสุดท้าย

fn:current- dateTime() ส่งคืน dateTime ปัจจุบัน (with timezone)
fn:current- date() ส่งกลับวันที่ปัจจุบัน (with timezone)
fn:current- time() ส่งกลับเวลาปัจจุบัน (with timezone)
fn:implicit- timezone() ส่งกลับค่าของเขตเวลานัย
fn:default- collation() ส่งกลับค่าของการเปรียบเทียบค่าเริ่มต้น
fn:static-base- uri() ส่งกลับค่าของฐาน URI

ฟังก์ชั่น XSLT

นอกจากนี้ยังมีดังต่อไปนี้ในตัวฟังก์ชั่น XSLT:

ชื่อ ลักษณะ
current() ส่งคืนโหนดปัจจุบัน
document() ใช้ในการเข้าถึงโหนดในเอกสาร XML ภายนอก
element- available() ทดสอบว่าองค์ประกอบที่ระบุได้รับการสนับสนุนจากหน่วยประมวลผล XSLT
format- number() แปลงตัวเลขเป็นสตริง
function- available() ทดสอบว่าฟังก์ชั่นที่ระบุได้รับการสนับสนุนจากหน่วยประมวลผล XSLT
generate- id() ส่งกลับค่าสตริงที่ระบุโหนดที่ระบุ
key() ส่งคืนโหนดชุดใช้ดัชนีที่ระบุไว้โดย <xsl:key> องค์ประกอบ
system- property() ส่งกลับค่าของคุณสมบัติของระบบที่
unparsed-entity- uri() ส่งกลับ URI ของกิจการ unparsed