2つのノード集合の和集合のノード集合を返す。与えられた文字列を連結した文字列を返す。指定された範囲の部分文字列を返す。指定された文字列が部分文字列として含まれる場合に真値を返し、それ以外の場合に偽値を返す。指定された文字列が先頭の部分文字列である場合に真値を返し、それ以外の場合に偽値を返す。指定された文字列が末尾の部分文字列である場合に真値を返し、それ以外の場合に偽値を返す。指定された文字列よりも前にある部分文字列を返す。指定された文字列よりも後ろにある部分文字列を返す。名前空間付きの要素名を返す。名前空間なしの要素名を返す。名前空間のURIを返す。備考stringnumberboolean比較的よく使われる関数については、次の節以降で少し詳しく述べる。完全な定義は、W3Cの勧告(日本語訳)を参照。XPathの式は、丸括弧の(と)で括りグループ化して評価順序を明記することができる。述語には演算子を使った式を含めることができる。演算子でつなげることや、not関数の引数にすることができる。Unicodeの文字を含めることができる。述語で演算子を使う例を示す。要素の集合を選択する。演算子|は、述語の内部でも、述語の外部でも、ノード集合の和を求めるために使うことができる。述語の外部で|演算子を使う例を示す。w[z]この例では、一つのノード集合を返す。要素の集合の、和集合である。(兄弟ノードにおける位置)。id(object)引数のオブジェクトの文字列値をID型の属性値としてもつノードの集合を返す。(ノードが要素の場合は要素名、属性の場合は属性名)。string(object?)XPathで規定されている4種類のデータ型を引数としてとることができ、仕様で定められた変換規則によって文字列に変換する。引数としてXPath式も渡すことができる。substring(string,number,number?)引数として渡す文字列の部分文字列を返す。concat(string,string,string*)引数として渡す複数の文字列を連結して返す。含まれていた場合にはtrue関数が返すのと同じ値を返す。含まれていなかった場合はfalse関数が返すのと同じ値を返す。normalize-space(string?)引数の文字列を正規化して返す。文字列の前後の空白文字を除去し、さらに除去後の文字列中に連続して現れる空白文字を一つの空白で置き換えた文字列を、返す。not(boolean)引数の論理値の逆の値を返す。sum(node-set)引数として渡されたノード集合の各ノードの文字列値を、仕様で定められた変換規則にしたがって数値に変換し、合計した値を返す。例[編集]次のXML文書でXPathを例示して説明する。名前を限定せずにルート要素を選択する。