> Deeper nesting is not typically used. It would be very nontrivial to deserialize such URL parameters back into the object.
Did you mean to write “very trivial” here? This is the same formatting as used when submitting forms with array and/or dictionary data, and further nesting commonly adds further brackets `like[foo][bar]=baz`. IME the querystring [0] package is great for this.