Re: Relative URLs, // and ;

Erik Guttman (
Thu, 06 Feb 1997 16:25:11 -0800

Message-Id: <>
Date: Thu, 06 Feb 1997 16:25:11 -0800
From: Erik Guttman <>
Subject: Re: Relative URLs, // and ;
Cc: Tim Berners-Lee <>

How could one express an attribute which has multiple values?
say we have:

//;features=roads<some syntax>schools<some

Could the <some syntax> be a "+", say?

I am working on the Service Location Protocol (SLP).  
We associate attributes with services.  The services are 
identified using a service: URL scheme.  Since these 
attributes have multiple values and may be quite extensive 
in number and size we include a mechanism in SLP to register
and transfer them in replies outside of the URL. It may be
useful to include SLP attributes in the service: URL, 
for small numbers of reasonably sized attributes.

The discussion makes it clear that attributes can be used
quite effectively in URLs, but only discusses single valued


Erik Guttman
Sun Microsystems

>> >Daniel LaLiberte wrote:

>> > How is ';' involved in relative URLs?

>Tim Berners-Lee wrote:
>Semicolons were introduced to allow elements to be specified by name rather
>position, for spaces which were best seen as matrices rather than trees.
>In this case it is only sensible for relative URls which start with ";" to
>take a
>set of attribute values which are different.  This implies
>	1. attributes can only occur once (unless you have a syntax for removing a
>	   particular occurrence) and
>	2. a missed value is equivalent to an unspecified value
>	(so you can remove an occurrence by setting its value to empty)
>	3. attributes are unordered
>So relative to
>	//;scale=50000;roads=main
>or the equivalent
>	//;roads=main;scale=50000
>URI	;scale=25000
>gives	//;scale=25000;roads=main
>and	;roads
>gives	//;scale=50000
>and	;roads=
>gives	//;scale=50000;roads=
>and	;rivers=all
>gives	//;scale=50000;roads=main;rivers=all