anchor.diff:      {Field, FieldType, _OldVal} = lists:keyfind(Field, 1, TupleList),
       lists:keyreplace(Field, 1, TupleList, {Field, FieldType, NewVal}).
   
  --record(filtercheck, {name,'='}).
  +-record(filtercheck, {name,'=','>'}).
   
   check_where_clause_is_possible(DDL, WhereProps) ->
       Filter1 = proplists:get_value(filter, WhereProps),
  
positive.code:             %% cannot safely remove the filter
              KeyElem = {Field, ToKeyTypeFn([Field]), Val},
              rewrite_where_with_additional_filters_key(
                  Tail, ToKeyTypeFn, StartKey++[KeyElem], EndKey++[KeyElem], true, true, Filter)
      end.
  
  rewrite_where_with_additional_filters_inclusivity_props(SInc, EInc) ->
  
negative.code: rewrite_where_with_additional_filters_key([], _, StartKey, EndKey, SInc, EInc, _) ->
      [{startkey, StartKey}, {endkey, EndKey} | rewrite_where_with_additional_filters_inclusivity_props(SInc, EInc)];
  rewrite_where_with_additional_filters_key([Field|Tail], ToKeyTypeFn, StartKey, EndKey, SInc, EInc, Filter) ->
      case lists:keyfind(Field, 2, Filter) of
          false ->
              %% there is no filter for the next additional field so give up! The
              %% filters must be consecutive, we can't have a '_' inbetween
  