1. A method of populating a database, comprising: a) providing a plurality of information files, wherein each information file includes an object, each object including a type, an object property and an object explicit relationship; b) providing a plurality of rule files, wherein each rule file includes a relation between at least two object types, each relation including a relation property and an explicit relationship definition; c) validating the object properties and the object explicit relationships based in part on the relation properties, the explicit relationship definitions, or both; d) determining at least one implicit relationship based on at least one of the explicit relationship definitions and at least one of the object explicit relationships; e) generating at least one Structured Query Language (SQL) command representative of the at least one implicit relationship; f) executing the generated at least one SQL command on a database to store an implicit relationship definition in the form of a SQL statement; g) selecting an object from the information files; and h) generating a document by populating a presentation template with the object property of the selected object, the document having at least one hypertext link to a second document, the link based on the stored implicit relationship definition.