MARS - a Message Archiving and Retrieval Service
A system for storing and searching archived network messages
Sattley, J., "MARS - a Message Archiving and Retrieval Service", RFC 744, DOI 10.17487/RFC0744, January 1978, <https://www.rfc-editor.org/info/rfc744>.
@misc{rfc744,
series = {Request for Comments},
number = 744,
howpublished = {RFC 744},
publisher = {RFC Editor},
doi = {10.17487/RFC0744},
url = {https://www.rfc-editor.org/info/rfc744},
author = {J. Sattley},
title = {{MARS - a Message Archiving and Retrieval Service}},
pagetotal = 6,
year = 1978,
month = jan,
} RFC text
Contents
NWG/RFC 744 JS5 8-Jan-78 21:59 42857
Network Working Group Joanne Sattley
Request for Comments: 744 JZS@CCA
NIC: 42857 8 January 1978
MARS - A Message Archiving & Retrieval Service
I. Introduction
------------
This document describes a Message Archiving and Retrieval Service
(MARS) which has been developed at Computer Corporation of America; it
utilizes the Datacomputer, a network database utility developed by CCA
for ARPA. [Research and development of a prototype MARS system was
supported by the Defense Advanced Research Projects Agency of the
Department of Defense, under the ARPA Very Large Databases program,
and was monitored by the Office of Naval Research under Contract No.
N00014-76-C-0991.]
The Service is available, primarily, to groups for storage of
teleconferencing transcripts. Is is also available, upon request, to
individual ARPANET correspondents.
There are both 'public' and 'private' messages in the database.
Public messages may be retrieved by anyone. The public collection
includes the messages of the Header-People [@ MIT-MC] group, and the
MsgGroup [@ USC-ISI] proceedings.
Private messages may be retrieved only by the users who have archived
them, or anyone whose name appears on the list of message recipients.
Messages archived using MARS are heavily indexed and can be retrieved
in a variety of ways, including Boolean combinations of message
recipients, message composition date, any text words in the message
subject, and text words in the message body. The MARS facilities are
integrated very naturally into the existing collection of
message-handling tools:
. A message is designated for archiving by sending it to
MARS-Filer @ CCA using one of the usual message-mailing tools such
as SNDMSG.
. A message is designated for retrieval by sending a request as
ordinary mail to MARS-Retriever @ CCA.
The Filer program checks for mail every hour; the Retriever program
checks every quarter-hour. The periodicity can be altered to meet
demand but the intent is for MARS to operate as a background job and
only during extremely low-activity periods.
The next section (II) describes the indexing operation in greater
detail, and how to archive and retrieve messages. The last section
(III) is an extractable user card.
NWG/RFC 744 JS5 8-Jan-78 21:59 42857
MARS - A Message Archiving & Retrieval Service
II. Using MARS
----------
A. Message Indexing
----------------
For each message, a vector of parsed tokens is created. The parsed
tokens are collected by the message-field in which they occurred -- to
be used as "indexes", i.e., values of inverted fields, by the
Datacomputer.
The Filer "indexes", essentially without analysis, except for the
following:
-- Each distinguishable section of the message is indexed
separately; each header line is a separate inversion domain, as
is the body of the message.
-- The header lines which contain ARPANET addresses are analyzed in
order to index separately on mailbox and host.
-- The date-field is parsed and converted to the standard Tenex
internal date/time format, which is better adapted for
less-than/greater-than comparisons, as in retrievals which
specify a date range.
-- One-character words in both the subject-field and the
message-text field arbitrarily discarded.
-- Two-character words in the message-text field are arbitrarily
discarded.
-- Hyphenated phrases, i.e., words bound together by hyphens, are
retained intact.
-- All message formats which conform to RFC 733 standards are
accommodated. The minimum requirements are: a date-field, a
from-field, and a blank line between the message-header and
message-body.
NWG/RFC 744 JS5 8-Jan-78 21:59 42857
MARS - A Message Archiving & Retrieval Service
B. To Archive Messages
-------------------
There are three modes of filing currently supported by MARS, to wit:
-- single-message mode, wherein the MARS-Filer mailbox appears in
the message as an addressee;
-- forwarded-message mode, wherein the MARS-Filer mailbox appears as
the only primary recipient;
and
-- batch mode, wherein the mailing envelope is addressed to
MARS-Filer and the subject-field contains the keyword "batch".
Until the ARPANET standard for the format of messages is implemented
universally, the variability amongst formats is still greater than the
Filer can handle as it stands. Nonetheless, a user can successfully
file any message in a "foreign" format by forwarding it to the Filer
under the aegis of a mail-handling program which does produce good
formats. Admittedly, the correct header-field indexing, as described
above, will not be done on the enclosed message; but at least, the
words in its unreadable header fields will appear as "text" words in
the indexing.
In the case of forwarded-message-mode filing, all interesting indexing
information is extracted from the message-header of the forwarding
envelope prior to discarding it. The name of the archiver, the date
and time the message was forwarded, and the subject-line information
are recorded. The remainder is handled as though it were a
non-forwarded message which had been CC'd to the Filer.
A forwarded message may be 'annotated' by adding text (e.g., notes,
comments, keywords) in the forwarding envelope. Annotations are filed
and retrieved as part of the archived message.
In the case of batch-mode filing, only the archiver's name and the
date and time s/he sent the package are extracted from the mailing
envelope. The message-body portion is then treated as a series of
individual messages.
NWG/RFC 744 JS5 8-Jan-78 21:59 42857
MARS - A Message Archiving & Retrieval Service
C. To Retrieve Messages
--------------------
Retrievals are initiated by sending a Retrieval Request (which is a
specially formatted message) to "MARS-Retriever@CCA". Retrieved
messages are mailed back, one at a time, and will appear as new mail
in the requester's mailbox.
Retrieval Request messages can be composed using any SNDMSG-type of
program, as follows:
. The recipient of the RR message must be MARS-Retriever @ CCA
. Other message header fields are ignored for now
. The message body portion of the RR is used to compose Datalanguage
for performing the retrieval. Its format resembles a message
header, or selected portions thereof.
The following list defines which field names are recognized, and some
notes on their interpretation. The scanning of each field is
terminated by a carriage-return.
DATE: The format of the date field is day-month-year. Use of
hyphens is optional. This field will cause only those
messages composed on the specified date to be retrieved.
AFTER: Use of this field will retrieve messages composed after
the specified date.
SINCE: This field is interpreted like the AFTER: field.
BEFORE: Use of this field will retrieve messages composed before
the specified date.
UNTIL: This field is interpreted like the BEFORE: field.
FROM: This field is expected to contain a valid mailbox name.
The host specification is optional. If more than one name
is specified, ORing of the names is implicit.
Retrieval based upon host specification alone has not been
implemented.
TO: This field is expected to contain one or more valid
mailbox names. The host specification is optional. Spaces
and commas between the names imply AND.
NWG/RFC 744 JS5 8-Jan-78 21:59 42857
MARS - A Message Archiving & Retrieval Service
SUBJECT: Use of this field will retrieve all messages whose
indexed subject-field contents match the specified
word(s). Spaces and commas imply AND. The use of OR
must be explicit.
TEXT: Use of this field will retrieve all messages whose
indexed message-body contents match the specified
word(s). Spaces and commas imply AND. The use of OR
must be explicit.
An interactive TENEX-based program for composing RRs is available;
the filename is "RR.SAV". A copy of this program is stored on the
Datacomputer, available via DFTP under node COMMON>MARS.
There is also a copy of the program in CCA's directory at SRI-KA;
another in the CCA-ACCAT directory at ISIA.
NWG/RFC 744 JS5 8-Jan-78 21:59 42857
MARS - A Message Archiving & Retrieval Service
III. MARS User Card
--------------
:: Archiving
---------
Individual Messages
. Include MARS-Filer@CCA on message distribution list
. Forward message to MARS-Filer@CCA [Annotation is optional.]
Batches of Messages
. Incorporate the mail file as the message-body of a single
message sent to MARS-Filer@CCA with the clue "BATCH" in its
subject-field.
:: Retrieving
----------
Using RR Program
. RR is a TENEX-based interactive program designed to prepare
Retrieval Request messages and to mail them to MARS-Retriever@CCA.
Using SNDMSG-Type Program
. Send a message to MARS-Retriever@CCA, specifying the retrieval
criteria in the body of the message.
Sample Retrieval Criteria
SUBJECT:RFC 733 or RFC733 ; OR must be explicit
TEXT:MARS Project,goals ; spaces & commas imply AND
DATE: 14 November 1977
SINCE: 1 Nov 77 ; same as AFTER: 1 Nov 77
AFTER: 1 Dec 1977
UNTIL: 15 January 1978 ; same as BEFORE: 15 January 1978
BEFORE: Aug 7 76
FROM: JZS@CCA ; host specification is optional
FROM: Hacker,JZS ; comma implies OR (in FROM: field only)
TO: CCA@SRI-KA ; host specification is optional
TO: SDD-0:,SDD-1: ; spaces and commas imply AND
AI ELI5
On this page
§1The MARS System
MARS (Message Archiving and Retrieval Service) was developed at Computer Corporation of America and uses the Datacomputer, a network database utility developed for ARPA. The service is available primarily to groups storing teleconferencing transcripts and to individual ARPANET users.
MARS messages are divided into public and private collections. Public messages, such as those from the Header-People group at MIT and MsgGroup proceedings at USC-ISI, can be retrieved by anyone. Private messages can be retrieved only by the archiver or named recipients. All messages are heavily indexed and can be retrieved by date, sender, recipients, subject keywords, or body text.
MARS lets a group store messages and search them later. Some messages are public (anyone can read), others are private (only the sender or named people can see them).
§2How to Archive Messages
Messages are archived by sending them to MARS-Filer at CCA using standard mail tools like SNDMSG. MARS supports three filing modes: single-message mode (naming MARS-Filer as a recipient), forwarded-message mode (forwarding a message to the Filer), and batch mode (sending multiple messages in a single mail envelope with "batch" in the subject).
The Filer parses message headers to extract date, sender, recipients, and subject line, then indexes all text in the message body. One-character words in the subject and two-character words in the body are discarded. Hyphenated phrases are kept intact, and the system accommodates all RFC 733 message format variations.
You just mail the message to MARS-Filer. You can send one message, forward one with notes, or bundle many messages together. MARS automatically reads the date, from, to, and subject fields and remembers all the important words.
§3How to Retrieve Messages
Retrieval is initiated by sending a specially formatted message to MARS-Retriever at CCA. The message body specifies search criteria: DATE, AFTER, BEFORE, FROM, TO, SUBJECT, and TEXT fields. Date fields support comparisons (before, after, since, until), and FROM field OR logic is implicit; TO, SUBJECT, and TEXT field logic uses AND unless OR is explicit.
An interactive TENEX program (RR.SAV) is available to compose retrieval requests, and copies are stored on the Datacomputer and at CCA and ISI. Retrieved messages are mailed back one at a time to the requester's mailbox.
You mail a message to MARS-Retriever saying what you're looking for: a date range, who it was from or to, or words in the subject or text. MARS mails back the matching messages.
§4Integration with Existing Tools
MARS is designed to work naturally with existing ARPANET message handling tools. Users do not need to learn a special interface; they use familiar mail commands (SNDMSG, mail programs) to file and retrieve. The Filer checks for new messages every hour, and the Retriever checks every quarter-hour, operating as a background job during low-activity periods.
This integration was a key design principle: MARS did not require users to switch tools or adopt new behaviors. It simply sat on the network as another mail participant, handling archiving and retrieval as automated responses to messages.
You do not need to learn new commands. You just mail messages to special addresses, and MARS acts like another person who remembers everything and can find messages for you later.