   (let [{:keys [concept-type condition keywords]} query
         core-query (condition->elastic condition concept-type)]
     (if-let [keywords (:keywords query)]
-      {:function_score {:functions []
+      {:function_score {:functions (keywords->elastic-filters keywords)
                         :query {:filtered {:query (q/match-all)
                                            :filter core-query}}}}
       {:filtered {:query (q/match-all)

    [{:keys [field value case-sensitive? pattern?]} concept-type]
    (let [field (query-field->elastic-field field concept-type)
          field (if case-sensitive? field (str (name field) ".lowercase"))
          value (if case-sensitive? value (s/lower-case value))]
      (if pattern?
        {:query {:wildcard {field value}}}
        {:term {field value}})))

    [{:keys [field values case-sensitive?]} concept-type]
    (let [field (query-field->elastic-field field concept-type)
          field (if case-sensitive? field (str (name field) ".lowercase"))
          values (if case-sensitive? values (map str/lower-case values))]
      {:terms {field values
               :execution "bool"}}))

