private boolean conditionIsEllipsAndOtherNameSpacesOnly(Condition condition) {
        if (condition instanceof EllipsisCondition) return true;
        if (! (condition instanceof CompositeCondition)) return false;
        for (Iterator<Condition> i = ((CompositeCondition)condition).conditionIterator(); i.hasNext(); ) {
            Condition child = i.next();
            if (child.getNameSpace() == null && conditionIsEllipsAndOtherNameSpacesOnly(child))
                return true;
        }
        return false;
    }
Returns true if it is known that this rule matches its own output.
If it does, it will only be evaluated once, to avoid infinite loops.
This default implementation returns false;
container-search/src/main/java/com/yahoo/prelude/semantics/rule/ProductionRule.java