RequestArguments embodies those arguments that are provided as part of a request or effect validation on request arguments.
This Role can be consumed in one of two ways.
As this is a parameterized Role,
it accepts a single argument at composition time: 'static'.
This indicates that those parameters should be stored statically and used as a fallback when the current request doesn't provide them.

Takes the raw search arguments and formats them by calling format_search_parameters.
Then builds the related attributes,
preferring request-provided arguments for things like grouped_by over statically configured options.
Finally tacking on the appropriate joins.