Class Aggregate

    • Constructor Detail

      • Aggregate

        public Aggregate()
    • Method Detail

      • getItemType

        public ItemType getItemType​(TypeHierarchy th)
        Determine the item type of the value returned by the function
        Overrides:
        getItemType in class SystemFunction
        Parameters:
        th - the type hierarchy cache
        Returns:
        a value such as Type.STRING, Type.BOOLEAN, Type.NUMBER, Type.NODE, or Type.ITEM (meaning not known at compile time)
      • evaluateItem

        public Item evaluateItem​(XPathContext context)
                          throws XPathException
        Evaluate the function
        Specified by:
        evaluateItem in interface EvaluableItem
        Overrides:
        evaluateItem in class Expression
        Parameters:
        context - The context in which the expression is to be evaluated
        Returns:
        the node or atomic value that results from evaluating the expression; or null to indicate that the result is an empty sequence
        Throws:
        XPathException - if any dynamic error occurs evaluating the expression
      • total

        public static AtomicValue total​(SequenceIterator iter,
                                        XPathContext context,
                                        javax.xml.transform.SourceLocator location)
                                 throws XPathException
        Calculate the total of a sequence.
        Parameters:
        iter - iterator over the items to be totalled
        context - the XPath dynamic context
        location - location of the expression in the source for diagnostics
        Returns:
        the total, according to the rules of the XPath sum() function, but returning null if the sequence is empty. (It's then up to the caller to decide what the correct result is for an empty sequence.
        Throws:
        XPathException
      • average

        public static AtomicValue average​(SequenceIterator iter,
                                          XPathContext context,
                                          javax.xml.transform.SourceLocator location)
                                   throws XPathException
        Calculate average
        Parameters:
        iter - iterator over the items to be totalled
        context - the XPath dynamic context
        location - location of the expression in the source for diagnostics
        Returns:
        the average of the values
        Throws:
        XPathException
      • count

        public static int count​(SequenceIterator iter)
                         throws XPathException
        Get the number of items in a sequence identified by a SequenceIterator
        Parameters:
        iter - The SequenceIterator. This method moves the current position of the supplied iterator; if this isn't safe, make a copy of the iterator first by calling getAnother(). The supplied iterator must be positioned before the first item (there must have been no call on next()).
        Returns:
        the number of items in the underlying sequence
        Throws:
        XPathException - if a failure occurs reading the input sequence
      • isCountFunction

        public static boolean isCountFunction​(Expression exp)
        Determine whether a given expression is a call to the count() function
        Parameters:
        exp - an expression to be examined
        Returns:
        true if the expression is a call to the count() function