アトムとして配列を必要とするプロローグクエリがあります:
searchEventsOnCategory(Categories,Events) カテゴリは文字列のリストです。
入力例: searchEventsOnCategory(['Bar','Disco'],Events)
出力: イベント = [listOfEvents]
searchEventsOnCategory(Categories,Events):-
findall([X,V], event(X,_,_,V), List),
compareCategories(List,Categories,Events1),
Events = Events1.
私のJavaコードは次のとおりです。
public ArrayList<String> getEventsByPrologWithCategories(ArrayList<String> Categories){
ArrayList<String> events = new ArrayList<String>();
//(Persons,Budget,Categories,Events)
Variable X = new Variable("X");
Compound V = new Compound("[Bar]");
Query q4 =
new Query(
"searchEventsOnCategory",
new Term[] {V,X}
);
...
return events;
}
プロローグがVを文字列のリストとして取得するVをどのように定義する必要がありますか?