Method and system for responding to requests relating to complex data maintained in a structured form
First Claim
1. A system for processing input entered by a user and providing at least one response for autonomously processing the input, the system comprising:
- a computer having a computer readable storage medium having stored thereon instructions which, when executed by a processor of the computer, causes the processor to perform the steps of;
(a) providing rules,(b) receiving the input entered by the user, wherein the input includes questions or declarative statements;
(c) processing the input after the input is entered by the user, wherein the step of processing the input includes the step of extracting structure and meaning from the input and the step of standardizing the input, wherein the step of extracting structure and meaning from the input is accomplished using one or more of a lexical analysis process and a semantic analysis process, and for each rule;
(i) determining if the input is recognized via an input recognizer, and(ii) if the input is recognized, sending an appropriate response to the user, wherein the step of determining if the input is recognized, includes the steps of;
(1) attempting to match the input to at least one pattern,(2) if no match is found, not recognizing the input and continuing to the next rule, and(3) if a match is found, either;
(a) recognizing the input, identifying logic within the rule, executing the logic by choosing the appropriate response from a set of responses, and continuing to the step of sending the appropriate response via a response layer, wherein the step of sending the appropriate response includes the steps of;
(i) extracting executable code from the appropriate response, and
(ii) running the executable code to embed dynamic information in the appropriate response;
or(b) conditionally recognizing the input and executing at least one statement validator to determine if the input is appropriately matched by the rule, wherein execution of the at least one statement validator includes the steps of;
(i) querying structured data to determine if a logic statement evaluates to true, via a logic layer,
(ii) depending upon whether the statement evaluates to true or false, either;
(a) recognizing the input, identifying logic within the rule, executing the logic by choosing the appropriate response from a set of responses, and continuing to the step of sending the appropriate response via the response layer, or(b) repeating the step of querying the structured data for the next statement validator, if available, or(c) not recognizing the input and continuing to the next rule.
9 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus for processing user entered input and providing a response in a system for autonomously processing requests includes rules. For each rule, whether the input is recognized is determined. If it is, a response is sent to the user. To determine recognized input, the method attempts to match the rule to a pattern. If a match is not found, the input is not recognized. If a match is found, the input is recognized and the response is sent. Alternatively, the input is conditionally recognized and a statement validator is executed which queries structured data to determine if a logic statement evaluates to true. Depending on how the statement evaluates: i) the input is recognized and the response is sent, ii) the structured data is queried again for the next statement validator, or iii) the input is not recognized and the method continues to the next rule.
26 Citations
10 Claims
-
1. A system for processing input entered by a user and providing at least one response for autonomously processing the input, the system comprising:
-
a computer having a computer readable storage medium having stored thereon instructions which, when executed by a processor of the computer, causes the processor to perform the steps of; (a) providing rules, (b) receiving the input entered by the user, wherein the input includes questions or declarative statements; (c) processing the input after the input is entered by the user, wherein the step of processing the input includes the step of extracting structure and meaning from the input and the step of standardizing the input, wherein the step of extracting structure and meaning from the input is accomplished using one or more of a lexical analysis process and a semantic analysis process, and for each rule; (i) determining if the input is recognized via an input recognizer, and (ii) if the input is recognized, sending an appropriate response to the user, wherein the step of determining if the input is recognized, includes the steps of; (1) attempting to match the input to at least one pattern, (2) if no match is found, not recognizing the input and continuing to the next rule, and (3) if a match is found, either; (a) recognizing the input, identifying logic within the rule, executing the logic by choosing the appropriate response from a set of responses, and continuing to the step of sending the appropriate response via a response layer, wherein the step of sending the appropriate response includes the steps of;
(i) extracting executable code from the appropriate response, and
(ii) running the executable code to embed dynamic information in the appropriate response;
or(b) conditionally recognizing the input and executing at least one statement validator to determine if the input is appropriately matched by the rule, wherein execution of the at least one statement validator includes the steps of;
(i) querying structured data to determine if a logic statement evaluates to true, via a logic layer,
(ii) depending upon whether the statement evaluates to true or false, either;(a) recognizing the input, identifying logic within the rule, executing the logic by choosing the appropriate response from a set of responses, and continuing to the step of sending the appropriate response via the response layer, or (b) repeating the step of querying the structured data for the next statement validator, if available, or (c) not recognizing the input and continuing to the next rule. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method for processing input entered by a user and providing at least one response for autonomously processing the input, the method comprising the steps of:
-
providing a computer having a computer readable storage medium having stored thereon instructions which, when executed by a processor of the computer, causes the processor to perform the steps of; (a) providing rules, (b) receiving the input entered by the user, wherein the input includes questions or declarative statements; (c) processing the input after the input is entered by the user, wherein the step of processing the input includes the step of extracting structure and meaning from the input and the step of standardizing the input, wherein the step of extracting structure and meaning from the input is accomplished using one or more of a lexical analysis process and a semantic analysis process, and for each rule; (i) determining if the input is recognized via an input recognizer, and (ii) if the input is recognized, sending an appropriate response to the user, wherein the step of determining if the input is recognized, includes the steps of; (1)attempting to match the input to at least one pattern, (2)if no match is found, not recognizing the input and continuing to the next rule, and (3) if a match is found, either; (a) recognizing the input, identifying logic within the rule, executing the logic by choosing the appropriate response from a set of responses, and continuing to the step of sending the appropriate response via a response layer, wherein the step of sending the appropriate response includes the steps of;
(i) extracting executable code from the appropriate response, and
(ii) running the executable code to embed dynamic information in the appropriate response;
or(b) conditionally recognizing the input and executing at least one statement validator to determine if the input is appropriately matched by the rule, wherein execution of the at least one statement validator includes the steps of;
(i) querying structured data to determine if a logic statement evaluates to true, via a logic layer,
(ii) depending upon whether the statement evaluates to true or false, either;(a) recognizing the input, identifying logic within the rule, executing the logic by choosing the appropriate response from a set of responses, and continuing to the step of sending the appropriate response via the response layer, or (b) repeating the step of querying the structured data for the next statement validator, if available, or (c) not recognizing the input and continuing to the next rule.
-
Specification