1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74
|
<HEAD>
<TITLE>EMIL version 2 TUTORIAL</TITLE>
</HEAD>
<BODY>
<H1>TUTORIAL FOR EMIL VERSION 2.1
</H1>
<EM>Written by Martin Wendel, ITS, Uppsala university.
Martin.Wendel@its.uu.se
</EM>
<HR>
<A HREF=analysis.html><IMG ALIGN=MIDDLE SRC=arrow_right3.gif></A><A HREF=main.html><IMG ALIGN=MIDDLE SRC=arrow_up2.gif></A><A HREF=design-top.html><IMG ALIGN=MIDDLE SRC=arrow_left3.gif></A>
<H2>PROBLEM STATEMENT</H2>
<H3>Introduction</H3>
<P>The primary objective of Emil is to transform messages from one message format
to another. It can be described as a batch transformer that takes a message from a file or
standard input, transforms the message and writes output to a file or standard output.
<P>Message formats will be described in a configuration file and will not be compiled
into the tool. This gives the flexibility to expand the number of formats without having
to recompile. A language, resembling the augmented BNF (Backus Naur Form) defined
in RFC822 <A HREF="rfc822.html">[RFC822]</A> , will be used to describe the formats.
<P>Conversion filters are supplied for character set translation, Base64, BinHex,
Quoted-Printable and uuencode. These will be controlled by the message format
descriptions described in the configuration files.
<P>The scope of Emil is Internet messages, but Emil is very general and may be
used for other messages or files as well. Using Emil for anything else than processing
Internet messages will however not be supported, you're wellcome to try it but if you do,
you're on your own.
<H3>Input</H3>
<P>Input is a message conforming to one or several of the message formats in the
configuration file. It is not a requirement that messages conform with RFC822 for
Emil to be able to convert them. It is a requirement, however, that the available message
formats contain the information needed to parse the incoming message. Message formats
are an issue of configuration and does not necessarily imply restriction of the potential of the tool.
<H3>Output</H3>
<P>The generated output is a message conforming to the target message format. In some
cases output may be exactly the same as input, i.e. no transformation is conducted. This may
be the case when the source and the target formats are identical or when the header line
"Content-Conversion: Prohibited" is detected.
<H3>Miscellaneous Requirements</H3>
<P>Unlike other batch programs, Emil needs to be rather fast and light weight if it is
to be used in a production environment, it may not slow down message delivery to any
greater extent. The basic assumption here is that memory is cheap and fast while disk
I/O is slow. Therefore Emil will not spool messages and data on disk but instead keep them
in memory while processing them.
<HR>
<A HREF=analysis.html><IMG ALIGN=MIDDLE SRC=arrow_right3.gif></A><A HREF=main.html><IMG ALIGN=MIDDLE SRC=arrow_up2.gif></A><A HREF=design-top.html><IMG ALIGN=MIDDLE SRC=arrow_left3.gif></A>
<hr size="4" noshade>
<ADDRESS>
<table WIDTH="95%">
<td>
March 1996<p>
<B>ITS Uppsala university</B><BR>
Box 887<BR>
751 08 Uppsala<BR>
SWEDEN<P>
</td>
<td ALIGN="right" VALIGN="middle">
<a href="mailto:Martin.Wendel@its.uu.se">Martin Wendel</a>
</td>
<td ALIGN="left" VALIGN="middle">
<a href="mailto:Martin.Wendel@its.uu.se">
<IMG border="0" SRC="binpobox.gif" ALT="E-Mail: "></a>
</td>
</table>
</ADDRESS>
</body>
</html>
|