Grammar and spell-checking techniques for Maltese

This project discusses and applies grammar and spell-checking techniques to Maltese. Although spell-checkers are also available for this language, the suggestions they offer do not always meet user expectations. Additionally, no grammar checker for Maltese has been developed to date.

Using a novel Soundex approach, the spell-checker developed promises to offer many more accurate suggestions. This is because it utilises the pronunciation of words, as well as the character distance between words. Therefore, while other spell-checking techniques find it difficult to suggest ‘għamluhomlhom’ for ‘amluhomlom’, this would be possible if using the Soundex. Moreover, correct words with a pronunciation similar to a misspelling could obtain a higher ranking. Thus, ‘ċerv’ and ‘ħabib’ would receive a higher ranking for the misspellings ‘ċerf’ and ‘ħabip’.

Apart from using the pronunciation of words to obtain suggestions, the Symmetric Delete algorithm was used to obtain words within a certain character edit distance. This means that ‘rabatli’ is capable of being generated for ‘ravatli’, or ‘kellimni’ for ‘kellinmi’.

The rule-based grammar checker uses an XML rule base that is easily extendible. Only minimal knowledge of the inner workings of the system would be necessary to expand the rules. Some of the rules developed include: checking for the correct use of the ‘-il’ particle that should be tagged onto the numbers eleven to nineteen when immediately followed by nouns (e.g., ‘tnax-il ktieb’) and checking that the definite article would correspond to the noun (e.g., correcting ‘il-xemx’ to ‘ix-xemx’)

A web-based user interface was provided to enable the user to write text and receive corrections. Words were marked in red to indicate an orthographic error and in blue to indicate a grammatical error. Suggested corrections could then be applied by selecting them.

Figure 1. Overview of the system
Figure 2. Web interface of the grammar and spellchecker
Student: Matthias Buhagiar
Course: B.Sc. IT (Hons.) Computing and Business
Supervisor: Dr Colin Layfield
Co-supervisor: Prof. John M. Abela