1. A computer implemented method of formatting a document comprising: a) providing a database comprising: (i) a plurality of document element classes; (ii) a set of document section formatting rules for each document element class; and (iii) a set of document elements for each document element class; and in a computer system comprising at least one processor operatively associated with the database: b) obtaining an electronic document; c) identifying at least one of the document elements within the electronic document; d) for one or more of the document elements identified within the electronic document: (i) identifying a document section within the electronic document that is associated with the respective identified document element; (ii) classifying the respective identified document element into one of the document element classes; (iii) determining the document section formatting rules associated with the classified document element class; (iv) determining whether said document section is formatted in accordance with the document section formatting rules of the classified document element class; and (v) where the document section is not formatted in accordance with the document section formatting rules of the classified document element class, selecting one or more of the document section formatting rules of the classified document element class and applying the selected one or more document section formatting rules to the document section to re-format the document section to a re-formatted document section that accords with the selected one or more document section formatting rules; and e) displaying a re-formatted version of the electronic document including one or more of the re-formatted document sections.