1. A method for interacting with a user, the method performed by a computer having access to an electronic knowledge database, the method comprising: automatically with the computer (a) generating a structured representation of a received user input; (b) comparing the structured representation of the received user input with each of a plurality of expected user statement fields that are entries in the electronic knowledge database, and are associated with respective action fields specifying at least one action; and (c) when one of the plurality of expected user statements fields matches the structured representation of the received user inputs, causing the at least one action specified by the action field associated with the matching one of the plurality of expected user statement fields to be performed; the method further comprising: (i) when a match is identified in part (c), generating a second structural representation of a second received user input; and (ii) comparing the second structured representation of the second received user input with a second plurality of expected user statement fields that are entries in the electronic knowledge database and are associated with respective actions fields specifying at least one action: (A) wherein the entries of the knowledge database are arranged in a hierarchical structure; (B) wherein each entry in the electronic knowledge database also comprises an associated identification field indicative of a position in the hierarchical structure; and (C) wherein all the positions indicated by the identification fields associated with the second plurality of expected user statement fields substantially match; and (iii) when one of the second plurality of expected user statements fields matches the second structured representation of the second received user input, causing the at least one action specified by the action field associated with the matching one of the second plurality of expected user statement fields to be performed.
1. A method for interacting with a user, the method performed by a computer having access to an electronic knowledge database, the method comprising: automatically with the computer (a) generating a structured representation of a received user input; (b) comparing the structured representation of the received user input with each of a plurality of expected user statement fields that are entries in the electronic knowledge database, and are associated with respective action fields specifying at least one action; and (c) when one of the plurality of expected user statements fields matches the structured representation of the received user inputs, causing the at least one action specified by the action field associated with the matching one of the plurality of expected user statement fields to be performed; the method further comprising: (i) when a match is identified in part (c), generating a second structural representation of a second received user input; and (ii) comparing the second structured representation of the second received user input with a second plurality of expected user statement fields that are entries in the electronic knowledge database and are associated with respective actions fields specifying at least one action: (A) wherein the entries of the knowledge database are arranged in a hierarchical structure; (B) wherein each entry in the electronic knowledge database also comprises an associated identification field indicative of a position in the hierarchical structure; and (C) wherein all the positions indicated by the identification fields associated with the second plurality of expected user statement fields substantially match; and (iii) when one of the second plurality of expected user statements fields matches the second structured representation of the second received user input, causing the at least one action specified by the action field associated with the matching one of the second plurality of expected user statement fields to be performed. 10. The method according to claim 1 further comprising: (i) when no match is identified in part (c), comparing the structured representation of the received user input with each of a second plurality of expected user statement fields that are entries in the electronic knowledge database and are associated with respective actions fields specifying at least one action; (A) wherein each entry in the electronic knowledge database further comprises an associated context field specifying a context; and (B) wherein each context specified by the context fields associated with the second plurality of expected user statements does not match any of the contexts specified by the context fields associated the plurality of expected user statement fields in part (b); and (ii) when one of the second plurality of expected user statements fields matches the structured representation of the received user input, causing the at least one action specified by the action field associated with the matching one of the second plurality of the expected user statement fields to be performed.