Ask HN: Why are commas not allowed in urls?

8 points by tronium ↗ HN
I've always been curious why certain characters (e.g. commas) haven't been allowed in the url. I've never seen one used in a specialized way at all, are they just nonexistent in usage? If so, why?

8 comments

[ 2.5 ms ] story [ 29.0 ms ] thread
My best guess. From RFC 3986 (link below)

For example, the semicolon (";") and equals ("=") reserved characters are often used to delimit parameters and parameter values applicable to that segment. The comma (",") reserved character is often used for similar purposes. For example, one URI producer might use a segment such as "name;v=1.1" to indicate a reference to version 1.1 of "name", whereas another might use a segment such as "name,1.1" to indicate the same.

http://www.ietf.org/rfc/rfc3986.txt

EDIT: This RFC is for URIs and your question was about URLs. URLs are generally considered a subset of URIs, but according to this SO answer, that might be open to debate. http://stackoverflow.com/questions/176264/whats-the-differen...

Thanks dave, that helped explain a little. However, I still have never actually seen a comma used as a parameter in a URL, do you have an example?
Sorry for the late response. I don't have an example, sorry.

Commas should not be used in URLs because they are so frequently used as delimiters in other scenarios. That's not to say that it can't work (so I'm sure there are some URLs with commas), but according to that RFC we shouldn't use them. Any URL with commas in it would be in violation of that spec. But hey, this is the web, we like to break specs all the time! ;-) It's my impression that this is more for sanity reasons than technical limitations.

Did you know that apostrophes "'" are allowed in email addresses for the name ? I saw one on a business card once and said: That can't work ! But, it does. At least it did back in 2007...