Artificial Intelligence Markup Language: Difference between revisions

From Citizendium
Jump to navigation Jump to search
imported>Eric Evers
imported>Eric Evers
Line 27: Line 27:
  <pattern>  a stimulus
  <pattern>  a stimulus
  <template>  a response
  <template>  a response
  *, <star>   wild card characters
  *, <star/> wild card characters
  <srai>      recursive response tag
  <srai>      recursive response tag
<set>      set a variable value
<get>      get a variable value

Revision as of 22:05, 13 February 2008

Artificial Intellegence markup language

Overview

AIML is an XML complient language created to store data to drive a dialog engine. Responses to various stimulus phrases are stored in an organized way. These responses are optionally recursive in nature. AIML was used to win the Lobner (Turing test) Prize in AI three differnt years. There are aiml engines in python, C++, java and other languages. AIML processes word oriented data. Punctuation and capitalization are generally ignored.

What does aiml look like? Consider: hello_world.aiml

<?xml ?>
<aiml>
  <category>
    <pattern>hello alice</pattern>
    <template>Hello world</template>
  </category>
</aiml>
sample output: ------------
you say > hello alice
alice > hello world

Tags

Various tags exist in aiml.

<aiml>      the root tag
<category>  a stimulus-response pair
<pattern>   a stimulus
<template>  a response
*, <star/>  wild card characters
<srai>      recursive response tag
<set>       set a variable value
<get>       get a variable value