Patent ID: 8201139

Claim:
A framework for generating a semantic interpretation of a natural language input received by a client application, the framework comprising: an interpreter that is stored as computer executable instructions on a computer readable storage medium, wherein the computer executable instructions are executed by a computer processor that is a component of a computing device, and wherein this execution of the computer readable instructions causes the interpreter to utilize the computer processor to communicate between the client application and a plurality of analysis engines; and a linguistic object model comprising: a first set of linguistic object model types that are adapted to define possible interpretations; and a second set of linguistic object model types that are adapted to define actual interpretations from the possible interpretations; wherein the first set of linguistic object model types and the second set of linguistic object model types are each independent of any particular natural language; and a declarative schema associated with the client application and configured to be received by the interpreter from the client application, the declarative schema describing a semantic model of natural language features of the client application, wherein the semantic model includes a description of relationships among a plurality of semantic modeling types, and wherein at least a portion of the semantic modeling types are derived from the first and second sets of linguistic object model types; wherein the interpreter is configured to be initialized with the declarative schema; wherein the interpreter is configured to receive, from the plurality of analysis engines, a plurality of possible interpretations expressed in the first set of linguistic object model types, and wherein the plurality of possible interpretations are possible interpretations of the natural language input received by the client application; and wherein the interpreter is configured to instantiate one of the second linguistic object model types for at least one of the plurality of possible interpretations that are determined to be an actual interpretation of the natural language input received by the client application.