[uf-discuss] Multi-word tagging

James Aylett james at tartarus.org
Sun Dec 30 06:41:35 PST 2007


On Sun, Dec 30, 2007 at 11:36:51AM +0000, Andy Mabbett wrote:

> >if you are building a url "+" is just a space,
> Is it? What about /rock+roll ? Would you use /rock+++roll ?

I'd probably use /rock%20%26%20roll ("rock & roll"), but perhaps
that's just me. If I genuinely wanted 'rock+roll' as my tag, I'd use
/rock%2broll.

Note that '+' is not reserved in path components in URIs, and
additionally only decodes to octet 0x20 (space) in
application/x-www-form-urlencoded, so you can write an intended '+'
(plus sign) differently in a path component and a query
component. Some examples follow:

Tag = "rock & roll"
-------------------

http://example.com/tags/rock%20%26%20roll
http://example.com/find?tag=rock+%26+roll
http://example.com/find?tag=rock%20%26%20roll

Tag = "rock+roll"
-----------------

http://example.com/tags/rock+roll
http://example.com/find?tag=rock%2broll

See RFC 2396 for the (slightly involved) rules for URIs, and the HTML4
spec for application/x-www-form-urlencoded.

Of course, this doesn't mean that an endpoint can't *interpret* a '+'
in a path component however it likes; could be to mean a plus, could
be to mean a space, could be to separate multiple tags, could be to
indicate the presence of aliens.

James

-- 
/--------------------------------------------------------------------------\
  James Aylett                                                  xapian.org
  james at tartarus.org                               uncertaintydivision.org


More information about the microformats-discuss mailing list