com.saxonica.functions.extfn
Class HighestOrLowest

java.lang.Object
  extended by net.sf.saxon.lib.ExtensionFunctionCall
      extended by com.saxonica.functions.extfn.GeneralFilterFunction.GeneralFilterFunctionCall
          extended by com.saxonica.functions.extfn.HighestOrLowest
All Implemented Interfaces:
Serializable

public class HighestOrLowest
extends GeneralFilterFunction.GeneralFilterFunctionCall

This class implements the saxon:highest() and saxon:lowest() extension functions.

The first argument is a sequence S, the second a function F (defaulting to fn:data). The function returns the item or items I in the input sequence S for which F(I) has its highest/lowest value. It is not possible to specify a collation; the default collation is used when comparing strings.

See Also:
Serialized Form

Field Summary
 
Fields inherited from class com.saxonica.functions.extfn.GeneralFilterFunction.GeneralFilterFunctionCall
atomizer, defaultCollation
 
Constructor Summary
HighestOrLowest()
           
 
Method Summary
 SequenceIterator call(SequenceIterator[] arguments, XPathContext context)
          Evaluate this function call at run-time
 
Methods inherited from class com.saxonica.functions.extfn.GeneralFilterFunction.GeneralFilterFunctionCall
copyLocalData, supplyStaticContext
 
Methods inherited from class net.sf.saxon.lib.ExtensionFunctionCall
effectiveBooleanValue, getContainer, getDefinition, getExecutable, rewrite, setDefinition
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

HighestOrLowest

public HighestOrLowest()
Method Detail

call

public SequenceIterator call(SequenceIterator[] arguments,
                             XPathContext context)
                      throws XPathException
Evaluate this function call at run-time

Specified by:
call in class ExtensionFunctionCall
Parameters:
arguments - The values of the arguments to the function call. Each argument value (which is in general a sequence) is supplied in the form of an iterator over the items in the sequence. If required, the supplied sequence can be materialized by calling, for example, new SequenceExtent(arguments[i]). If the argument is always a singleton, then the single item may be obtained by calling arguments[i].next(). The implementation is not obliged to read all the items in each SequenceIterator if they are not required to compute the result; but if any SequenceIterator is not read to completion, it is good practice to call its close() method.
context - The XPath dynamic evaluation context
Returns:
an iterator over the results of the function. If the result is a single item, it can be returned in the form of a SingletonIterator. If the result is an empty sequence, the method should return EmptyIterator.getInstance()
Throws:
XPathException - if a dynamic error occurs during evaluation of the function. The Saxon run-time code will add information about the error location.


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