Hi!
I posted this question at Stack Overflow and got several useful comments (some of them from people that are also here). But i thought that people here might have interesting suggestions as well.
Essentially i am looking for a recommendation of which tools to use to make this system:
- A web interface where end users can add and edit facts, e.g. “smoking causes cancer with probability 0.02”. This should preferably be something accessible and not involve writing Prolog or other code (e.g. selecting a subject, relation and object from three lists). Here it would also be nice to have some functionality for seeing whether some concepts already exist in the knowledge base (e.g. if a user were to enter a fact about cancer and the concept cancer is already present in the knowledge base, this should be shown, preferably also related concepts). Maybe some drop down menus or lists could achieve this.
- Functionality for managing user profiles, passwords, privileges, etc.
- A web interface where end users can query the facts section, e.g. “what are causes of cancer?”. The rules which compute answers to queries would not be something that end users edit (i want to do this instead). They just see the results in a easy to comprehend format.
- A language which is Prolog or as powerful as prolog which i (and not end users) can use to create inference rules (which generate answers to queries from users).
- If it is possible, some means for end users to get a graphical representation of the knowledge base.
I am thinking that i could use Pengines for writing and running inference rules, Protegé (which is an ontology editor (does OWL2) for end users to input and edit facts, and Java script for the front end interacting with end users. Does this seem like a viable strategy?
I don’t have much experience with web programming so i am looking for something not too complicated.
Thanks!
/JCR