1. A method for storing a data object with dependency information, the method comprising: generating a dependency attribute for a first data object, the dependency attribute comprising dependency data indicative of a second data object, wherein the first data object depends on the second data object such that a client device requires the second data object to utilize the first data object; receiving, at the client device, the first data object; determining, at the client device, whether the database stored on the client device contains the second data object; in response to determining that the database contains the second data object, storing the first data object in the database; in response to determining that the database does not contain the second data object: storing the first data object in a holding area; in response to determining that the first data object and the second data object are stored in the holding area, storing the first data object and the second data object in the database in a single atomic transaction.