Content area
Full Text
Abstract
Chapter 3 of Library Technology Reports (vol. 49, no. 8), "Streamlining Information Services Using Chatbots," describes elements in AIML. The basic structure of AIML is simple; one can create a working chatbot using a small number of AIML tags.
(ProQuest: ... denotes formulae omitted.)
Categories, Patterns, and Templates
AIML is composed of three basic elements. The building block of AIML is the category. Each category represents a question/answer or input/response pair. Categories are themselves composed of patterns and templates. Patterns represent the input received by the AIML interpreter. Templates represent the response generated by the interpreter to a given input.
An example of a very simple AIML category is the following:
To construct a simple AIML category from scratch, we first need to identify the code format, (in this case XML with an XML version and encoding statement). Follow this with an open AIML statement with its associated version. End with a closed AIML statement as below. Next, add the category example above to the code, creating a meaningful question/answer pair.
That's it . . . you've created the first question to which your robot can respond with correct information.
Preprocessing Steps
Before your AIML code is processed, two important transmutations are performed by the AIML interpreter program. These are deperiodization and normalization. Deperiodization is the simple removal of periods from the query string sent to the interpreter. Thus, the statement "We want the library's books." is transformed to "We want the library's books."
The second step, normalization, is more complex. During normalization, any remaining punctuation is removed first. Then all text is changed to uppercase, and finally the string is run against a number of "reduction" files to identify and expand any contractions of the short forms...