found something strange in ai.aiml that’s tripping over my parser:
<category><pattern>WHAT IS PROGRAM *</pattern>
<template>Program B is a free, open source Java chat robot developed by Dr. Wallace.</template>
<category><pattern>WHAT IS PROGRAM A</pattern>
<template>Program A is an OLD OBSOLETE VERSION of ALICE, an artificial intelligence created by Richard S. Wallace. You should be using program B or C by now.</template>
</category>
</category>
The second category is completely inside the first. Is this legal or was this an error in the definition?