return new BinaryJoined(BinaryOperator.OR, components);
} else if (q instanceof EONotQualifier) {
Sentence component = convert(((EONotQualifier) q).qualifier());
return new Negation(component);
} else if (q instanceof EOKeyValueQualifier) {
return convertComparison((EOKeyValueQualifier) q);
} else {
throw new IllegalArgumentException();
}