A that should follow the same rules as a pattern, so should not have any punctuation or special characters. If it has some, our AIML parser will remove some of them, but you should not rely on that. In general the AIML is converted to Self, and a pattern in Self can contain punctuation and special characters.
The case does not matter, our AIML parser converts all thats and patterns to lower case.
What cases are you specifically having issues with? I can take a look if you give me the question, previous, and your expected response.