|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Pro/3 can operate in server-mode, where the system processes
requests from clients via an ODBC-compliant SQL "dispatcher" database (p3bridge). The clients would typically be web-clients (web browsers.
One
general client-implementation based on PHP and a MySQL database can be downloaded from
www.ligaya.net/p3. Other types of
clients can easily be implemented based on the p3bridge
interface. PHP and
MySQL are also available for free
from the Internet.
It is important to remark that clients would be "end users" rather than knowledge engineers, as the client lacks many functions for entering knowledge (except knowledge streams as explained under), and also functions such as drawing knowledge graphs and trees. The server handles the following types of requests:
One p3bridge-database can serve several Pro/3 systems (each running their own knowledge base). Procedures and usage of this database is described in the schema.
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
OPERATING THE SERVER The server is started by selecting Server in the menu. The server-window will then be opened. The window shows the status of the server, and it is used to change the state of the server and to perform server-related commands. Before anything else can be done, the server must be connected to the SQL-server with the Connect-button. Connecting involves starting an ODBC-connection (unless you are using an SQL-type knowledge base which already has such connection). You will be prompted as required to perform this connection. If successfully connected, the server will enter Pause-mode. In this mode you can:
The following is not included in the reset (and must if so desired by reset manually):
From Pause-mode you can enter Processing-mode by pressing the Process requests-button. The server will then be seen as on-line by clients (and accept logins). Client requests will be processed on a first-come-first-served basis (including requests possibly queued since last time the server was on-line). The server will continue in this mode until the Pause-button is pressed and the server returned to Pause-mode. From Pause-mode the server can be disconnected by pressing the Disconnect-button. The server-window will be closed when the Exit server mode-button is pressed. The server-window has two display scroll-fields. The upper field shows information relating to the requests being processed. The lower field shows processing trace (same as is written to the trace-file).
Request processing mode is affected by the use of knowledge streams and/or subscriptions and publications. The server can be used with knowledge streams, where clients can assert (input) knowledge (including rules) by writing these to the stream which is implemented as an SQL table. The server can be used with subscriptions, where clients can assert (input) sentences by writing these to the subscription SQL table. The server will store any new knowledge in the subscription tables, and then rederive sentences, before processing any queries. Since only sentences (and not rules) can be subscribed, it is not necessary for the server to rebuild the optimized derivation graph each time a query is processed. If the KB publishes sentences, then a client can make use of the server without processing queries i.e. by reading published sentences. This would typically work in conjunction with subscriptions such that the client asserts sentences (belonging to subscribed sentence types), then request for rederivation and finally reads published sentences. |