# Interface XPathFunction

public interface XPathFunction

`XPathFunction` provides access to XPath functions.

Functions are identified by QName and arity in XPath.

Since:
  1.5

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Object`
  `evaluate(List<?> args)`
  Evaluate the function with the specified arguments.

- ## Method Details

  - ### evaluate

    Object evaluate(List<?> args) throws XPathFunctionException

    Evaluate the function with the specified arguments.

    To the greatest extent possible, side-effects should be avoided in the definition of extension functions. The implementation evaluating an XPath expression is under no obligation to call extension functions in any particular order or any particular number of times.

    Parameters:
      `args` - The arguments, `null` is a valid value.
    Returns:
      The result of evaluating the `XPath` function as an `Object`.
    Throws:
      `XPathFunctionException` - If `args` cannot be evaluated with this `XPath` function.