A grammar generation process generates a speech recognition grammar for interpreting
search queries or a domain of items. The grammar comprises both single-term and
multi-term utterances derived from the texts of the items (preferably the item
titles). The utterances are derived in-part by expanding phrases selected from
the item text into their individual terms plus all forward combinations of such
terms. The forward combinations and individual terms that are deemed not useful
to the search process are filtered out of the grammar. The process tends to produce
a grammar containing the utterances that are most likely to occur within voice
queries for the items, while maintaining a grammar size that is sufficiently small
to provide reliable speech recognition.