public boolean matches(RuleEvaluation e) {
        if (e.getTraceLevel() >= 3) {
            e.trace(3,"Evaluating '" + this + "' at " + e.currentItem());
            e.indentTrace();
        }

        boolean matches = condition.matches(e);

        if (e.getTraceLevel() >= 3) {
            e.unindentTrace();
            if (matches)
                e.trace(3,"Matched '" + this + "' at " + e.previousItem());
            else if (e.getTraceLevel() >= 4)
                e.trace(4,"Did not match '" + this + "' at " + e.currentItem());
        }
        return matches;
    }
A condition given a name which enables it to be referenced from other conditions.

@author bratseth
container-search/src/main/java/com/yahoo/prelude/semantics/rule/NamedCondition.java