Package net.sf.saxon.functions

## Class CollectionFn

- java.lang.Object
- - net.sf.saxon.functions.AbstractFunction
  - - net.sf.saxon.functions.SystemFunction
    - - net.sf.saxon.functions.CollectionFn

- All Implemented Interfaces:
    `Callable`, `Function`, `GroundedValue`, `Item`, `Sequence`

      public class CollectionFn
      extends SystemFunction
      implements Callable

  Implement the fn:collection() function. This is responsible for calling the registered `CollectionFinder`. For the effect of the default system-supplied CollectionFinder, see `StandardCollectionFinder`

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static ResourceCollection` | `EMPTY_COLLECTION` | An empty collection
    `static java.lang.String` | `EMPTY_COLLECTION_URI` | URI representing a collection that is always empty, regardless of any collection URI resolver

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `CollectionFn()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `Sequence` | `call​(XPathContext context, Sequence[] arguments)` | Dynamic call on collection() function
    `int` | `getSpecialProperties​(Expression[] arguments)` | Determine the special properties of this function.

    - ### Methods inherited from class net.sf.saxon.functions.SystemFunction

      `dependsOnContextItem, dynamicCall, equals, export, exportAdditionalArguments, exportAttributes, fixArguments, getArity, getCardinality, getCompilerName, getContextNode, getDescription, getDetails, getErrorCodeForTypeErrors, getFunctionItemType, getFunctionName, getIntegerBounds, getNetCost, getOperandRoles, getRequiredType, getResultItemType, getResultItemType, getRetainedStaticContext, getStaticBaseUriString, getStreamerName, importAttributes, isTrustedResultType, makeCall, makeFunction, makeFunctionCall, makeOptimizedFunctionCall, resultIfEmpty, setArity, setDetails, setRetainedStaticContext, supplyTypeInformation, toShortString, toString, typeCheckCaller`

    - ### Methods inherited from class net.sf.saxon.functions.AbstractFunction

      `atomize, deepEquals, effectiveBooleanValue, getAnnotations, getStringValue, getStringValueCS, isArray, isMap, makeNewContext, simplify, typeCheck`

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface net.sf.saxon.om.Function

      `getGenre`

    - ### Methods inherited from interface net.sf.saxon.om.GroundedValue

      `asIterable, concatenate, containsNode, materialize`

    - ### Methods inherited from interface net.sf.saxon.om.Item

      `getLength, head, isStreamed, itemAt, iterate, reduce, subsequence`

    - ### Methods inherited from interface net.sf.saxon.om.Sequence

      `makeRepeatable`

- - ### Field Detail

    - #### EMPTY_COLLECTION_URI

          public static java.lang.String EMPTY_COLLECTION_URI

      URI representing a collection that is always empty, regardless of any collection URI resolver

    - #### EMPTY_COLLECTION

          public static final ResourceCollection EMPTY_COLLECTION

      An empty collection

  - ### Constructor Detail

    - #### CollectionFn

          public CollectionFn()

  - ### Method Detail

    - #### getSpecialProperties

          public int getSpecialProperties​(Expression[] arguments)

      Description copied from class: `SystemFunction`
      Determine the special properties of this function. The general rule is that a system function call is non-creative unless more details are defined in a subclass.
      Overrides:
        `getSpecialProperties` in class `SystemFunction`
      Parameters:
        `arguments` - the actual arguments supplied in a call to the function

    - #### call

          public Sequence call​(XPathContext context,
                               Sequence[] arguments)
                        throws XPathException

      Dynamic call on collection() function
      Specified by:
        `call` in interface `Callable`
      Specified by:
        `call` in interface `Function`
      Parameters:
        `context` - the dynamic evaluation context
        `arguments` - the values of the arguments, supplied as Sequences.
      Returns:
        the sequence of nodes forming the collection
      Throws:
        `XPathException` - if a dynamic error occurs