[Q] 属性継承ができません。


[Q1] Quixoteでは
          人間 =< 哺乳類;; 
          哺乳類/[呼吸 = 肺, 体温 = 定温];; 
と書くことによって哺乳類の属性が人間に受け継がれるますよね。 ところがこれを big-Quixote を使って、プログラムのなかで 確かめるにはどうすればいいのでしょう。


[A1] 以下のようにしてみて下さい。
-----------------------------------------------------------
&program;;
&subsumption;;
人間 =< 哺乳類;;
&rule;;
哺乳類/[呼吸 = 肺, 体温 = 定温];;
人間;;
&end.
-----------------------------------------------------------

ここで、人間;; がないと、?- 人間/… と聞いた時に
fail しますので、注意して下さい。

さて、継承を実行させる方法ですが、マニュアルなどが分かり難く、
大変恐縮 (__) なのですが、Quixote では
	モードを設定する(qxt-set-default-mode)
あるいは、
	質問に &q_mode[&inheritance=&all] などを付加する
という、2つの方法があります。

例えば、
===========================================================
?- 人間/[呼吸 = X, 体温 = Y];;&q_mode[&inheritance=&all].
===========================================================
のように、問い合わせに付加する方法を実行すると、

答えは、
-----------------------------------------------------------
database> ** 1 answer exists **
** Answer 1 **
    X =< 肺, Y =< 定温
database> 
-----------------------------------------------------------
となります。

Quixote の継承は、
		o =< p  ===> o.l =< p.l
で、定義しているので、(X=肺、Y=定温 ではなく)上記の答えになります。

又、Quixote を使われたら、すぐにお気づきになると思いますが、
モードの初期値は、「継承なし」になっていますので、ご注意下さい。

[Q2] 質問にいちいち &q_mode[…] を付け加えるのはめんどうですが、 モード設定を1度すれば後はそのまま何回か質問ができますか?


[A2] はい、
     同じデータベースに関して、次のモードの変更時まで有効です。

[Q3] それから、もう1つ。これらに関してはマニュアルのどこを見れば 分りますか?


[A3] 「big-Quixote システム利用マニュアル」の
	2.3.4.16  qxt-get-default-mode
	2.3.4.17  qxt-set-default-mode
を御覧下さい。