Yeah... I really *don't* want the caller to have to know about the implementation details of the paging options, though.  But I suppose the validation could be extracted into a predicate function somewhere and then the callers could call it before they call any of the sql functions.

I think there is going to be a lot of duplicate exception code unless I allow that to be abstracted into a function that all of the various endpoints can call, but I think you're right that that doesn't necessarily need to be a function in the jdbc namespace.