Ontologies are shared, formal -typically logic-based- descriptions of the concepts and relationships (properties) in a given domain. Ontologies can be viewed as a set of constraints on possible interpretations, in particular on instances of the concepts and their possible relationships with each other. We posit that an ontology may be used to drive the knowledge acquisition process of definining new instances using the ontology and the process of retrieving instances based on partial descriptions.
In order to exploit this possibility, an ontology needs to be extended with a set of natural language questions that can be asked from the user when some information is missing from the description of an instance. Given such an ontology where questions are attached to properties, it should be possible to generate a dynamic online questionnaire (web form) that takes into account the ontology and the answers to previous questions in determining what questions are remaining to be asked.
For example, imagine an ontology with:
- A class Hotel
- Subclasses Business Hotel and Tourist Hotel of the general Hotel class
- A datatype property rating (given the number of stars a hotel has)
- A constraint that all hotels with a rating of less than 3 stars are tourist hotels
- A disjointness of Business and Tourist Hotel (i.e. all hotels are either business or tourist hotels)
A dynamic online questionnaire could first ask about the star rating of the hotel and if the user answers with more than three stars, it would infer that the new instance or the query necessarily relates to a business hotel (or a hotel that is not classified as either tourist or business). Alternatively, the questionnaire could ask whether the user considers a Business or Tourist Hotel and if the user selects Tourist Hotel, it should allow only an answer of [1,3] to a subsequent question about star rating. In essence, the dynamic questionnaire should use inference after each question to determine what remaining questions need to be asked and what possible values for these questions should be offered to the user. (Otherwise, the answer to the question could result in an inconsistent knowledge base.) The process of asking questions and eliminating possible future questions and answers should run until the new instance is classified unambigously.
The candidate for a master's degree is expected to both design and implement such a system on a selected subset of the OWL ontology language.
Required skills and competences:
- Successful completion of the course Web-based Knowledge Representation (WebKR), familiarity with the OWL ontology representation language.
- Familiarity with dynamic web technologies (Perl, PHP, ASP, JSP or any other). Alternatively, developing a standalone GUI application in Java or any other language.