Aggregation framework