docs: @Nullable public String annotationQueryString() {
      StringBuilder result = new StringBuilder();
  
      for (Iterator<Map.Entry<String, String>> i = annotationQuery().entrySet().iterator();
        i.hasNext(); ) {
        Map.Entry<String, String> next = i.next();
        result.append(next.getKey());
        if (!next.getValue().isEmpty()) result.append('=').append(next.getValue());
        if (i.hasNext()) result.append(" and ");
      }
  
      return result.length() > 0 ? result.toString() : null;
    }