app/openbel/api/helpers/filters.rb
def parse_filters(filter_query_params)
      filter_query_params.map { |filter_string|
        begin
          MultiJson.load filter_string
        rescue MultiJson::ParseError => ex
          "#{ex} (filter: #{filter_string})"
        end
      }.partition { |filter|
        filter.is_a?(Hash)
      }
    end
def parse_filters(filter_query_params)
      filter_query_params.map { |filter_string|
        begin
          MultiJson.load filter_string
        rescue MultiJson::ParseError => ex
          "#{ex} (filter: #{filter_string})"
        end
      }.partition { |filter|
        filter.is_a?(Hash)
      }
    end
Parse filter query parameters and partition into an {Array}. The first
 index will contain the valid filters and the second index will contain
 the invalid filters.

 @param [Array<String>] filter_query_params an array of filter strings
        encoded in JSON
 @return [Array<Array<Hash>, Array<String>] the first index holds the
         valid, filter {Hash hashes}; the second index holds the invalid,
         filter {String strings}