BACKGROUND

Information, particularly digital information, is stored in many different data repositories or knowledge stores. In the case that a user has created the data repository and stored information, the information may be organized in a manner so that the creating user is able to remember the information location and, therefore, recall the information. For example, a user may create folders within a hierarchical folder structure and name the folders in a manner that allows the user to understand and know what information is stored in each folder. However, since the amount of digital information may continually increase, the organization of the folders may become more complicated and lead to a user, even the creating user, forgetting where information is stored. Additionally, a creating user may know that information exists, but may not know enough information about the information in order to recall where the information is stored. Thus, finding information can be very time-consuming and becomes very complicated.

In addition to this, many data repositories contain information that is organized by a system, which makes it very difficult for a user to manually find information because the information is organized and stored in a manner that allows the system to find the information and is not necessarily intuitive to an individual. Thus, many systems allow a user to query the system in order to obtain information from a knowledge store. The user is able to provide a query, many times in a natural language format, to the system and the system converts the query into a machine-readable format and uses the converted query to execute the query on the data repository. The system can then provide a responsive output to the user. This prevents the user from having to manually find information.

BRIEF SUMMARY

In summary, one aspect of the invention provides a method, comprising: receiving a query from a user, wherein the query comprises at least one term related to a particular domain; identifying that a desired definition of the at least one term is unknown, by determining that the at least one term does not map to a term having a known definition; receiving, responsive to requesting feedback from a user, a requested definition of the at least one term from the user; adding, for the at least one term, the requested definition to a domain grammar comprising (i) domain-specific terminology and (ii) various definitions corresponding to the terms within the domain grammar, wherein the adding comprises (a) extracting expressions from the requested definition and (b) adding, for the at least one term, the expressions into a structured format within the domain grammar; combining (iii) the requested definition and (iv) terms from the parsed query having previously known definitions into a complete query; and providing a response to the query by executing the complete query on a knowledge store.

Another aspect of the invention provides an apparatus, comprising: at least one processor; and a computer readable storage medium having computer readable program code embodied therewith and executable by the at least one processor, the computer readable program code comprising: computer readable program code configured to receive a query from a user, wherein the query comprises at least one term related to a particular domain; computer readable program code configured to identify that a desired definition of the at least one term is unknown, by determining that the at least one term does not map to a term having a known definition; computer readable program code configured to receive, responsive to requesting feedback from a user, a requested definition of the at least one term from the user; computer readable program code configured to add, for the at least one term, the requested definition to a domain grammar comprising (i) domain-specific terminology and (ii) various definitions corresponding to the terms within the domain grammar, wherein the adding comprises (a) extracting expressions from the requested definition and (b) adding, for the at least one term, the expressions into a structured format within the domain grammar; computer readable program code configured to combine (iii) the requested definition and (iv) terms from the parsed query having previously known definitions into a complete query; and computer readable program code configured to provide a response to the query by executing the complete query on a knowledge store.

An additional aspect of the invention provides a computer program product, comprising: a computer readable storage medium having computer readable program code embodied therewith, the computer readable program code executable by a processor and comprising: computer readable program code configured to receive a query from a user, wherein the query comprises at least one term related to a particular domain; computer readable program code configured to identify that a desired definition of the at least one term is unknown, by determining that the at least one term does not map to a term having a known definition; computer readable program code configured to receive, responsive to requesting feedback from a user, a requested definition of the at least one term from the user; computer readable program code configured to add, for the at least one term, the requested definition to a domain grammar comprising (i) domain-specific terminology and (ii) various definitions corresponding to the terms within the domain grammar, wherein the adding comprises (a) extracting expressions from the requested definition and (b) adding, for the at least one term, the expressions into a structured format within the domain grammar; computer readable program code configured to combine (iii) the requested definition and (iv) terms from the parsed query having previously known definitions into a complete query; and computer readable program code configured to provide a response to the query by executing the complete query on a knowledge store.

A further aspect of the invention provides a method, comprising: receiving a query from a user; identifying known terms within the query having known definitions; identifying an unknown term within the query having an unknown definition and being related to a particular subject-matter area, wherein the identifying comprises comparing the unknown term to a subject-matter area grammar and determining the unknown term is not included in the subject-matter area grammar; requesting, from a user, a definition for the unknown term; for the unknown term and upon receipt of the definition from the user, parsing the definition and adding the parsed definition to the subject-matter area grammar for the unknown term; creating a complete query from (i) the definition of the unknown term and (ii) the known definitions of the terms; and providing a response to the query by utilizing the complete query to perform a search for the response on a knowledge store.

For a better understanding of exemplary embodiments of the invention, together with other and further features and advantages thereof, reference is made to the following description, taken in conjunction with the accompanying drawings, and the scope of the claimed embodiments of the invention will be pointed out in the appended claims.

