"finger" and URN -> URL

JC Touvet <Jean-Christophe.Touvet@inria.fr>
Errors-To: listmaster@www0.cern.ch
Date: Thu, 17 Feb 1994 11:51:45 --100
Message-id: <199402171048.AA14044@perignon.inria.fr>
Errors-To: listmaster@www0.cern.ch
Reply-To: Jean-Christophe.Touvet@inria.fr
Originator: www-talk@info.cern.ch
Sender: www-talk@www0.cern.ch
Precedence: bulk
From: JC Touvet <Jean-Christophe.Touvet@inria.fr>
To: Multiple recipients of list <www-talk@www0.cern.ch>
Subject: "finger" and URN -> URL
X-Listprocessor-Version: 6.0c -- ListProcessor by Anastasios Kotsikonas
Content-Length: 3595

 Hello happy Webbers,

 you certainly wonder what could be in my mind the link between yesterday's
"finger" and URNs discussions.

 Dan suggested:
>       ... click <A HREF="finger://my.domain/myloginname">here</a>...
> I'm not sure about the URL syntax for a finger query... you should check
> the spec or the code or something.

 and Dave wrote:

> By using URNs we can decouple this from the document format itself. I have
> recently posted a note on how this can be achieved using a DNS like
> distributed name lookup scheme for lifetime identifiers and a mechanism for
> selecting between variants. This could be available by the end of this year.

 Now, let's imagine we have a very strong directory service that:

	- provides white or yellow pages informations
	- has powerful searching capabilities
	- can easily store Web URLs
	- is the perfect response to a "distributed name lookup scheme"

 And, on the other hand, a protocol that:

	- allows you to access this directory service
	- but is not restricted to it (finger, whois+*... compatibility)
	- uses User Friendly Naming
	- has a centroid approach of servers networking
	- is so simple that a nice client module could be easily integrated in
	the common WWW library

 maybe we'd have a solution to both problems.

 But those things exist yet, namely X.500 and SOLO:

	- X.500 is THE directory service, but it's HUGE to implement, even as
	a client.

	- SOLO has only one command: SOLO <ufn>?attributes. Its results are
	easily parsable, and fit perfectly in an hypertext browser: if the
	name is not found, we get suggestions, and we can create hypertext
	links with that.

 On server side, you can implement SOLO just a la finger, but you can
also build an X.500 access server with it. Thus we have done a WWW/SOLO
gateway that provides X.500 and SOLO servers access from a WWW client. And, of
course, we have put URL attributes in our X.500 directory.

 But more efficient is is what we're doing now: add to libwww a module (smaller
than gopher one) that:

 - given a "solo://server/" URL
		example "solo://mitsou.inria.fr/"

	returns you a FORM to query the server

 - given a "solo://server/ufn?attributes" URL
 		example "solo://mitsou.inria.fr/huitema?*"

	sends the query to the server, and parses results:
	 - if suggestions returned -> hypertext links to other queries
	 - if name found -> HTML result
	 - if URL attributes found in entry -> hypertext links
	 - and if a "SmallPhoto" URL found -> include it in result
	 - could be extended (suggestions ?), but we want to keep it SIMPLE

 - given a "x500:ufn?attributes" URL
		example "x500:kostner,nexor,england?phone,address,email,url"

	does the same, but using an X.500 access server defined in your
	environment (which must be a SOLO server, of course ;-). So, you can
	use the nearest entry point in X.500 world.

 - given a "urn:name" URL
		example "urn:CN=testdoc,O=inria,C=fr"

	returns the latest version of a document using the same X.500 access

 - given a "urn:name#version" URL
		example "urn:CN=testdoc,O=inria,C=fr#1.0.1"

	returns the named version of the document

 We are submitting a paper on this topic for the WWW-94 conference, so if
you're interested in it, you'll find further explanations on CERN's server.

 If you want more informations about SOLO, have a look at the draft RFC:



<A HREF="solo://perignon.inria.fr:2222/touvet?*">	JC Touvet	 </A>
<A HREF="x500:pap,inria,france?*">			Paul-Andre Pays	 </A>
<A HREF="urn:CN=Solo/WWW%20paper,O=inria,C=fr">		The paper (soon) </A>