AIML 1.0 Tags Set
Adopted by A.L.I.C.E. A.I. Foundation
AIML Architecture Committee
July 16, 2001
© 2001 A.L.I.C.E. A.I. Foundation
AIML 0.9 is the tag set AIML 1.0 is an implementation independent
implemented by program B on specification of tags endorsed by the
about September, 2000 AIML Architecture Committee
AIML 0.9 AIML 1.0 Tag Type Note
<alice>  <aiml> AIML block delimeter [Closing tags not shown]
<name/>  <bot name="name"/> Built-in bot parameter may appear in pattern
(see Note 1.)  <bot name="XXX"/> Custom bot parameter <srai>BOT XXX</srai>
<justbeforethat/>  <that index="2,1"/> Built-in predicate See Note 3.
<that/>  <that index="X,Y"/> Built-in predicate default "that"
<that>  <that> AIML that pattern contains AIML pattern
<category>  <category> AIML category  
<justthat/>  <input index="2"/> Built-in predicate See Note 3.
<beforethat/>  <input index="3"/> Built-in predicate  
<condition name="X" value="Y">  <condition name="X" value="Y"> Conditional branch  
<condition name="X">  <condition name="X"> Conditional branch  
<condition>  <condition> Conditional branch  
<gender>  <gender> Gender substitution Exchange "he" and "she", "him" and "her"
<date/>  <date/> Built-in predicate date and time
<get_ip/>  <id/> Built-in predicate default "localhost"
<getname/>  <get name="name"/> Built-in predicate default "X-person"
<getsize/>  <size/> Built-in predicate # of categories loaded
<star/>  <star index="X"/> Built-in predicate binding of * (see Note 4.)
<thatstar/>  <thatstar index="X"/> Built-in predicate binding of * in that
<gettopic/>  <get name="topic"/> Built-in predicate default "you"
<topicstar/>  <topicstar index="X"/> Built-in predicate binding of * in topic
<getversion/>  <version/> Built-in predicate AIML program version
<get_XXX/>  <get name="XXX"/> Custom predicate Botmaster defined XXX, default (3)
<gossip>  <gossip src="X"> Append to file  
<load filename="X"/>  <learn>X</learn> AIML loading  
<li name="X" value="Y">  <li name="X" value="Y"> Conditional branch item used by <condition>
<li value="Y">  <li value="Y"> Conditional branch item used by <condition name="X">
<li>  <li> General list item used by <random>, <condition>
<pattern>  <pattern> AIML Pattern contains AIML pattern
<person/>  <person/> Prounoun transform macro <person><star/></person>
<person2>  <person2> Prounoun transform swap 1st & 2nd person
<person2/>  <person2/> Prounoun transform macro <person2><star/></person2>
<person>  <person> Prounoun transform swap 1st & 3rd person
<random>  <random> Random selection Random uniform selection
<settopic>  <set name="topic"> Built-in predicate returns contents
<setname>  <set name="name"> Built-in predicate returns contents
<set_XXX>  <set name="XXX"> Custom predicate See Note 2.
<sr/>  <sr/> Recursion macro <srai><star/></srai>
<srai>  <srai> Recursion  
<system>  <system> Execute OS shell platform-dependent
<template>  <template> AIML template  
<think>  <think> Nullify output Hides side-effects
<topic name="X">  <topic name="X"> AIML topic group X is AIML pattern
 <uppercase> Text manipulation convert all text to Uppercase
 <lowercase> Text manipulation convert all text to Lowercase
 <sentence> Text manipulation capitalize the first word
 <formal> Text manipulation capitalize every word
 <if name="X" value=Y"> Conditional branch  
 <else> Conditional branch  
 <javascript> AIMLScript Javascript
Notes
(1) Custom bot parameters
<birthday/>  <bot name="birthday"/> (4) The AIML 1.0 pattern panguage includes the multiple
<birthplace/>  <bot name="birthplace"/> wildcard proposal adopted by the Pattern Language
<boyfriend/>  <bot name="boyfriend"/> Committee in June, 2001.  Patterns may contain one
<favoriteband/>  <bot name="favoriteband"/> or more instances of * and _ wildcards.
<favoritebook/>  <bot name="favoritebook"/>
<favoritecolor/>  <bot name="favoritecolor"/>
<favoritefood/>  <bot name="favoritefood"/>
<favoritemovie/>  <bot name="favoritemovie"/>
<favoritesong/>  <bot name="favoritesong"/>
<favroritemovie/>  <bot name="favroritemovie"/>
<for_fun/>  <bot name="forfun"/>
<friends/>  <bot name="friends"/>
<gender/>  <bot name="gender"/>
<girlfriend/>  <bot name="girlfriend"/>
<kind_music/>  <bot name="kindmusic:/>
<location/>  <bot name="location"/>
<look_like/>  <bot name="looklike"/>
<botmaster/>  <bot name="master"/>
<question/>  <bot name="question"/>
<sign/>  <bot name="sign"/>
<talk_about/>  <bot name="talkabout"/>
<wear/>  <bot name="wear"/> (3) The index tag, wherever it appears, is optional.  The default
value is index="1" (or index="1,1" for 2-d indexes)
(2) The expression <set name="XXX">YYY</set> The index tag uses offset one indexing.
may return XXX or YYY as defined by the
botmaster.