/* DIG server exmaple Filename: dig_server_myquery.pl Author: Zhisheng Huang Last modified: 5 July, 2004 */ :-use_module(library('dig/dig_client')). :-use_module(library('dig/dig_server')). :-use_module(library('dig/dig_process')). :-use_module(library('dig/dig_db')). :-use_module(library('http/thread_httpd')). %:-use_module(library('dialog/pretty_print')). %% This is an exmaple in which the Prolog DIG server picks up just a %% query with the id "myquery", then asks it. %deal with the ask request, pickup a satisfiability query only. my_dig_server_processing(RequestData, Answer, _Options):- dig_requestdata_analysis(RequestData, Data, Type), Type=asks, E = element(_Type, [id='myquery'],_C), dig_data_analysis(Data, _, E, _OtherData), dig_ask(elements([E]), Answer, [connection(close)]), true. my_dig_server_processing(RequestData, Answer, _Options):- dig_requestdata_analysis(RequestData, _Data, Type), Type=asks, Answer=answer(_, text('')), true. %deal with other request my_dig_server_processing(RequestData, Answer, Options):- dig_post(RequestData, Answer, Options). :- dig_server_port(Port), set_dig_server_id('SWI-Prolog DIG Server ( MyQueries Only)'), http_server(dig_server,[port(Port)]).