844 lines
30 KiB
Plaintext
844 lines
30 KiB
Plaintext
|
|
|
|
|
|
|
|
|
|
|
|
Network Working Group G. Neufeld
|
|
Request for Comments: 2369 Nisto
|
|
Category: Standards Track J. Baer
|
|
SkyWeyr Technologies
|
|
July 1998
|
|
|
|
|
|
The Use of URLs as Meta-Syntax for Core Mail List Commands
|
|
and their Transport through Message Header Fields
|
|
|
|
Status of this Memo
|
|
|
|
This document specifies an Internet standards track protocol for the
|
|
Internet community, and requests discussion and suggestions for
|
|
improvements. Please refer to the current edition of the "Internet
|
|
Official Protocol Standards" (STD 1) for the standardization state
|
|
and status of this protocol. Distribution of this memo is unlimited.
|
|
|
|
Copyright Notice
|
|
|
|
Copyright (C) The Internet Society (1998). All Rights Reserved.
|
|
|
|
Abstract
|
|
|
|
The mailing list command specification header fields are a set of
|
|
structured fields to be added to email messages sent by email
|
|
distribution lists. Each field typically contains a URL (usually
|
|
mailto [RFC2368]) locating the relevant information or performing the
|
|
command directly. The three core header fields described in this
|
|
document are List-Help, List-Subscribe, and List-Unsubscribe.
|
|
|
|
There are three other header fields described here which, although
|
|
not as widely applicable, will have utility for a sufficient number
|
|
of mailing lists to justify their formalization here. These are
|
|
List-Post, List-Owner and List-Archive.
|
|
|
|
By including these header fields, list servers can make it possible
|
|
for mail clients to provide automated tools for users to perform list
|
|
functions. This could take the form of a menu item, push button, or
|
|
other user interface element. The intent is to simplify the user
|
|
experience, providing a common interface to the often cryptic and
|
|
varied mailing list manager commands.
|
|
|
|
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
|
|
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
|
|
document are to be interpreted as described in RFC 2119.
|
|
|
|
|
|
|
|
|
|
|
|
Neufeld & Baer Standards Track [Page 1]
|
|
|
|
RFC 2369 URLs as Meta-Syntax July 1998
|
|
|
|
|
|
1. Introduction
|
|
|
|
This is a proposal for additional header fields to be added to email
|
|
messages sent by email distribution lists. The content of each new
|
|
field is typically a URL - usually mailto [RFC2368] - which locates
|
|
the relevant information or performs the command directly. MTAs
|
|
generating the header fields SHOULD usually include a mailto based
|
|
command, in addition to any other protocols used, in order to support
|
|
users who do not have access to non-mail-based protocols.
|
|
|
|
Implementing these fields will be optional. Significant functionality
|
|
and convenience can be gained by including them, however. Many list
|
|
managers, especially as the proposal first gains acceptance, MAY
|
|
choose to implement only one or two of the fields. The List-Help
|
|
field is the most useful individual field since it provides an access
|
|
point to detailed user support information, and accommodates almost
|
|
all existing list managers command sets. The List-Subscribe and
|
|
List-Unsubscribe fields are also very useful, but cannot describe
|
|
some list manager syntaxes at this time (those which require variable
|
|
substitution). See appendix A.5 for an explanation.
|
|
|
|
The description of command syntax provided by the fields can be used
|
|
by mail client applications to provide simplified and consistent user
|
|
access to email distribution list functions. This could take the form
|
|
of menu items, push buttons, or other user interface elements. The
|
|
intent is to simplify the user experience, providing a common
|
|
interface to the often cryptic and varied mailing list manager
|
|
commands.
|
|
|
|
Consideration has been given to avoiding the creation of too many
|
|
fields, while at the same time avoiding the overloading of individual
|
|
fields and keeping the syntax clear and simple.
|
|
|
|
The use of these fields does not remove the requirement to support
|
|
the -Request command address for mailing lists [RFC2142].
|
|
|
|
2. The Command Syntax
|
|
|
|
The list header fields are subject to the encoding and character
|
|
restrictions for mail headers as described in [RFC822]. Additionally,
|
|
the URL content is further restricted to the set of URL safe
|
|
characters [RFC1738].
|
|
|
|
The contents of the list header fields mostly consist of angle-
|
|
bracket ('<', '>') enclosed URLs, with internal whitespace being
|
|
ignored. MTAs MUST NOT insert whitespace within the brackets, but
|
|
client applications should treat any whitespace, that might be
|
|
inserted by poorly behaved MTAs, as characters to ignore.
|
|
|
|
|
|
|
|
Neufeld & Baer Standards Track [Page 2]
|
|
|
|
RFC 2369 URLs as Meta-Syntax July 1998
|
|
|
|
|
|
A list of multiple, alternate, URLs MAY be specified by a comma-
|
|
separated list of angle-bracket enclosed URLs. The URLs have order of
|
|
preference from left to right. The client application should use the
|
|
left most protocol that it supports, or knows how to access by a
|
|
separate application. By this mechanism, protocols like http may be
|
|
specified while still providing the basic mailto support for those
|
|
clients who do not have access to non-mail protocols. The client
|
|
should only use one of the available URLs for a command, using
|
|
another only if the first one used failed.
|
|
|
|
The use of URLs allows for the use of the syntax with existing URL
|
|
supporting applications. As the standard for URLs is extended, the
|
|
list header fields will gain the benefit of those extensions.
|
|
Additionally, the use of URLs provides access to multiple transport
|
|
protocols (such as ftp and http) although it is expected that the
|
|
"mailto" protocol [RFC2368] will be the focus of most use of the list
|
|
header fields. Use of non-mailto protocols should be considered in
|
|
light of those users who do not have access to the specified
|
|
mechanism (those who only have email - with no web access).
|
|
|
|
Command syntaxes requiring variable fields to be set by the client
|
|
(such as including the user's email address within a command) are not
|
|
supported by this implementation. However, systems using such
|
|
syntaxes SHOULD still take advantage of the List-Help field to
|
|
provide the user with detailed instructions as needed or - perhaps
|
|
more usefully - provide access to some form of structured command
|
|
interface such as an HTML-based form.
|
|
|
|
The additional complications of supporting variable fields within the
|
|
command syntax was determined to be too difficult to support by this
|
|
protocol and would compromise the likelihood of implementation by
|
|
software authors.
|
|
|
|
To allow for future extension, client applications MUST follow the
|
|
following guidelines for handling the contents of the header fields
|
|
described in this document:
|
|
|
|
1) Except where noted for specific fields, if the content of the
|
|
field (following any leading whitespace, including comments)
|
|
begins with any character other than the opening angle bracket
|
|
'<', the field SHOULD be ignored.
|
|
|
|
2) Any characters following an angle bracket enclosed URL SHOULD be
|
|
ignored, unless a comma is the first non-whitespace/comment
|
|
character after the closing angle bracket.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Neufeld & Baer Standards Track [Page 3]
|
|
|
|
RFC 2369 URLs as Meta-Syntax July 1998
|
|
|
|
|
|
3) If a sub-item (comma-separated item) within the field is not an
|
|
angle-bracket enclosed URL, the remainder of the field (the
|
|
current, and all subsequent, sub-items) SHOULD be ignored.
|
|
|
|
3. The List Header Fields
|
|
|
|
This document presents header fields which will provide the
|
|
command syntax description for the 'core' and key secondary
|
|
functions of most email distribution lists. The fields implemented
|
|
on a given list SHOULD be included on all messages distributed by
|
|
the list (including command responses to individual users), and on
|
|
other messages where the message clearly applies to one distinct
|
|
list. There MUST be no more than one of each field present in any
|
|
given message.
|
|
|
|
These fields MUST only be generated by mailing lists, not end
|
|
users.
|
|
|
|
3.1. List-Help
|
|
|
|
The List-Help field is the most important of the header fields
|
|
described in this document. It would be acceptable for a list
|
|
manager to include only this field, since by definition it SHOULD
|
|
direct the user to complete instructions for all other commands.
|
|
Typically, the URL specified would request the help file, perhaps
|
|
incorporating an HTML form for list commands, for the list, and
|
|
alternatively provide access to an instructive website.
|
|
|
|
Examples:
|
|
|
|
List-Help: <mailto:list@host.com?subject=help> (List Instructions)
|
|
List-Help: <mailto:list-manager@host.com?body=info>
|
|
List-Help: <mailto:list-info@host.com> (Info about the list)
|
|
List-Help: <http://www.host.com/list/>, <mailto:list-info@host.com>
|
|
List-Help: <ftp://ftp.host.com/list.txt> (FTP),
|
|
<mailto:list@host.com?subject=help>
|
|
|
|
3.2. List-Unsubscribe
|
|
|
|
The List-Unsubscribe field describes the command (preferably using
|
|
mail) to directly unsubscribe the user (removing them from the list).
|
|
|
|
Examples:
|
|
|
|
List-Unsubscribe: <mailto:list@host.com?subject=unsubscribe>
|
|
List-Unsubscribe: (Use this command to get off the list)
|
|
<mailto:list-manager@host.com?body=unsubscribe%20list>
|
|
List-Unsubscribe: <mailto:list-off@host.com>
|
|
|
|
|
|
|
|
Neufeld & Baer Standards Track [Page 4]
|
|
|
|
RFC 2369 URLs as Meta-Syntax July 1998
|
|
|
|
|
|
List-Unsubscribe: <http://www.host.com/list.cgi?cmd=unsub&lst=list>,
|
|
<mailto:list-request@host.com?subject=unsubscribe>
|
|
|
|
3.3. List-Subscribe
|
|
|
|
The List-Subscribe field describes the command (preferably using
|
|
mail) to directly subscribe the user (request addition to the list).
|
|
|
|
Examples:
|
|
|
|
List-Subscribe: <mailto:list@host.com?subject=subscribe>
|
|
List-Subscribe: <mailto:list-request@host.com?subject=subscribe>
|
|
List-Subscribe: (Use this command to join the list)
|
|
<mailto:list-manager@host.com?body=subscribe%20list>
|
|
List-Subscribe: <mailto:list-on@host.com>
|
|
List-Subscribe: <http://www.host.com/list.cgi?cmd=sub&lst=list>,
|
|
<mailto:list-manager@host.com?body=subscribe%20list>
|
|
|
|
3.4. List-Post
|
|
|
|
The List-Post field describes the method for posting to the list.
|
|
This is typically the address of the list, but MAY be a moderator, or
|
|
potentially some other form of submission. For the special case of a
|
|
list that does not allow posting (e.g., an announcements list), the
|
|
List-Post field may contain the special value "NO".
|
|
|
|
Examples:
|
|
|
|
List-Post: <mailto:list@host.com>
|
|
List-Post: <mailto:moderator@host.com> (Postings are Moderated)
|
|
List-Post: <mailto:moderator@host.com?subject=list%20posting>
|
|
List-Post: NO (posting not allowed on this list)
|
|
|
|
3.5. List-Owner
|
|
|
|
The List-Owner field identifies the path to contact a human
|
|
administrator for the list. The URL MAY contain the address of a
|
|
administrator for the list, the mail system administrator, or any
|
|
other person who can handle user contact for the list. There is no
|
|
need to specify List-Owner if it is the same person as the mail
|
|
system administrator (postmaster).
|
|
|
|
Examples:
|
|
|
|
List-Owner: <mailto:listmom@host.com> (Contact Person for Help)
|
|
List-Owner: <mailto:grant@foo.bar> (Grant Neufeld)
|
|
List-Owner: <mailto:josh@foo.bar?Subject=list>
|
|
|
|
|
|
|
|
|
|
Neufeld & Baer Standards Track [Page 5]
|
|
|
|
RFC 2369 URLs as Meta-Syntax July 1998
|
|
|
|
|
|
3.6. List-Archive
|
|
|
|
The List-Archive field describes how to access archives for the list.
|
|
|
|
Examples:
|
|
|
|
List-Archive: <mailto:archive@host.com?subject=index%20list>
|
|
List-Archive: <ftp://ftp.host.com/pub/list/archive/>
|
|
List-Archive: <http://www.host.com/list/archive/> (Web Archive)
|
|
|
|
4. Supporting Nested Lists
|
|
|
|
A list that is a sublist for another list in a nested mailing list
|
|
hierarchy will need to modify some of the List- header fields, while
|
|
leaving others as the parent list set them.
|
|
|
|
Sublists SHOULD remove the parent list's List-Help, List-Subscribe,
|
|
List-Unsubscribe and List-Owner fields, and SHOULD insert their own
|
|
versions of those fields.
|
|
|
|
If the sublist provides its own archive, it SHOULD replace the List-
|
|
Archive with its own. Otherwise, it MUST leave the List-Archive field
|
|
untouched.
|
|
|
|
Dependant on how postings to the list are handled, the sublist MAY
|
|
replace the List-Post field. The appropriateness of whether to
|
|
replace List-Post is left to the determination of the individual list
|
|
managers. If the intention is that postings should be distributed to
|
|
all members of the primary list, List-Post should not be changed by a
|
|
sublist in such a way that postings will be distributed only to
|
|
members of the sublist.
|
|
|
|
5. Security Considerations
|
|
|
|
There are very few new security concerns generated with this
|
|
proposal. Message headers are an existing standard, designed to
|
|
easily accommodate new types. There may be concern with multiple
|
|
fields being inserted or headers being forged, but these are problems
|
|
inherent in Internet email, not specific to the protocol described in
|
|
this document. Further, the implications are relatively harmless.
|
|
|
|
Mail list processors should not allow any user-originated list header
|
|
fields to pass through to their lists, lest they confuse the user and
|
|
have the potential to create security problems.
|
|
|
|
On the client side, there may be some concern with posts or commands
|
|
being sent in error. It is required that the user have a chance to
|
|
confirm any action before it is executed. In the case of mailto, it
|
|
|
|
|
|
|
|
Neufeld & Baer Standards Track [Page 6]
|
|
|
|
RFC 2369 URLs as Meta-Syntax July 1998
|
|
|
|
|
|
may be appropriate to create the correctly formatted message without
|
|
sending it, allowing the user to see exactly what is happening and
|
|
giving the user the opportunity to approve or discard the message
|
|
before it is sent.
|
|
|
|
All security considerations for the use of URLs [RFC1738] apply
|
|
equally to this protocol. Mail client applications should not support
|
|
list header field URLs which could compromise the security of the
|
|
user's system. This includes the "file://" URL type which could
|
|
potentially be used to trigger the execution of a local application
|
|
on some user systems.
|
|
|
|
6. Acknowledgements
|
|
|
|
The numerous participants of the List-Header [5], ListMom-Talk [6],
|
|
List-Managers and MIDA-Mail mailing lists contributed much to the
|
|
formation and structure of this document.
|
|
|
|
Keith Moore <moore@cs.utk.edu> and Christopher Allen
|
|
<ChristopherA@consensus.com> provided guidance on the standards
|
|
process.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Neufeld & Baer Standards Track [Page 7]
|
|
|
|
RFC 2369 URLs as Meta-Syntax July 1998
|
|
|
|
|
|
A. Background Discussion
|
|
|
|
This proposal arose from discussions started on the ListMom-Talk
|
|
Discussion List [6]. When the discussion reached a sufficient level,
|
|
a separate list was formed for discussing this proposal, the List
|
|
Headers Mail List [5] for deeper discussion. We have included
|
|
summaries of key issues raised, in order to show some of the
|
|
alternatives examined and reasons for our decisions.
|
|
|
|
A.1. Multiple header fields vs. a single header field
|
|
|
|
Use of a single header field for transporting command meta-syntax was
|
|
rejected for a number of reasons.
|
|
|
|
Such a field would require the creation of a new meta-syntax in order
|
|
to describe the list commands (as opposed to the use of the widely
|
|
deployed URL syntax which was chosen for this implementation). Every
|
|
additional layer of complexity and newness reduces the likelihood of
|
|
actual implementation because it will require additional work to
|
|
support. Also, by using the existing URL syntax, we can profit from
|
|
the end users' knowledge of that syntax and ability to use it even if
|
|
their client applications do not support the list header fields.
|
|
|
|
Restricting the transport of meta-syntax to the use of a single
|
|
header field also introduces complications with header field size
|
|
limitations. Most individual commands can easily be described in a
|
|
single line, but describing a multitude of commands can take up many
|
|
lines in the field and runs a greater risk of being modified by an
|
|
existing server on route.
|
|
|
|
The client implementation is also easier with multiple fields, since
|
|
each command can be supported and implemented individually,
|
|
completely independent of the others. Thus, some list managers or
|
|
mail clients can choose to implement a subset of the fields based on
|
|
the specific needs of their individual lists.
|
|
|
|
Finally, the format described in this document is simple and well
|
|
recognized, which reduces the chances of errors in implementation and
|
|
parsing.
|
|
|
|
A.2. URLs vs. parameter lists
|
|
|
|
URLs are already an established syntax which is flexible, well-
|
|
defined, and in wide spread use. As its definition matures and
|
|
expands, the abilities of the list fields will grow as well, without
|
|
requiring modification of this proposal. URLs are well prepared to
|
|
handle future protocols and developments, and can easily describe the
|
|
different existing access protocols such as mailto, http and ftp.
|
|
|
|
|
|
|
|
Neufeld & Baer Standards Track [Page 8]
|
|
|
|
RFC 2369 URLs as Meta-Syntax July 1998
|
|
|
|
|
|
Many clients already have functionality for recognizing, parsing, and
|
|
evaluating URLs, either internally or by passing the request to a
|
|
helper application. This makes implementation easier and more
|
|
realistic. As an example, this existing support for URL parsing
|
|
allowed us to add prototype list header functionality to existing
|
|
mail clients (Eudora and Emailer for the Macintosh) without modifying
|
|
their source code.
|
|
|
|
A.3. Why not just create a standard command language?
|
|
|
|
A standard command language, supported by all email list services,
|
|
would go a long way to reducing the problems of list access that
|
|
currently plague existing services. It would reduce the amount of
|
|
learning required by end users and allow for a number of common
|
|
support tools to be developed.
|
|
|
|
However, such standardization does pose problems in the areas of
|
|
multi-lingual support and the custom needs of individual mailing
|
|
lists. The development of such a standard is also expected to be met
|
|
with a slow adoption rate by software developers and list service
|
|
providers.
|
|
|
|
These points do not preclude the development of such a standard (in
|
|
fact, it would suggest that we should start sooner rather than
|
|
later), but we do need a solution that can be widely supported by the
|
|
current list services.
|
|
|
|
We can support most existing list manager command syntaxes without a
|
|
standard command language. By using URLs, we allow alternate access
|
|
methods a standard command language probably wouldn't enable, such as
|
|
web based control.
|
|
|
|
Finally, client support for a standard command language is not at all
|
|
clear or necessarily simple to implement. The variety and large
|
|
number of commands existing today would require complicated user
|
|
interfaces which could be confusing and difficult to implement. By
|
|
restricting this proposal to the core functions, the client
|
|
|
|
implementation is much simpler, which significantly increases the
|
|
likelihood of implementation (as evidenced by the support already
|
|
announced by a number of client and server application authors).
|
|
|
|
A.4. Internationalization
|
|
|
|
Multilingual support is up to the URL standard. If URLs support it,
|
|
then the List- header fields support it. This is another advantage of
|
|
using URLs as the building blocks for the list header fields.
|
|
|
|
|
|
|
|
|
|
Neufeld & Baer Standards Track [Page 9]
|
|
|
|
RFC 2369 URLs as Meta-Syntax July 1998
|
|
|
|
|
|
A.5. Variable Substitution
|
|
|
|
Variables would allow the List- header fields to accommodate nearly
|
|
every existing list manager. However, it would immeasurably increase
|
|
the complexity of the entire proposal, and possibly involve
|
|
redefining the URL standard, or force us to use something more
|
|
complicated (and hence more difficult to implement) than URLs to
|
|
describe the command syntax.
|
|
|
|
Parameters would either have to be mandatory (i.e. the user agent
|
|
doesn't submit the message if it doesn't know what text to
|
|
substitute) or you need a way to say "if you know this parameter, add
|
|
its text here; otherwise, do this" where "this" is either: (a)
|
|
substitute a constant string, or (b) fail.
|
|
|
|
The reason you would want a facility like this is because some list
|
|
server applications insist on having certain parameters like users'
|
|
names, which the user agent might or might not know. e.g. listserv
|
|
insists on having a first name and a last name if you supply either
|
|
one.
|
|
|
|
Which could lead to something like the UNIX shell syntax, where
|
|
${foo-bar} means substitute the value of parameter "foo" if "foo" is
|
|
defined, else substitute the string "bar". Perhaps $foo would mean
|
|
"substitute the value of parameter foo if it is defined, else
|
|
substitute the empty string"
|
|
|
|
This all seems far too complicated for the gains involved, especially
|
|
since the use of variables can often be avoided.
|
|
|
|
The use of variables in the command syntaxes of list services appears
|
|
to be lessening and does not, in any case, apply to all commands.
|
|
While the unsubscribe and subscribe command header fields may not be
|
|
usable by those systems which require the use of variables, the help
|
|
field will still provide end users with a consistent point of access
|
|
through which they can get support for their use of the list.
|
|
|
|
A.6. Why not use a specialized MIME part instead of header fields?
|
|
|
|
MIME parts were considered, but because most mail clients currently
|
|
either don't support MIME or are not equipped to handle such
|
|
specialized parts - such an implementation would result in problems
|
|
for end users. It is also not as easy for many list servers to
|
|
implement MIME as it is to implement new header fields.
|
|
|
|
However, we are looking at the design of a MIME part to more fully
|
|
describe list command syntax, as well as trying to find ways to get
|
|
it supported by the applicable software.
|
|
|
|
|
|
|
|
Neufeld & Baer Standards Track [Page 10]
|
|
|
|
RFC 2369 URLs as Meta-Syntax July 1998
|
|
|
|
|
|
A.7. Why include a Subscribe command?
|
|
|
|
Subscribe and Unsubscribe are the key commands needed by almost every
|
|
list. Other commands, such as digest mode, are not as widely
|
|
supported.
|
|
|
|
Additionally, users who have unsubscribed (before going on vacation,
|
|
or for whatever other reason) may want to resubscribe to a list. Or,
|
|
a message may be forwarded/bounced from a subscriber to a non-
|
|
subscriber. Or, the user may change addresses and want to subscribe
|
|
from their new address. Having the List-Subscribe field available
|
|
could certainly help in all these cases.
|
|
|
|
A.8. The Dangers of Header Bloat
|
|
|
|
At what point are there just too many header fields? It really
|
|
varies on a list by list basis. On some lists, the majority of users
|
|
will never be aware of a field unless the client software provides
|
|
some alternative user interface to it (akin to the Reply-To field).
|
|
On others, the users will often see the header fields of messages and
|
|
would be able to recognize the function of the URLs contained within.
|
|
|
|
The flexibility afforded by the protocol described in this document
|
|
(in that the header fields may be individually implemented as deemed
|
|
appropriate) provides list administrators with sufficient 'room to
|
|
maneuver' to meet their individual needs.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Neufeld & Baer Standards Track [Page 11]
|
|
|
|
RFC 2369 URLs as Meta-Syntax July 1998
|
|
|
|
|
|
B. Client Implementation
|
|
|
|
B.1. Guidelines
|
|
|
|
For 'mailto' URL based commands, mail client applications may choose
|
|
to provide specialized feedback (such as presenting a dialog or
|
|
alert), instead of the actual command email message, asking for
|
|
command confirmation from the user. The feedback should identify the
|
|
message destination and command within a more descriptive
|
|
explanation. For example:
|
|
|
|
"Do you want to send the unsubscription command 'unsubscribe
|
|
somelist' to 'somelist-request@some.host.com'? Sending the command
|
|
will result in your removal from the associated list."
|
|
|
|
If the user has multiple email addresses supported by the mail
|
|
client, the client application should prompt the user for which
|
|
address to use when subscribing or performing some other action where
|
|
the address to use cannot be specifically determined. When
|
|
unsubscribing or such, the address that is subscribed should be used,
|
|
unless that is not known by the application and cannot be determined
|
|
from the message headers.
|
|
|
|
B.2. Implementation Options
|
|
|
|
The following implementation possibilities are suggested here to give
|
|
some idea as to why these new header fields will be useful, and how
|
|
they could be supported.
|
|
|
|
In most cases, it may be helpful to disable the interface for the
|
|
commands when not applicable to the currently selected message.
|
|
|
|
B.2.1. Key combinations and command lines
|
|
|
|
On text based systems which utilize command lines or key
|
|
combinations, each field could be implemented as a separate command.
|
|
Thus one combination would subscribe the user, another would
|
|
unsubscribe, a third request help, etc. The commands would only be
|
|
available on messages containing the list header fields.
|
|
|
|
B.2.2. Menu items
|
|
|
|
On graphical systems which have menus, these commands could take the
|
|
form of a menu or sub-menu of items. For example, a "Lists" menu
|
|
might appear when viewing messages containing the header fields, with
|
|
items named "Subscribe", "Unsubscribe", "Get Help", "Post Message to
|
|
|
|
|
|
|
|
|
|
|
|
Neufeld & Baer Standards Track [Page 12]
|
|
|
|
RFC 2369 URLs as Meta-Syntax July 1998
|
|
|
|
|
|
List", "Contact List Owner" and "Access List Archive". This menu
|
|
could be disabled when not applicable to the current message or
|
|
disappear entirely.
|
|
|
|
B.2.3. Push Buttons and Pallettes
|
|
|
|
On graphical window systems, buttons could be placed in the window of
|
|
the message, a toolbar, or in a floating pallette of their own. Each
|
|
button could correspond to a command, with names "Subscribe",
|
|
"Unsubscribe", "Get Help", "Post to List", "List Owner" and
|
|
"Archive". These buttons or pallettes could be disabled when not
|
|
applicable to the current message or disappear entirely.
|
|
|
|
B.2.4 Feedback to the User
|
|
|
|
If using a dialog interface (or other feedback element) the client
|
|
application MUST include an option for the user to review (and
|
|
possibly modify) the message before it is sent. The application may
|
|
also find it useful to provide a link to more detailed context-
|
|
sensitive assistance about mail list access in general.
|
|
|
|
References
|
|
|
|
[RFC822] Crocker, D., "Standard for the Format of ARPA
|
|
Internet Text Messages", STD 11, RFC 822, August 1982.
|
|
|
|
[RFC1738] Berners-Lee, T., Masinter, L., and M. McCahill,
|
|
"Uniform Resource Locators (URL)" RFC 1738, December 1994.
|
|
|
|
[RFC2142] Crocker, D., "Mailbox Names for Common Services, Roles and
|
|
Functions", RFC 2142, May 1997.
|
|
|
|
[RFC2368] Hoffman, P., Masinter, L., and J. Zawinski, "The mailto URL
|
|
scheme", RFC 2368, July 1998.
|
|
|
|
[5] "List-Header" Mail list. list-header@list.nisto.com
|
|
<URL:http://www.nisto.com/listspec/mail/>
|
|
<URL:http://www.nisto.com/listspec/>
|
|
|
|
[6] "ListMom-Talk" Mail list. listmom-talk@skyweyr.com
|
|
<URL:http://cgi.skyweyr.com/ListMom.Home>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Neufeld & Baer Standards Track [Page 13]
|
|
|
|
RFC 2369 URLs as Meta-Syntax July 1998
|
|
|
|
|
|
Editors' Addresses
|
|
|
|
Joshua D. Baer
|
|
Box 273
|
|
4902 Forbes Avenue
|
|
Pittsburgh, PA 15213-3799
|
|
USA
|
|
|
|
EMail: josh@skyweyr.com
|
|
|
|
|
|
Grant Neufeld
|
|
Calgary, Alberta
|
|
Canada
|
|
|
|
EMail: grant@acm.org
|
|
Web: http://www.nisto.com/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Neufeld & Baer Standards Track [Page 14]
|
|
|
|
RFC 2369 URLs as Meta-Syntax July 1998
|
|
|
|
|
|
Full Copyright Statement
|
|
|
|
Copyright (C) The Internet Society (1998). All Rights Reserved.
|
|
|
|
This document and translations of it may be copied and furnished to
|
|
others, and derivative works that comment on or otherwise explain it
|
|
or assist in its implementation may be prepared, copied, published
|
|
and distributed, in whole or in part, without restriction of any
|
|
kind, provided that the above copyright notice and this paragraph are
|
|
included on all such copies and derivative works. However, this
|
|
document itself may not be modified in any way, such as by removing
|
|
the copyright notice or references to the Internet Society or other
|
|
Internet organizations, except as needed for the purpose of
|
|
developing Internet standards in which case the procedures for
|
|
copyrights defined in the Internet Standards process must be
|
|
followed, or as required to translate it into languages other than
|
|
English.
|
|
|
|
The limited permissions granted above are perpetual and will not be
|
|
revoked by the Internet Society or its successors or assigns.
|
|
|
|
This document and the information contained herein is provided on an
|
|
"AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
|
|
TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
|
|
BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
|
|
HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
|
|
MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Neufeld & Baer Standards Track [Page 15]
|
|
|