org.deri.iris.evaluation
Interface IEvaluationStrategy
- All Known Implementing Classes:
- OLDTEvaluationStrategy, OptimisedProgramStrategyAdaptor, SLDNFEvaluationStrategy, StratifiedBottomUpEvaluationStrategy, WellFoundedEvaluationStrategy
public interface IEvaluationStrategy
Interface for all evaluation strategy implementations.
evaluateQuery
IRelation evaluateQuery(IQuery query,
List<IVariable> outputVariables)
throws ProgramNotStratifiedException,
RuleUnsafeException,
EvaluationException
- Evaluate a query and optionally return the variable bindings.
- Parameters:
query - The query to evaluate.outputVariables - If this is not null, it will be filled with the variable bindings
of the result relation, i.e. there will be one variable instance for each term
(in one row) of the results set
- Returns:
- The relation of results.
- Throws:
ProgramNotStratifiedException - If the program (knowledge-base)can not be stratified
RuleUnsafeException - If the program (knowledge-base) contains an unsafe rule.
EvaluationException - If the evaluation fails for any other reason.