MergeEm Application Synopsis for Win95/98/NT

MergeEm was built to provide a means to dynamically update
information on a web page.  It does that by:

o   retrieving dynamically updated files from the internet,
    intranet, or using files from your local machine; 
o   manipulating these files (removing and-or replacing information
    -unlimited number of files);
o   extracting text from these files (unlimited number of files);
o   substituting the extracted text into a web page template you
    define to dynamically create the new web page file; and
o   upload the new file to your WWW server.

As an example, MergeEm could be used to create a web page that has as
one or more of its display fields: the current temperature, wind
direction, humidity, barometric pressure, DJIA, current selling
price/volume of specific stocks, etc.  MergeEm substitues the extracted
information into your template file and can even automatically
upload the dynamically created page to your web site.  

The dynamic text extracted from the files you pull onto your machine
and substitute into the template can be a word, phrase, sentence,
paragraph, or the entire file contents. 

MergeEm can be get information via your Intranet and
create a dynamic web page to keep you employees informed about
company specific goals or create a periodic report.

MergeEm's Sequence of Operation:

o   MergeEm reads your rule and template files.
o   The rules in your rule file are parsed for each web file you
    defined.
o   Web files are obtained via MergeEm's built in ftp and http
    capabilities or you can obtain them by another means.
o   Source web files are manipulated by removing or replacing
    information.
o   Text is extracted and substituted into the template to create the
    dynamic web page file.
o   The newly created web page file may then be uploaded (ftp only,
    http Put is not yet available) to your server.
o   MergeEm reschedules its execution time interval.

You Must:

o   Decide what information you want to dynamically display.
o   Get the file information containing that information (URL, path,
    and file name).
o   Ensure that information is either not copyrighted or obtain
    permission from the copyright holder to redisplay the information.
o   Develop a TEMPLATE File (your web page minus the extracted
    information) with embedded variables (%%variable name%%) that tells
    MergeEm where to place extracted information.
o   Develop a RULE File using your own text editor or MergeEm's built
    in rule file editor.
o   Invoke MergeEm.

Registered Customers:

o   have access to MergeEm's ftp and http services and
o   are allowed to schedule its execution time intervals.  During a
    15-day trial period, unregistered customers will also have access to
    these capabilities.

The Rule File:

MergeEm reads a rule file to obtain all the information it will use
to create the new web file.  You create the rule file that tells
MergeEm what files (called scan files) you want text from, where to
get these files, and what text to extract from them.  If MergeEm must
obtain these files from the web, you must define the pertinent ftp or
http information to allow MergeEm to:

o   connect to the server holding the file;
o   logon to the server (if using ftp services);
o   change the directory on the server to the target file's location;
    and
o   the file name you want to access.

If you want MergeEm to repeat this task every XX seconds, minutes, or
hours you may now also define the re-execution time interval.

Command Section of Rule File New in Version 3.0, you can create or
edit Rule Files directly in MergeEm.  The rule file is comprised of
the &command section and one or more &scanfile sections (one for each
file you want to extract text from).  In the &command section you
define:

o   the template file name and path;
o   output file name and path;
o   the optional ftp information necessary to upload the output file;
o   the optional execution time interval; and 
o   the error log name and path.

Scan File Sections of Rule File For each web file you want to
retrieve and extract text from, you define a separate &scanfile
section in the rule file that contains:

o   the ftp or http information necessary to download the file to
    your machine if the file is remote; 
o   the name you want the file saved under on you local machine and
    its path; and
o   variable names with text extraction rules that define what text
    will be extracted.

Text Extraction Rules:

Each word, phrase, sentence, paragraph, or entire file you want to
extract must be assigned to a unique variable name that you assign in
the template file.  MergeEm supports three types of text extraction
rules that may be assigned to variables, which are:

o   character pattern matching;
o   define line-column extraction sets; and
o   grab the whole file.

File Manipulation Rules:

New in Version 4.0, two types of scan file manipulation rules are
supported.  The new rules are:

o   removing information using character pattern matching and
o   replacing information using character pattern matching;.

Deciding Whether to Proceed or Not:

New in Version 4.0, a new rule has been added to allow you to abort
the MergeEm operation if the source file has changed.  This new rule
is called CheckAbort. 

Variable Names:

Variable names allow specific patterns to be uniquely identified and
used for file manipulation or as a placeholder that allows you to
define where in the template file you want extracted text to be
placed.

Template File:

In the template file, you define the markups that define the web page
structure and its touch and feel.  Where your dynamic text goes, you
use the variable names you defined in the &scanfile sections
surrounded by double percent signs (e.g., %%title%%).  Note that if
you are creating a periodic report, the template file does not have
to be a html file.

Rescheduling Execution of MergeEm If you are a registered customer
and you have defined a ReSchedule Interval in the Rule File command
section, MergeEm will continue executing until you stop it.  You can
stop the reschedule timer in one of the following ways:

o   clicking the timer stop button on the tool bar;
o   selecting Stop Scheduler's Timer from the Tools menu; or
o   killing the application.

Because you can let MergeEm run for days at a time, the log window
will automatically clear itself and start the log display over when
it becomes full.

Note:	If you do not wish MergeEm's display window to clutter your
desktop for days at a time, you may minimize the application.  It
will continue to function while minimized.

General/Limitations:

MergeEm can be invoked with the rule file defined in the command line
or you can invoke the application and select the rule file via a
dialog.  If you invoke MergeEm with a rule file defined in the
command line and the rule file does not specify an execution time
interval, the application will do its thing and kill itself.  This
allows you to periodically invoke it via a scheduler without
cluttering your desktop.  If you invoke MergeEm with a rule file
defined in the command line and the rule file specifies an execution
time interval, the application will not kill itself but will continue
operation until you stop the timer and kill it.  If you invoke
MergeEm without a rule file specified on the command line, you are
responsible for killing the application when you are finished with it
whether or not the rule file contains an execution time interval in
the command section.

You build/edit the rule file using the text editor of your choice or
from within MergeEm.  The application automatically supports the UNIX
and DOS end-of-line formats.  Beginning and ending pattern matching
strings as well as variable names are limited to 260 characters each.
 There is no known size constraint for the extracted text.

The replace with text (new in Version 4.0) is limited to 260
characters.

Changes/Additions in Version 5.0
o   added an Equate rule;
o   enhanced the rule editor to make the editing process somewhat more intuitive;
o   enhanced this Help File;
o   changed the format of errors being written to the error log;
o   added extra information to error messages when have file operation failures;
o   allow user ID and password authentication for scan file http gets;
o   now allow patterns to contain up to 10480 characters up from 1024;
o   allow creating a NEW Rule File when you start a session;
o   added a /s switch for those who start MergeEm via a scheduler or from RUN to disable the timer even if the specified Rule File contained a reschedule time value;
o   allow dynamic creation of output file names with the current date embedded;
o   fixed a reschedule timer bug that forced timer operations even when you didn't define it;
o   allow you to launch an executable prior to scanning the internet or intranet for files; and 
o   enforce a time delay between 0 and 59 seconds before MergeEm will resume execution after the exe launch to allow time for the executable to do its thing.

Acknowledgments:

The author wants to thank John Heard, owner of Beyond Engineering for
not only suggesting this application in the first place but also for
providing encouragement, constructive criticism, and beta testing.

