Structured natural language query and knowledge system
First Claim
1. A computer-implemented method of translating an imperative natural language sentence into formal query text for an object-relational database, the method comprising:
- receiving, in a computer system, a natural language imperative sentence, wherein the imperative sentence is a sentence that expresses a request for information;
parsing, in the computer system, the imperative natural language sentence to identify one or more verb phrases of the sentence;
parsing, in the computer system, the imperative natural language sentence to identify one or more noun phrases of the sentence;
determining, in the computer system, from each parsed natural language verb phrase one or more defined object-relational methods;
determining, in the computer system, from each parsed natural language noun phrase one or more object-relational data source elements; and
using the one or more determined object-relational methods and the one or more determined data source elements to create a formal query text in an object-relational algebra compatible for use in the object-relational database.
1 Assignment
0 Petitions
Accused Products
Abstract
A structured natural language query and knowledge system is provided to allow a user who lacks programming skills to enter a database query or a rule in the form of a structured natural language sentence. The scope of the sentence is preferably defined by an improved object relational query language, an object relational algebra, or both. Command and conditions that appear in natural language form are defined with corresponding formal query texts. A user is prompted to compose a structured natural language sentence using the defined commands and conditions. The user-selected command and its arguments appear as the verb phrase of a structured natural language sentence. The user-selected conditions and their parameters appear as the adjective phrases of the sentence. The sentence is parsed and changed into a translated formal query text for formal database query and rule processing.
-
Citations
24 Claims
-
1. A computer-implemented method of translating an imperative natural language sentence into formal query text for an object-relational database, the method comprising:
-
receiving, in a computer system, a natural language imperative sentence, wherein the imperative sentence is a sentence that expresses a request for information; parsing, in the computer system, the imperative natural language sentence to identify one or more verb phrases of the sentence; parsing, in the computer system, the imperative natural language sentence to identify one or more noun phrases of the sentence; determining, in the computer system, from each parsed natural language verb phrase one or more defined object-relational methods; determining, in the computer system, from each parsed natural language noun phrase one or more object-relational data source elements; and using the one or more determined object-relational methods and the one or more determined data source elements to create a formal query text in an object-relational algebra compatible for use in the object-relational database. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A computer system for translating an imperative natural language sentence into formal query text compatible for use in an object-relational database, the system comprising:
-
an object-relational database comprising a plurality of data objects, the database further comprising a plurality of user-defined object-relational methods, a plurality of object-relational data source elements, and a plurality of user-defined conditions; a parsing module of executable program code running on the computer system, the parsing module configured to parse a natural language imperative sentence that expresses a request for information to identify one or more verb phrases of the sentence, one or more noun phases and an optional one or more adjective phases; and a translation module of executable program code running on the computer system in communication with the database, the translation module configured to (a) determine from a natural language verb phrase one or more defined object-relational methods, (b) determine from each noun phrase one or more object-relational data source elements, and (c) determine from each optional adjective phase one or more defined conditions, the translation module further configured to create formal query text in an object-relational algebra that is compatible for use in the object-relational database, wherein the formal query text is determined from the one or more determined object-relational methods, the one or more determined object-relational data source elements, and the optional one or more determined conditions. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A computer-implemented method of creating a query in an object-relational algebra, the method comprising:
-
prompting, via a user interface provided by a computer system, a user to choose one or more previously defined object-relational methods and/or one or more object-relational algebra operators; prompting, via the user interface, the user to choose from a list of defined objected relational data source elements as one or more arguments to the one or more methods selected or the one or more operators selected; prompting, via the user interface, the user to choose an optional one or more conditions from at least a set of defined conditions, and prompting the user to specify one or more parameters for each selected condition; and using object-relational algebra to create an object-relational compatible query with the responses received from the user. - View Dependent Claims (14, 15, 16)
-
-
17. A computer system for creating a query in an object-relational algebra, the system comprising:
-
a database comprising previously defined object-relational methods, object-relational algebra operators, defined object-relational data source elements, and defined conditions; a user interface, provided by the computer system, adapted to prompt a user to choose one or more previously defined object-relational algebra methods or one or more object-relational algebra operators; the user interface further adapted to prompt the user to choose from a list of defined data source elements as one or more arguments to the one or more object-relational methods selected or the one or more operators selected; the user interface further adapted to prompt the user to choose an optional one or more conditions from at least a set of defined conditions, and prompting the user to specify one or more parameters for each selected condition; and a query translation module of executable program code running on the computer system configured to use object-relational algebra to create an object-relational query with the responses received from the user. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24)
-
Specification