1. A method comprising: accessing a document plan containing one or more messages, wherein messages represent a phrase or a simple sentence and are created in an instance in which an input data stream comprises data that satisfies one or more message requirements; generating a text specification containing one or more phrase specifications that correspond to the one or more messages in the document plan; applying, using a processor, a set of lexicalization rules to each of the one or more messages to populate the one or more phrase specifications, wherein the set of lexicalization rules are specified using a microplanning rule specification language that is configured to hide linguistic complexities from a user and comprise a set of message-level rules and a set of slot-level rules; and realizing the text specification to generate a textual output that linguistically describes at least a portion of the input data stream.