1. One or more computer-storage media having computer-executable instructions embodied thereon that, when executed by one or more computing devices, perform a method of generating a natural language output, the method comprising: receiving a query from a user; identifying an answer to the query; mapping the answer to structured data from a knowledge base; identifying a sentence structure associated with the structured data and associated with a plurality of constraints, wherein the sentence structure comprises one or more variables that are to be substituted with the structured data when forming a sentence, and wherein one variable of the one or more variables is associated with at least two constraints of the plurality of constraints such that each of the at least two constraints limits the type of value that may be substituted for the one variable; identifying that the plurality of constraints associated with the sentence structure are satisfied such that only valid sentences are output; and upon satisfying each of the plurality of constraints, communicating an output answer to the query in the form of the sentence.