Message-Id: <9502081615.AA16799@Accurate.COM>
To: "Roy T. Fielding" <fielding@avron.ics.uci.edu>
Subject: Re: A content-id URL scheme
In-Reply-To: Your message of "Tue, 07 Feb 1995 00:33:44 PST."
<9502070033.aa10206@paris.ics.uci.edu>
Date: Wed, 08 Feb 1995 11:15:40 -0500
From: Ed Levinson <elevinso@Accurate.COM>
Roy,
The problem with explicitly dealing with escape characters in the
syntax is that it unneccessarily mixes 822/1521/1522 and 1738 syntaxes.
Addr-spec is an 822 item and when I go to 1522 and 1738 I see
different escape mechanisms.
In my view the cidurl could appear in 822/1521 message headers and
messages. I'd like the spec to be usable in both environments. Has
the issue of the different escape mechanisms (1521: =hh, 1738: %hh)
already been dealt with? What was the result?
I'd prefer to say something like
cid-spec := addr-spec ; special characters must be escaped
which finesses the problem. But basically, I just find the dual
mechanisms confusing. We could make the arguement that, after all,
cid:... is a URL, therefore 1738 escapes apply; I just find that
arguement unsatisfying. I'd like not to add to the confusion.
Best.../Ed
On Tue, 07 Feb 1995 00:33:44 PST "Roy T. Fielding" wrote:
> Ed writes:
> ...
> >> ... cid URLs should be capable of referencing
> >> any possible Content-ID. Any characters that are not allowed in a URL can
> >> be escaped using the %hex encoding method.
> >
> > I agree, using escapes make sense. Why not use the general syntax from
> > 1521/822 and have the following?
> >
> > cidurl = "cid" ":" cid-spec
> > cid-spec = addr-spec ; RFC 822, globally unique
>
> Because that BNF would allow illegal characters in the URL. The long BNF
> I suggested is the same syntax, but replaces all illegal characters with
> their hex equivalents. The following BNF is better, IMHO, because it
> is simple and represents a safe superset of any possible Content-ID.
>
> ----------------------------------------------------------------------
> cidurl = "cid" ":" cid-spec
>
> cid-spec = local-part "@" domain ; globally unique
>
> local-part = 1*cidchar
> domain = 1*cidchar
>
> cidchar = uchar | ";" | "/" | "?" | ":" | "&" | "="
> uchar = <as defined in RFC 1738>
> ----------------------------------------------------------------------
>
> However, you may want to replace "cid-spec" and "cidchar" with
> "addr-spec" and "addrchar", and then the production can be reused to
> define the message-id URL as
>
> midurl = "mid" ":" addr-spec
>
> thus killing two birds with one BNF.
>
>
> .......Roy Fielding ICS Grad Student, University of California, Irvine USA
> <fielding@ics.uci.edu>
> <URL:http://www.ics.uci.edu/dir/grad/Software/fielding>