Просто чтобы прояснить, есть два типа распознавания речи, диктовки и командования и контроля. В режиме диктовки вы слушаете каждое возможное слово и пытаетесь найти совпадение. Это хорошо для систем диктовочного типа, где человек говорит, и вы хотите расшифровать все. Хорошим примером грамматики диктовки является преобразование голосовой почты в текст. Командование и управление использует ограниченную грамматику, которая повышает точность. Если под «заданным словом» вы подразумеваете заданное количество слов, то командование и управление - это то, что вам нужно. Примером может служить система IVR, в которой вы воспроизводите подсказку и ждете ответа: «Пожалуйста, нажмите 1 для продаж и 2 для поддержки». Грамматика будет содержать только «1 или 2». Слово «один» может звучать как множество разных слов, если мы искали весь словарь языка, но сравнить разницу между словами 1 и 2 просто. Вот один пример, который поможет любому узнать о распознавании речи:
http://msdn.microsoft.com/en-us/library/ms720589(v=vs.85).aspx
Вы можете увидеть, как загрузить грамматику из файла и как структурировать файл XML, содержащий вашу грамматику.