   (:require [clojure.set :as set]
             [cmr.common.services.errors :as errors]
             [cmr.search.models.query :as qm]
+            [cmr.search.data.query-to-elastic :as q2e]
             [cmr.common.date-time-parser :as dt-parser]
             [cmr.common.util :as u]))
 

             :version :collection-query
             :updated-since :updated-since
             :temporal :temporal
             :platform :string
             :instrument :string
             :sensor :string
             :project :string
             :cloud-cover :num-range
             :concept-id :string

       :case-sensitive? (not= "true" (get-in options [param :ignore-case]))
       :pattern? (= "true" (get-in options [param :pattern]))})))

;; Construct an inheritance query condition for granules.
;; This query needs to respect the inheritance of its dataset's corresponding fields.
(defmethod parameter->condition :inheritance
  [concept-type param value options]
  (let [field-condition (parameter->condition :collection param value options)]
    (qm/or-conds
      [field-condition
       (qm/and-conds
         [(qm/->CollectionQueryCondition field-condition)
          (qm/map->MissingCondition {:field (q2e/query-field->elastic-field param concept-type)})])])))

(defmethod parameter->condition :updated-since
  [concept-type param value options]
