It's possible to render a uri template with a variable that doesn't exist.
The result is that an empty string (nothing) is interpolated into the template.
This is probably never intentional - perhaps having a variable explicitly defined as "" but certainly never an implicit empty string.
We ought to raise an exception e.g.
template variable foo is undefined in template http://example.net/{foo}, available variables: bar, baz