5. A method for performing tasks in a natural language processing (NLP) system, comprising: processing text to obtain a plurality of numerical encodings, wherein the text comprises a plurality of entities, wherein each of the plurality of numerical encodings is associated with one of the plurality of entities, and wherein the text is derived from an utterance; populating a task list with each of the plurality of numerical encodings that have a length less than a pre-determined length; populating a variable list with each of the plurality of numerical encodings that have a length greater than a pre-determined length; selecting a numerical encoding from the task list, wherein the numerical encoding identifies a sub-task in a domain-specific schema; determining a task associated with the sub-task using the numerical encoding, wherein the task is associated with a second numerical encoding and wherein the numerical encoding includes the second numerical encoding; determining a second sub-task associated with the task, wherein the second sub-task is associated with a third numerical encoding and wherein the third numerical encoding includes the second numerical encoding; and performing the sub-task and the second sub-task.
5. A method for performing tasks in a natural language processing (NLP) system, comprising: processing text to obtain a plurality of numerical encodings, wherein the text comprises a plurality of entities, wherein each of the plurality of numerical encodings is associated with one of the plurality of entities, and wherein the text is derived from an utterance; populating a task list with each of the plurality of numerical encodings that have a length less than a pre-determined length; populating a variable list with each of the plurality of numerical encodings that have a length greater than a pre-determined length; selecting a numerical encoding from the task list, wherein the numerical encoding identifies a sub-task in a domain-specific schema; determining a task associated with the sub-task using the numerical encoding, wherein the task is associated with a second numerical encoding and wherein the numerical encoding includes the second numerical encoding; determining a second sub-task associated with the task, wherein the second sub-task is associated with a third numerical encoding and wherein the third numerical encoding includes the second numerical encoding; and performing the sub-task and the second sub-task. 6. The method of claim 5 , wherein the sub-task and the second sub-task are performed in parallel.