質問をする別の方法は次のとおりです。
原子のすべてのプロパティを一覧表示するにはどうすればよいですか?
例えば:
movie(agora).
director(agora, 'Alejandro Amenabar')
duration(agora, '2h').
agora
そのため、引数の述語をすべて受け取りたいと思います。この場合movie
、director
、duration
、 、その他のパラメータ('Alejandro Amenabar', '2h')
.
私は見つけました: this、およびthis question ですが、よく理解できませんでした。
PersonInvited
映画について何か気に入らない場合は、「変数回答」に false の値を設定したいと思います。
私のクエリは次のようになります。
answer(Answer, PersonInvited, PersonWhoMadeInvitation, Movie)
答え:この監督は好きじゃない
answer(false, PersonInvited, PersonWhoMadeInvitation, Movie):-
director(Movie, DirectorName),not(like(PersonInvited,DirectorName)).
たとえば、ジャンルなどのプロパティでも同じことが起こります。
答え: このジャンルは好きじゃない
answer(false, PersonInvited, PersonWhoMadeInvitation, Movie):-
genre(Movie, Genre), not(like(PersonInvited,Genre)).
したがって、すべてのオブジェクトのすべての機能を繰り返し記述するのではなく、この状況を一般化したいと思います。