1. A computer-readable storage medium configured with data and with instructions that when executed by at least one processor causes the processor(s) to perform a process for cogenerating a database application and a database accessible through the database application, the process comprising the steps of: placing a visual representation of an application element that is designed to control at least one of the following datasets: a relational dataset, a hierarchical dataset; automatically calling code to add the application element to the database application in response to the placing step; and automatically invoking code to create at least one database schema element that is designed to implement in the database the dataset(s) under control of the application element.