/**
   * Convert the query to Xml params that are compatible with the old KeywordSearch API
   *
   * @return parameters as Xml
   */
  public Element toXmlParams() {
    Element params = new Element("params");

    addXmlParam(params, XmlParams.offset, "" + offset);
    addXmlParam(params, XmlParams.maxResults, "" + maxResults);
    if (thesauriNames.isEmpty()) {
      if (thesauriDomainName != null) {
        addXmlParam(params, XmlParams.pType, thesauriDomainName);
      }
    } else {
      for (String name : thesauriNames) {
        addXmlParam(params, XmlParams.pThesauri, name);
      }
    }

    for (String lang : langs) {
      addXmlParam(params, XmlParams.pLang, lang);
    }

    for (SearchClause search : searchClauses) {
      search.addXmlParams(params);
    }

    return params;
  }