1. A method to create a data warehouse comprising: analyzing, using a computer, a plurality of questions to be answered from a plurality of transactional data of a business; analyzing, using the computer, an object model of the transactional database; identifying, using the computer, a fact in the, object model that is common to each of the plurality of questions; creating a first description of the fact; identifying a plurality of dimensions in the object model to which the fact can be correlated; identifying a dimension path in the object model for each of the plurality of dimensions; translating each of the dimension paths into a second description using a dotted notation; combining the first description and the second description into a third description; entering the third description into a description file; using the computer, automatically accessing the description file to read the third description and using the third description to automatically generate a plurality of fact and dimension table definitions for the data warehouse; when the plurality of fact and dimension table definitions are generated, automatically populating the data warehouse.