Re: URN single or multiple variants (was: four-part harmony?)

John A. Kunze (
Thu, 23 Sep 93 11:41:41 -0700

> From: Dirk Herr-Hoyman <>
> Date: Thu, 23 Sep 1993 08:21:20 -36803936 (CDT)
> > These properties I've collectively called the variant specifier. Now to
> > continue with the list of cautious premises.
> >
> > (13)To paraphrase Tim, given a URN you should be able to ask some server

Oops, I mean, to contraphrase Tim :-), remembering that contrapuntalism
is not antithetical to harmony!

> > to return you one or more variant specifiers, one for each variant.
> > You select the variant you want, and pass it off together with the
> > URN when you need to lookup the corresponding URL.

I should have said "... to lookup a list of corresponding URLs".

> >
> > (17)The variant specifier is thus a thing that optionally accompanies
> > a URN, at the same level in our UR* scheme of things.
> >
> > (18)We need a new member of the UR* family for variants. How about URV?
> >
> So, what you are saying is that
> and that a URL refers to a single instance of a document at a single
> locatation.

No, I'm not saything that. The pair <URN, URV> maps to one or more URLs.
More like a function call, urn2urlist(URN, URV) = {URL1, URL2, ... }.

For example, <"War and Peace", ASCII> might be in five locations (5 URLs),
and <"War and Peace", PostScript> might be in three locations (3 URLs).

> Although there may be some use of a URV within hypertext (and other
> links), I would think that the typical case would be to just use an
> unadorned URN, since I wouldn't know which variant would be wanted until
> retrieval time. It would seem that some sort of negotiation/protocol
> would be useful here, even something as simple as what Gopher+ does
> (return list of all variants/views). This would allow for smart clients
> to do the negiotiation.

The unadorned URN will be *a* typical case, say within hypertext or
within a search result record. I think of that as the export case,
since that will be how many servers present links and references.

However, another typical case arises out of client collection activities,
which I think of as the import case. The client may have very strong
notions about which exact URV it wants for a given URN that it is adding
to a local pile of links. Next time it goes to de-reference those saved
links it will not want to redo all the variant selection it did once
before, which could have been a quite painstaking process.