Xml 如何获取<;主题>;标记以在AIML中处理此问题?

Xml 如何获取<;主题>;标记以在AIML中处理此问题?,xml,artificial-intelligence,aiml,Xml,Artificial Intelligence,Aiml,对于一个项目,我问了相同的问题,但由于上下文的不同,需要不同的答案。下面的代码不起作用,我无法理解原因。我认为这是指我的另一个问题,因为is有相同的模式,但是我认为标签会首先查看下面的两种模式 <category> <pattern>WHAT IS *</pattern> <template> <think> <set name = "topic">

对于一个项目,我问了相同的问题,但由于上下文的不同,需要不同的答案。下面的代码不起作用,我无法理解原因。我认为这是指我的另一个问题,因为is有相同的模式,但是我认为标签会首先查看下面的两种模式

<category>
    <pattern>WHAT IS *</pattern>
    <template>
        <think>
            <set name = "topic">
                state<star />
            </set>
        </think>
        <condition name = "topic" value = "beauty">A subjective judgment evoked by an emotional response</condition>
        <condition name = "topic" value = "Bristol">Bristol is a city.</condition>
        <condition name = "topic" value = "London">London is a city.</condition>
        <condition name = "topic" value = "UWE">I do not have an answer for that</condition>
    </template>
</category>
<topic name = "state">
    <category>
        <pattern># WHERE IS IT #</pattern>
        <that>Bristol is a city.</that>
        <template>In the South-West of England</template>
    </category>
    <category>
        <pattern># WHERE IS IT #</pattern>
        <that>London is a city.</that>
        <template>Somewhere east of Bristol</template>
    </category>
</topic>

什么是*
状态
由情绪反应引起的主观判断
布里斯托尔是一座城市。
伦敦是一座城市。
我没有答案
#它在哪里#
布里斯托尔是一座城市。
在英格兰西南部
#它在哪里#
伦敦是一座城市。
布里斯托尔东部某处

移除句号。标记中不应使用标点符号。您不需要为此使用主题

<that>Bristol is a city</that>
布里斯托尔是一座城市
实际上,您可以更清晰地执行此操作,而无需使用如下主题标记:

<category>
    <pattern>WHAT IS *</pattern>
    <template>
        <think><set name="it"><star/></set></think>
        <condition name="it">
            <li value="beauty">A subjective judgment evoked by an emotional response.</li>
            <li value="Bristol">Bristol is a city.</li>
            <li value="London">London is a city.</li>
            <li value="UWE">I do not have an answer for that</li>
            <li>I have no idea.</li>
        </condition>
    </template>
</category>

<category>
    <pattern># WHERE IS IT #</pattern>
    <template>
        <condition name="it">
            <li value="beauty">In someone attractive.</li>
            <li value="Bristol">In the South-West of England.</li>
            <li value="London">Somewhere east of Bristol.</li>
            <li value="UWE">I do not have an answer for that</li>
            <li>Where is what?</li>
        </condition>
    </template>
</category>

什么是*
由情绪反应引起的主观判断
布里斯托尔是一座城市
伦敦是一座城市
我对此没有答案
  • 我不知道
  • #它在哪里# 有魅力的人身上的美 位于英格兰西南部 布里斯托尔以东某处 我对此没有答案
  • 什么在哪里

  • 我已经删除了标点符号,但仍然不起作用。我应该发布完整的代码吗?这是80行长的编辑:不管我怎么做,原来是标点符号。我不小心留下了主题名。谢谢