On 1/6/2004 2:22 PM, Mark Crispin wrote:

> As far as creating namespaces themselves, these are usually an artifact
> of the implementation software and not a level of hierarchy.  It may be
> helpful to think of namespaces as being like the D: and E: drives in 
> Windows with the default namespace being the C: drive.

Right, they are partitions of the underlying mailstore. The partitions may
be tied to one or more filesystems, or they may be logical representations
of a filesystem (eg, netnews) or some representation of a database
subsystem, or whatever.

> It's perfectly valid for an implementation not to have any namespaces; 
> think of UNIX which only has one filesystem.

Usually. Remote filesystems can have different semantics in some cases (a
DOS floppy, for example), although most of the time the filesystems are
homogonized.

With IMAP, the visible semantic differences tend to be in the separator
syntaxes, such as a newsgroup partition having a different separator
syntax than the personal partitions (even if the same filesystem is in use
for both of them).

Obviously I'm not telling anybody anything new here, but its also obvious
that partitions are discrete units of data (they can even be queried for
some attributes, but this is very limited functionality), and my feeling
is that it would be useful to allow their management as such.

>> The largest addressable unit of data in the protocol is the folder,
>> not the overall mailstore or its individual partitions that hold the
>> different folders and hierarchies. Is this a weakness in the 
>> protocol, and should this support be added?
> 
> It's difficult to imagine how a protocol can manage creation of
> namespaces that refer to server based separate hierarchies.  Either the
> server has netnews or it doesn't.

Well, I don't see a lot of value in that particular example either, but
that's lots of value in being able to create an #archives partition on the
fly, assuming that the mailstore allows it.

The use of special-strings for partition mapping is something separate,
having more to do with the implementation than with the functionality I'm
talking about. Servers like UW-IMAP don't have to be excluded here --
special-strings can be mapped, while undefined partitions can be rooted
somewhere like /var/spool/imap -- but that's again product specific.

-- 
Eric A. Hall                                        http://www.ehsco.com/
Internet Core Protocols          http://www.oreilly.com/catalog/coreprot/

Reply via email to