25. A non-transitory computer-readable storage medium comprising computer-executable instructions for: receiving user speech input; generating a textual representation of the user speech input; parsing the textual representation to determine a primary domain representing a user intent for the textual representation; identifying a first substring from the textual representation that corresponds to a first attribute of the primary domain; parsing the identified first substring to determine a secondary domain representing a user intent for the first sub string; performing a task flow comprising one or more tasks based on the primary domain and the secondary domain; and outputting a response in accordance with the performed task flow.
25. A non-transitory computer-readable storage medium comprising computer-executable instructions for: receiving user speech input; generating a textual representation of the user speech input; parsing the textual representation to determine a primary domain representing a user intent for the textual representation; identifying a first substring from the textual representation that corresponds to a first attribute of the primary domain; parsing the identified first substring to determine a secondary domain representing a user intent for the first sub string; performing a task flow comprising one or more tasks based on the primary domain and the secondary domain; and outputting a response in accordance with the performed task flow. 30. The non-transitory computer-readable storage medium of claim 25 , wherein performing the task flow comprises: identifying a primary task flow to accomplish the user intent for the textual representation; identifying one or more constraints associated with the primary task flow; identifying one or more queries, programs, methods, services, or APIs that satisfy the one or more constraints associated with the primary task flow; and generating the task flow from the primary task flow and the identified one or more queries, programs, methods, services, or APIs.