Expand description
Aggregation support for backward chaining queries
Provides aggregate functions like COUNT, SUM, AVG, MIN, MAX for use in backward chaining queries.
§Example
ⓘ
use rust_rule_engine::backward::*;
let mut engine = BackwardEngine::new(kb);
// Count all employees
let count = engine.query_aggregate(
"count(?x) WHERE employee(?x)",
&mut facts
)?;
// Sum of all salaries
let total = engine.query_aggregate(
"sum(?salary) WHERE salary(?name, ?salary)",
&mut facts
)?;
// Average salary
let avg = engine.query_aggregate(
"avg(?salary) WHERE salary(?name, ?salary) AND ?salary > 50000",
&mut facts
)?;Structs§
- Aggregate
Query - Parsed aggregate query
Enums§
- Aggregate
Function - Aggregate function types
Functions§
- apply_
aggregate - Apply aggregate function to solutions
- parse_
aggregate_ query - Parse an aggregate query string