boolean matches = true;
if (dateOp != null) {
if (dateOp.equalsIgnoreCase(XAQLSyntaxParser.KeywordAfter)) {
matches = version.time() > startDate.getTime();
} else if (dateOp.equalsIgnoreCase(XAQLSyntaxParser.KeywordBefore)) {
matches = version.time() < endDate.getTime();
} else if (dateOp.equalsIgnoreCase(XAQLSyntaxParser.KeywordSince)) {
matches = version.time() >= startDate.getTime();
} else if (dateOp.equalsIgnoreCase(XAQLSyntaxParser.KeywordUntil)) {
matches = version.time() <= endDate.getTime();
} else if (dateOp.equalsIgnoreCase(XAQLSyntaxParser.KeywordBetween)) {