1. A computer implemented method for inserting rules-driven paragraphs into user-designated locations in a document after structural revisions, the method comprising: receiving a set of document construction rules; instantiating a candidate document from a document template, the document template comprising a plurality of paragraphs, at least one of the paragraphs being associated with at least one of the document construction rules; forming, by a computer, a document graph based at least in part on the document template, the document graph having a plurality of conditional nodes comprising a paragraph label and a respective visibility flag; and forming a mapping datastructure, separate from the document graph, to map from the paragraph label to a location of one of the conditional nodes within the document graph.