My question is about the speech-recognition grammar specification language: http://en.wikipedia.org/wiki/Speech_Recognition_Grammar_Specification
I would like to know whether it's possible to define sentences with open-domain variables, for example, a sentence such as "I want to go from {city1} to {city2}", but without defining all the possible values of {city1} and {city2}. The grammar processor should detect if the user sentence matches the pattern, and if so, send the actual assignments of these variables to the next module.
Is this possible?
SRGS does not support what are sometimes referred to as wildcards. You will need to define all of the cities that you want the system to understand. You would define a rule for cities which list all of the cities and then your basic phrase "I want to go from #cities to #cities" would reference that rule. This is discussed in the SRGS specification.