Damit man unterschiedliche Fragestellungen mit einer Abfrage beantworten kann, gibt es die Wildcards * und _, die Wörter oder Satzfragmente ersetzen. Die Wildcards ersetzen ein oder mehrere Wörter bei der Userabfrage und kann am Anfang, in der Mitte oder am Ende stehen.
Beispiel
| Frage |
Darstellung in AIML |
Welche Telefonnummer hast Du? Kann ich Deine Telefonnummer haben? |
<pattern>* Telefonnummer _</pattern> |
| Ich möchte Deine Telefonnummer. |
<pattern>* Telefonnummer </pattern> |
Experimentieren Sie doch etwas mit den Wildcards und kopieren Sie die Category in Ihre Alice!
|
<category> <pattern>* Telefonnummer _</pattern> <template>Ich habe leider kein Telefon.</template> </category>
Beispiel zum Kopieren
|
Priorität der Abfragen: Oberste Priorität hat _ (Underscore), gefolgt von Buchstaben (Alphabetisch) und anschließend *. In unserem Beispiel antwortet Alice auf Fragen, die das Wort "Telefonnummer" in der Satzmitte stehen haben (Kann ich Deine Telefonnummer haben?). <pattern>* Telefonnummer</pattern> In dieser Form anwortet Alice, wenn die Frage am Ende steht (Ich möchte Deine Telefonnummer?).
Mit * sind noch weitere Funktionen verbunden!
Haben Sie im Pattern ein * gesetzt, können Sie diese Eingabe in der Antwort als Variable einsetzen. Probieren Sie es aus.
|
<category> <pattern>Kannst Du *</pattern> <template><star/>? Nein, willst Du mir es erklären?</template> </category>
Beispiel zum Kopieren
|
Kannst Du fliegen? Wird von Alice mit "Fliegen? Nein, willst Du...." beantwortet.
| <star index="1" /> mehrere <star /> in der Antwort |
nach oben |
Auf diese Weise lassen sich auch mehrere Worte aus der Abfrage auslesen.
|
<category> <pattern>Mein Name ist * *</pattern> <template><star index="2"/>?<star index="1"/><star index="2"/> aus Berlin?</template> </category>
Beispiel zum Kopieren
|
|