Technology Overview
Revision 07-17-2002
System Structure
The SpellChecker.net system consists of four parts:
- Software, consisting of a spell-checker, a grammar
checker and a thesaurus, that resides on the
SpellChecker.net server.
- Several lines of code that are embedded into the HTML
code of web pages
- A JavaScript file placed on the web server.
- A simple CGI script installed on the web server.
System Operation
The system functions as follows:
- A user clicks the SpellCheck button or link to initiate
the session.
- JavaScript code creates a pop-up window containing a
form that displays the text to be checked.
- The form is automatically submitted to a CGI file on the
server, passing the language as parameters. This process
identifies unrecognized text and outputs the results in the
pop-up window, providing suggestions for correction.
- Options are given to approve or ignore offered
suggestions. When the user clicks any option button (except
"Finish Checking") in the bottom frame, the center frame
refreshes, showing current changes. Alternatively, if the
user clicks an underlined word in the middle frame, the
bottom frame refreshes, displaying alternatives for that
word. In addition, the banner in the top frame refreshes
each time an option is selected. This process continues
until the user chooses "Finish Checking".
- When the "Finish Checking" button is selected, results
are submitted to a simple proxy CGI file (sproxy.cgi),
located on the client's server.
- The text passes from the CGI back to the location where
the text originated. This workaround with CGI script is
necessary, due to security restrictions coded into most
browsers.
The detailed flowchart that describes the system's
operation is
available.
The current version has multiple-server functionality.
Therefore, if the main server is down or there are network
connection problems, the scripts will switch to secondary
servers, making the service more reliable.
This
functionality is disabled on the SpellChecker.net site now but
available to customers who license the SpellChecker.net
engine
The current version also includes "autospellcheck". This
feature allows the option of automatically checking text,
rather than pressing a button or link. If there are errors in
the text, the SpellCheck window opens as usual. If there are
no errors, text is automatically posted.
SpellChecker Server
Software
SpellChecker.net server software consists of a
spell-checker, a grammar checker and a thesaurus, which
support multiple languages. It runs on a several platforms,
utilizing third-party API. The current version was designed
for and tested under WinNT 4.0 Server (SP4+) and Windows 2000
(SP2) platforms, FreeBSD 3.x, Linux.
An HTTP (web) server with CGI support is necessary for the
system to operate. The server invokes an installed CGI script
each time a check is requested. This script connects to an
application server, which runs on this (or another) server and
performs the required tasks. The application server then
processes the request and returns the results to the CGI. In
turn, these results pass back to the user's browser.
Server performance is based on processor speed. Neither a
large amount of memory nor a fast hard drive is necessary for
performance. The current version of the SpellChecker engine
occupies 10-20 MB of disk space, plus log files. The current
application server version utilizes approximately 25 MB of RAM
under heavy load. CGI that accepts user requests requires an
additional 1.5 MB of memory. Therefore, a typical server
containing an operating system, an application server, a web
server, and CGI scripts requires about 80 MB of memory.
Web Site Installation
Requirements
The following steps are necessary to install the
SpellChecker system:
- Go to our sign up
page to register and receive a CustomerID number.
- Download our JavaScript file and follow the instructions
to include it in your page.
- Download the sproxy.cgi file and copy it into your
script directory. Some adjustments must be done to
sproxy.ini file to include the correct path information.
- Edit the page that will contain the spell-checking
feature, using our installation
instructions (AutoSpellCheck
version is also available).
The following
modifications must be made to the HTML page:
- Add a control that will initiate each spell-checking
session -- a button, link, or clickable image. The control
could include any event capable of initiating a JavaScript
code. This code calls a 'doSpell' procedure, which creates
a pop-up window and starts the checking session. If the
AutoSpellChecker feature is to be installed, then an
"on/off" checkbox and "Options" button should also be
added.
- Add a <script> link to the header of the page,
which points to the downloaded JavaScript file where the
'doSpell' function is defined.
NOTE: If the SpellCheck feature is added to HTML
that is not static and generated by some other system (for
example, a message board or web-based mail system), the
system itself (or templates that are used for generating
output) must also be changed in such a way to produce HTML
as described above.