What are your thoughts on the proper design of a WCF REST service that performs a search? Search functionality is essentially a GET, meaning its goal is to get data from the server - not to set data.
However, search criteria can sometimes be complex - for example a user might want to search on 3 different search criteria. If a client needs the ability to perform a combination search on 3 different search criteria then a message request structure seems like the best solution to encapsulate this request.
However, GET doesn't support request messages meaning a POST would be needed to process a message request structure. So how do you normally go about implementing a REST web service for a complex search? Do you use a POST and send the criteria as a request message (which seems to violate REST prinicples) or do you use a GET and use some other method to pass the criteria (which seems like a possible kludge)?