Re: current status of URL document...

Daniel W. Connolly (connolly@hal.com)
Wed, 29 Jun 1994 18:19:07 -0500

Message-Id: <9406292319.AA04396@ulua.hal.com>
To: Larry Masinter <masinter@parc.xerox.com>
Subject: Re: current status of URL document...
In-Reply-To: Your message of "Wed, 29 Jun 1994 12:47:56 PDT."
<94Jun29.124801pdt.2760@golden.parc.xerox.com>
Date: Wed, 29 Jun 1994 18:19:07 -0500
From: "Daniel W. Connolly" <connolly@hal.com>

Comments on this draft:

>4. REGISTRATION OF NAMING SCHEMES
>
> A new naming scheme may be introduced by defining a mapping onto a
> conforming URL syntax, using a new prefix. Experimental prefixes
> may be used by mutual agreement between parties, and must start
> with the characters "x-". The scheme name "URN:" is reserved for
> the work in progress on a scheme for more persistent names.

It seems to me that the namespace of URL schemes and the namespace of
MIME external-body access types are isomorphic; I suggest that they be
merged, so that the following are explicitly equivalent:

ftp://host/dir/file
access-type="ftp"; site="host"; directory="dir"; name="file"

http://host/dir/file
access-type="http"; site="host"; path="dir/file"

Here's a comparison of the two namespaces:

URL scheme MIME access-type Protocol
file local-file Local file access
afs Andrew File System
ftp ftp File Transfer protocol
anon-ftp File Transfer protocol
mailto mail-server Electronic mail address
http Hypertext Transfer Protocol
gopher The Gopher protocol
news Usenet news
nntp Usenet news using NNTP access
telnet Telnet
wais Wide Area Information Servers

Also: what's a conforming URL syntax? For example, is the following
a "conforming" URL or not?

URL:x-my-scheme:x?x?t/t/#45?%%

Also: I have seen two separate applications (WWW over DECNET and the
ILU project [see ftp://parcftp.parc.xerox.com/pub/ilu/ilu.html]) that
motivate a way to express the transport inside the URL. The ILU
project also motivates a standard way to parse the "server" and "path"
parts out of a URL independent of the scheme. The ILU project uses
a syntax:

instance-handle@server-id@protocol-info|transport-info

but there is a footnote that says that they would use the URL syntax
if it made sense.
ftp://parcftp.parc.xerox.com/pub/ilu/1.6.4/manual-html/manual_foot.html#FOOT1

In general, in order to keep the URL syntax extensible, we need a certain
amount of "reserved syntax." For example, I believe that most implementations
will treat:

ftp://host/file;type=i

as a file called "file;type=i" (1) because they are broken and they
blindly assume that everything after the //host is the pathname, and
(2) because ';' wasn't "reserved" until recently.

If we are strict about the "common syntax," e.g. we say that things
like:
ftp://host/file;/xxx
are "illegal", then we can at some future time assign a new meaning to
them with confidence that we will not be changing the meaning of any
existing URLs.

>2.1.1. URL Label
>
> URLs that appear in other streams of data must start with a
> constant prefix "URL:". This prefix is used to identify the URL and
> distinguish it from other possible protocol elements.

I still think this is silly and unnecessarily prescriptive, but I see
here that it is not mandatory.

URLs are already widely deployed and it is of no practical use to say
that they begin with URL: when in practice they don't, and there are
no problem that arise from this practice.

By the way... that draft listed TimBL as the editor... shouldn't
Mr. Masinter's name be on there too?

Dan