People talk about URLs, URIs, and URNs as if they're different things, but they look the same to the naked eye.
What are the distinguishable differences between them?
Say I have a URL
http://example.com/query?q=
and I have a query entered by the user such as:
random word £500 bank $
I want the result to be a properly encoded URL:
http://example.com/query?q=random%20…