As with most applications, a data storage(or source) is needed for persistence. In the Cosmo world, the persistence of data is not necessarily tied to the application. Although rarely required, an application can switch to a totally different type of data storage, from a relational database to a flat file for example, without rewriting any code. Cosmo provides the following three types of data storage.
This is probably the most common type of data persistence for an application. As developer, your task is the associate the various data fields in the application to the tables and columns in the database. You will also specify the keys(or criteria) for accessing the data. The data storage does not know or care about the views(or user interface) of the application, only the data fields in the data model.
This data storage provides access to the XML data source. The data fields are specified in the XPath format.
This data storage represents an IMAP email server.