private static String toYqlString(Query query)  {
        StringBuilder yqlBuilder = new StringBuilder("select * from sources * where predicate(boolean, ");
        yqlBuilder
                .append(createYqlFormatSubqueryMapString(query.valuesForSubqueries, query.isSingleQuery))
                .append(", ")
                .append(createYqlFormatSubqueryMapString(query.rangesForSubqueries, query.isSingleQuery))
                .append(");");
        return "/search/?query&nocache&yql=" + UrlEscapers.urlFormParameterEscaper().escape(yqlBuilder.toString());
    }
Converts a targeting query (the format provided by targeting team) into a file of Vespa queries formatted as URLs.

The format is the following:
- Each line represents one bulk query (upto 64 subqueries)
- Each bulk query has a set of subqueries separated by ";"
- Each subquery is of the format: attrName\tattrValue\tsubqueryIndex\tisRangeTerm;
- Some attributes have no value.
- Value may contain ";"

@author bjorncs
predicate-search/src/main/java/com/yahoo/search/predicate/utils/TargetingQueryFileConverter.java