Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## net.sf.saxon.functions
Class Collection

    java.lang.Object
      net.sf.saxon.expr.Expression
          net.sf.saxon.expr.FunctionCall
              net.sf.saxon.functions.SystemFunction
                  net.sf.saxon.functions.Collection

All Implemented Interfaces:
  Serializable, SourceLocator, LocationProvider, SaxonLocator, CallableExpression, InstructionInfo, Locator

    public class Collection

extends SystemFunction
implements CallableExpression

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

See Also:
  Serialized Form

Field Summary
`static String` | `EMPTY_COLLECTION` URI representing a collection that is always empty, regardless of any collection URI resolver

Fields inherited from class net.sf.saxon.functions.SystemFunction
`operation`

Fields inherited from class net.sf.saxon.expr.FunctionCall
`argument`

Fields inherited from class net.sf.saxon.expr.Expression
`EFFECTIVE_BOOLEAN_VALUE, EVALUATE_METHOD, EVENT_FEED_METHOD, ITEM_FEED_METHOD, ITERATE_METHOD, locationId, MAX_SEQUENCE_LENGTH, MAX_STRING_LENGTH, PROCESS_METHOD, PUSH_SELECTION, staticProperties, UNBOUNDED_LOWER, UNBOUNDED_UPPER, WATCH_METHOD`

Constructor Summary
`Collection()`

Method Summary
`PathMap.PathMapNodeSet` | `addToPathMap(PathMap pathMap, PathMap.PathMapNodeSet pathMapNodeSet)` Add a representation of this expression to a PathMap.
`SequenceIterator` | `call(SequenceIterator[] arguments, XPathContext context)` Evaluate the expression
`void` | `checkArguments(ExpressionVisitor visitor)` Method called during static type checking
`int` | `computeSpecialProperties()` Determine the special properties of this expression.
`static SequenceIterator` | `getResolverResults(SequenceIterator iter, String baseURI, XPathContext context, SourceLocator locator)` Return the results of iterating over the results returned by the CollectionURIResolver.
`String` | `getStaticBaseURI()`
`SequenceIterator<Item>` | `iterate(XPathContext context)` Iterate over the contents of the collection
`Expression` | `preEvaluate(ExpressionVisitor visitor)` preEvaluate: this method suppresses compile-time evaluation by doing nothing

Methods inherited from class net.sf.saxon.functions.SystemFunction
`addContextDocumentArgument, addDocToPathMap, computeCardinality, copy, equals, getDetails, getErrorCodeForTypeErrors, getImplementationMethod, getItemType, getOperation, getRequiredType, makeSystemFunction, optimize, setDetails, useContextItemAsDefault`

Methods inherited from class net.sf.saxon.expr.FunctionCall
`addExternalFunctionCallToPathMap, checkArgumentCount, explain, getArguments, getDisplayName, getExpressionName, getFunctionName, getNumberOfArguments, hashCode, iterateSubExpressions, promote, replaceSubExpression, setArguments, setFunctionName, simplify, simplifyArguments, toString, typeCheck`

Methods inherited from class net.sf.saxon.expr.Expression
`adoptChildExpression, checkForUpdatingSubexpressions, checkPermittedContents, computeDependencies, computeStaticProperties, doPromotion, dynamicError, effectiveBooleanValue, evaluateAsString, evaluateItem, evaluatePendingUpdates, explain, getCardinality, getColumnNumber, getColumnNumber, getConstructType, getContainer, getDependencies, getEvaluationMethod, getExecutable, getHostLanguage, getIntegerBounds, getIntrinsicDependencies, getLineNumber, getLineNumber, getLocationId, getLocationProvider, getObjectName, getProperties, getProperty, getPublicId, getSlotsUsed, getSpecialProperties, getSystemId, getSystemId, hasLoopingSubexpression, hasVariableBinding, implementsStaticTypeCheck, isSubtreeExpression, isUpdatingExpression, isVacuousExpression, iterateEvents, iterateSameFocusSubExpressions, markTailFunctionCalls, process, resetLocalStaticProperties, setContainer, setEvaluationMethod, setFiltered, setFlattened, setLocationId, staticTypeCheck, suppressValidation, typeError`

Methods inherited from class java.lang.Object
`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

Methods inherited from interface net.sf.saxon.expr.CallableExpression
`getArguments`

Field Detail

### EMPTY_COLLECTION

    public static String EMPTY_COLLECTION

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

Constructor Detail

### Collection

    public Collection()

Method Detail

### getStaticBaseURI

    public String getStaticBaseURI()

### checkArguments

    public void checkArguments(ExpressionVisitor visitor)
                        throws XPathException

  Description copied from class: `SystemFunction`
  Method called during static type checking

  Overrides:
    `checkArguments` in class `SystemFunction`
  Parameters:
    `visitor` - the expression visitor
  Throws:
    `XPathException` - if the arguments are incorrect

### computeSpecialProperties

    public int computeSpecialProperties()

  Description copied from class: `SystemFunction`
  Determine the special properties of this expression. The general rule is that a system function call is non-creative if its return type is atomic, or if all its arguments are non-creative. This is overridden for the generate-id() function, which is considered creative if its operand is creative (because the result depends on the identity of the operand)

  Overrides:
    `computeSpecialProperties` in class `SystemFunction`
  Returns:
    the special properties, as a bit-significant integer

### preEvaluate

    public Expression preEvaluate(ExpressionVisitor visitor)

  preEvaluate: this method suppresses compile-time evaluation by doing nothing

  Overrides:
    `preEvaluate` in class `FunctionCall`
  Parameters:
    `visitor` - an expression visitor
  Returns:
    the result of the early evaluation, or the original expression, or potentially a simplified expression

### addToPathMap

    public PathMap.PathMapNodeSet addToPathMap(PathMap pathMap,
                                               PathMap.PathMapNodeSet pathMapNodeSet)

  Add a representation of this expression to a PathMap. The PathMap captures a map of the nodes visited by an expression in a source tree.

  Overrides:
    `addToPathMap` in class `Expression`
  Parameters:
    `pathMap` - the PathMap to which the expression should be added
    `pathMapNodeSet` - the PathMapNodeSet to which the paths embodied in this expression should be added
  Returns:
    the pathMapNode representing the focus established by this expression, in the case where this expression is the first operand of a path expression or filter expression

### iterate

    public SequenceIterator<Item> iterate(XPathContext context)
                                   throws XPathException

  Iterate over the contents of the collection

  Overrides:
    `iterate` in class `Expression`
  Parameters:
    `context` - the dynamic context
  Returns:
    an iterator, whose items will always be nodes (typically but not necessarily document nodes)
  Throws:
    `XPathException`

### getResolverResults

    public static SequenceIterator getResolverResults(SequenceIterator iter,
                                                      String baseURI,
                                                      XPathContext context,
                                                      SourceLocator locator)

  Return the results of iterating over the results returned by the CollectionURIResolver.

  Note, this method is called by generated code

  Parameters:
    `iter` - iterator over the results of the CollectionURIResolver
    `baseURI` - the base URI
    `context` - the dynamic context
    `locator` - location of the instruction
  Returns:
    an iterator over the documents in the collection.

### call

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

  Description copied from interface: `CallableExpression`
  Evaluate the expression

  Specified by:
    `call` in interface `CallableExpression`
  Parameters:
    `arguments` - the values of the arguments, supplied as SequenceIterators
    `context` - the dynamic evaluation context
  Returns:
    the result of the evaluation, in the form of a SequenceIterator
  Throws:
    `XPathException` - if a dynamic error occurs during the evaluation of the expression

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright (c) 2004-2011 Saxonica Limited. All rights reserved.