anchor.diff:  
   
   %% Add an ORDER clause.
  +add_order(Order, Search) when is_atom(Order) ->
  +    add_order(atom_to_list(Order), Search);
  +add_order(Order, Search) when is_binary(Order) ->
  +    add_order(binary_to_list(Order), Search);
   add_order("seq", Search) ->
       case proplists:get_value(edge, Search#search_sql.tables) of
           L when is_list(L) -> add_order(L++".seq", Search);
  
positive.code: empty_term(_) ->
      false.
  
  
  parse_sort([], Result) ->
      Result;
  parse_sort([{sort, Sort}|Rest], Result) ->
      Sort1 = case is_atom(Sort) of
                  true -> atom_to_list(Sort);
                  false -> Sort
              end,
      parse_sort(Rest, add_order(Sort1, Result));
  parse_sort([_|Rest], Result) ->
      parse_sort(Rest, Result).
  
  
  parse_query([], _Context, Result) ->
      Result;
  
  
negative.code: 
  %% sort=fieldname
  %% Order by a given field. Putting a '-' in front of the field name reverts the ordering.
  parse_query([{sort, Sort}|Rest], Context, Result) ->
      parse_query(Rest, Context, add_order(Sort,Result));
  
  %% custompivot=tablename
  %% Add a join on the given custom pivot table.
  