Interface Summary Interface Description AccumulatorAn Accumulator is the processor for each section of a group, so there is one Accumulator for each group key. AccumulatorFactoryFactory to create accumulators. AggregatorAn Aggregator is the processor for the whole result stream.
Class Summary Class Description AccumulatorExprAccumulator that passes down every value of an expression AggAvg AggAvgDistinct AggCount AggCountDistinct AggCountVar AggCountVarDistinct AggCustomSyntax element and framework execution for custom aggregates. AggGroupConcat AggGroupConcatDistinct AggMax AggMaxDistinct AggMedian AggMedianDistinct AggMin AggMinDistinct AggMode AggModeDistinct AggNullThe null aggregate (which can't be written in SPARQL) calculates nothing but does help remember the group key. AggregateRegistryRegistry of custom aggregates There is only a single global registry of aggregates - it affects parsing and parsing happens before Context or Execution makes sense. AggregatorBaseAggregate that does everything except the per-group aggregation that is needed for each operation AggregatorFactory AggSample AggSampleDistinct AggSum AggSumDistinct ArgsAn Args is an ExprList with a flag for DISTINCT.