11. A computing system operable as a virtual personal assistant (VPA), the VPA comprising: one or more computing devices including instructions embodied in one or more non-transitory machine-readable storage media, wherein the instructions are executable by the one or more computing devices to cause the one or more computing devices to: by a microphone, receive a plurality of instances of spoken natural language dialog input supplied by a plurality of human participants in a multi-topic dialog session; for one or more instances of the instances of spoken natural language dialog input, determine a domain model to apply to the dialog input; extract semantic information from the one or more instances of spoken natural language dialog input; develop one or more intents based on the determined domain model, the one or more intents comprising a structured representation of the extracted semantic information; select an intent of the one or more intents based on an intent mapping, the intent mapping defining a relationship between the selected intent and a current intent, the current intent comprising a structured representation of semantic information extracted from a current instance of dialog input supplied by one of the human participants in the dialog session; combine a portion of the selected intent with a portion of the current intent; wherein the selected intent is selected based at least partly on a temporal proximity relative to the occurrence of the current intent.
11. A computing system operable as a virtual personal assistant (VPA), the VPA comprising: one or more computing devices including instructions embodied in one or more non-transitory machine-readable storage media, wherein the instructions are executable by the one or more computing devices to cause the one or more computing devices to: by a microphone, receive a plurality of instances of spoken natural language dialog input supplied by a plurality of human participants in a multi-topic dialog session; for one or more instances of the instances of spoken natural language dialog input, determine a domain model to apply to the dialog input; extract semantic information from the one or more instances of spoken natural language dialog input; develop one or more intents based on the determined domain model, the one or more intents comprising a structured representation of the extracted semantic information; select an intent of the one or more intents based on an intent mapping, the intent mapping defining a relationship between the selected intent and a current intent, the current intent comprising a structured representation of semantic information extracted from a current instance of dialog input supplied by one of the human participants in the dialog session; combine a portion of the selected intent with a portion of the current intent; wherein the selected intent is selected based at least partly on a temporal proximity relative to the occurrence of the current intent. 14. The computing system of claim 11 , wherein the selected intent is a complete intent, the current intent is a partial intent, and the method comprises creating the shared intent by combining the complete intent with the current intent.