One thing to remember, too, is that there’s no rule for placement of either wildcard. So the following:
_ yourself
* yourself
-or-
yourself _
yourself *
only matters in what the specific wildcard does, not where it’s placed. In other words, the underscore isn’t required to go before any matched words. You can just as easily use the asterisk. In fact, in the vast majority of cases, the asterisk is the recommended wildcard to use.
In the ALICE Annotated AIML (AAA) set, the pattern “_ yourself” exists, with a template of “<star> myself”. That particular category changes “tell me about yourself” to “tell me about myself” in EVERY case, even when there’s a direct match of “tell me about yourself” existing. This has caused me a few problems with Morti, so I removed the “_ yourself” category completely, and added some categories, while modifying others, to achieve the same effect.
Which brings me to the <person> and <person2> tags. These are the preferred methods for changing “context perspective” in responses. These tags work as follows:
The <person> tag swaps words between first person and second person:
I—> you
me—> you
myself—> yourself
mine—> yours
you—> me
yours—> mine
yourself—> myself
There are likely other transformations, but they are script dependent. In fact, all of these are script dependent, to be honest.
The <person2> tag, on the other hand, is for making the following changes:
I—> “him or her”, or “they”, depending on the script
me—> “him or her”, or “they”, depending on the script
(reverse transformations are problematical, at best. The functions I’ve studied that accomplish this follow very loose rules, and therefore provide poor results, most times)
I don’t know if you’ve seen it yet, but alicebot.org has a Tag Reference Page that may prove useful to you.