OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   Re: [xml-dev] OT: Where did URI pipe symbol hack originate?

[ Lists Home | Date Index | Thread Index ]

>Hah!  We've got people looking at that same RFC and saying colons are
>reserved!

Oh yes, they're reserved all right:

   reserved    = ";" | "/" | "?" | ":" | "@" | "&" | "=" | "+" |
                "$" | ","

But "reserved" doesn't mean what you might guess:

   The "reserved" syntax class above refers to those characters that are
   allowed within a URI, but which may not be allowed within a
   particular component of the generic URI syntax; they are used as
   delimiters of the components described in Section 3.

And in the path part of the URI, they don't have any syntactic meaning
so they're allowed:

   abs_path      = "/"  path_segments

   [...]

   path          = [ abs_path | opaque_part ]
   path_segments = segment *( "/" segment )
   segment       = *pchar *( ";" param )
   param         = *pchar

   pchar         = unreserved | escaped |
                   ":" | "@" | "&" | "=" | "+" | "$" | ","

On the other hand, you'll see that the production for rel_path makes
the first segment special; you can't use

  C:/foo

as a relative URI, because it would be confused with a scheme called "C".
So you might want to escape colons when generating relative URIs.

-- Richard





 

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS