1. A computer-implemented method of generating a speech recognition grammar, the method comprising: using a processor to automatically generate a simulated recognition search tree representing items in a data set, wherein the simulated recognition search tree representing items in the data set comprises nodes and arcs between nodes, each arc representing a word from the data set which can be recognized, and wherein generating the simulated recognition search tree comprises: using the processor to build the simulated recognition search tree such that each word to be recognized in the data set is represented by an arc between nodes in the simulated recognition search tree by labeling each arc with its corresponding word to be recognized and by also labeling each arc with a weight which comprises a count of the phrases in the data set which share the word corresponding to the arc and which are represented by a path in the arc; using the processor to determine whether a phrase belonging to the data set is a complete expression to be accepted by a node in the simulated recognition search tree; and using the processor to identify the node corresponding to the complete expression as a terminal node of the automatically generated simulated recognition search tree if the phrase is determined to be a complete expression; using the processor to store, for each terminal node of the automatically generated simulated recognition search tree, semantic markup language (SML), to be returned by a speech recognition engine in response to the complete expression, in association with the terminal node of the automatically generated simulated recognition search tree; using the processor to identify terminal nodes of the automatically generated simulated recognition search tree with two complete expressions which reach the terminal node, but with different SML to return, as being indicative of collisions; using the processor to automatically generate the speech recognition grammar using the simulated recognition search tree; and using the processor to store the speech recognition grammar on a computer storage medium for use in speech recognition.