private MatchResult evaluateMatch(List inputs, EvaluationCtx context) {
// first off, evaluate the function
EvaluationResult result = function.evaluate(inputs, context);
// if it was indeterminate, then that's what we return immediately
if (result.indeterminate())
return new MatchResult(MatchResult.INDETERMINATE,
result.getStatus());
// otherwise, we figure out if it was a match
BooleanAttribute bool = (BooleanAttribute)(result.getAttributeValue());