Tcn spell Checker

Download 29.97 Kb.
NameTcn spell Checker
A typeDocumentation > manual > Documentation

TCN Spell Checker

Team AZP, Developers

Iteration 2 Deliverable

February 18, 2005

Revision Sheet

Release No.


Revision Description



Initial Revision

Page #


1.1 System Overview 1

1.2 Authorized Use Permission 1

1.3 Points of Contact 1

1.3.1 Information 1


2.1 System Configuration 1

2.2 Function Flows 2

2.3 User Access Levels 3

2.4 Contingencies and Alternate Modes of Operation 3


3.1 Extracting from the .ZIP archive 1

3.1.1 Install Web Service Component 1

3.1.2 Install Windows Service Component 1

3.2 Starting the Application 1



1.1 System Overview

The Spell Checker application is intended to assist data search services by evaluating search terms as they are entered by a user, parsing the terms and comparing them to the content of a number of specialized dictionaries, and finally returning a number of suggested search terms that specific algorithms (provided by the system developers or created by TCN in the future) indicate are “related” to the original search terms.
The delivery of search terms to the Spell Checker application is the responsibility of the TCN staff integrating Spell Checker into TCN information search systems. Similarly, the handling of the zero or more suggestions offered by Spell Checker after search term processing is complete is left to TCN developers. In other words, Spell Checker provides a service which external client services may take advantage of, and no other functionality.
Spell Checker possesses no easily recognizable user interface, and administration of the program requires the administrator to manipulate an XML-based configuration file between application startups.
The Spell Checker application has been implemented in a two-tiered service architecture. A Windows service, which executes search requests, communicates directly with a web service, which is the external façade which receives the external requests directly from client processes.
The Spell Checker application’s architecture and behavior can be broken up into two separate function-groups handling the application’s generation of dictionaries from source files or databases upon startup, and also the individual handling of single search requests. These differences will be covered in more detail later in this document.

    The software delivered in this iteration is fully functional in that it is capable of building dictionaries from source files, parse incoming search requests, and produce a short list of suggested words using predefined search algorithms included with this build. New algorithms, dictionary handlers, and formatters can be developed by TCN professionals using the provided interfaces and existing examples as templates.

1.2 Authorized Use Permission

Usage of this software is limited to its owner via the terms of its development. Spell Checker is wholly owned by TCN, and may not be used or referenced without their express consent.

1.3 Points of Contact

1.3.1 Information

For additional information, Team AZP can be contacted through Project Leader/ TCN Liaison Joshua Correa (



2.1 System Configuration

The system is contained entirely within a single system (even a single machine) providing a web service to other applications with search information to submit. Local text files, databases, or other data sources are used by the system during startup, and the service communicates with other machines (for instance, the TCN Website) to receive in put and output suggestions.

2.2 Function Flows

The below diagram depicts the normal flow of the Spell Checker loading process followed immediately by the running system, ready to respond to spell check requests.

The loading process begins the moment the application is started, where the program’s configuration file is referenced and any existing dictionaries cached to disk are retrieved and stored in memory. If the configuration file indicates a dictionary not recovered from disk is needed, the new dictionary is constructed from its source files or databases and held in memory. Once all dictionaries are assembled and accounted for, the application enters a second stage of operation in which is waits for spell check requests to process.
When a spell check request is detected, the program parses the provided search phrase using a “Formatter” into a list of one or more checkable terms (IE, words separated by spaces, the entire unaltered search phrase, etc.). These terms are supplied to a function loop which moves through the list of spell check “Rules” (pairs of spell checking algorithms and their associated dictionaries to check against) to identify if the specified word or term exists in a dictionary (and thereby assume to be spelled correctly) or otherwise generate a list of suggested words or terms that the algorithm indicates may be related to the user-submitted search term. The list of suggestions accumulates during this function loop, and when there are no more search terms to process, and every algorithm has been run to its completion, the resulting set of suggested words or terms is sent to the origin of the spell check request. At this point, the program returns to its “waiting” state and lies dormant until the next search request occurs.

2.3 User Access Levels

No distinct user access levels are defined since under normal circumstances, Spell Checker’s activities should be completely transparent to its users. An information search user should never specifically contact Spell Checker with his or her search data, but the search site he or she uses may relay data to Spell Checker for analysis and related suggestions.
Developers and system maintainers using or modifying Spell Checker only require access to the configuration file to make simple replacements or tweaks to the running system’s functionality, or in the case of large involved modifications, a restart of the application.

2.4 Contingencies and Alternate Modes of Operation

There is a significant time cost in building and loading large or manifold dictionaries into the system upon startup, so in the case of an emergency or failure requiring a reboot, the system will need to spend a significant amount of time (perhaps several minutes in the extreme case) assembling its resources before it can readily receive and process searches. Once this loading phase of the application is complete, however, normal operations can resume.
There are no secondary modes of operation in this application. It is either not running, building its resources in preparation for search term processing, or actively waiting for search term input.



Extracting, Installing, and Running TCN Spell Checker

3.1 Extracting from the .ZIP archive

In addition to user documentation, the Spell Checker .ZIP file contains installers for the Windows service and web service aspects of the application. Both must be executed before Spell Checker can be optimized and run.

3.1.1 Install Web Service Component

Installs SpellChecker Web Service version 1.2.0

        1. Uninstall SpellChecker Web Service

        2. Unzip the file to a convenient location

        3. Run WebServiceInstaller.msi

3.1.2 Install Windows Service Component

Installs SpellChecker Service version 1.2.0

        1. Uninstall SpellChecker Service

        2. Unzip the file to a convenient location

        3. Run ServiceInstaller.msi

3.2 Starting the Application

      1. Start the ‘TCN SpellChecker Service’ windows service

      2. Browse to SpellCheck.asmx typically located at http://localhost/Tcn.SpellChecker.WebService/

      3. Click the ‘CheckSpelling’ link

      4. Type in a search string, and a methodology

Currently, the BinaryOnly and ClosestMatch methodologies are configured. BinaryOnly performs a simple binary search and identifies words not in the dictionary (identical to Iteration 1 functionality). ClosestMatch will return all words within 3 operations away from the search string. Try 'attourney' or 'photosyntesis'.
We have not found a stable solution to the remoting timeout bug, so the windows service will have to periodically be restarted.

Share in:


Tcn spell Checker iconZap checker user manual unique features the zap checker is a quality...

Tcn spell Checker iconSpell of Catastrophe by mayer alan brenner

Tcn spell Checker iconBooks Smithing Skill Spell Damage Mitigation

Tcn spell Checker iconMy name is Tommy from usa, I want to quickly tell the world that...

Tcn spell Checker iconVersion 0 checked against original, spell checked, formatted completed October 19, 2003

Tcn spell Checker iconGauldoth lost everything when the world was destroyed, including...

Tcn spell Checker iconDisk image Editor Nigel Parker Spell Checking Peter Badrick Alex...


When copying material provide a link © 2017