Cayenne stores mapping and deployment information using a set of XML files with a predefined format. These files can be always edited by hand, but Cayenne goes beyond that. A standard distribution contains CayenneModeler - a Java Swing GUI application that serves as an Object/Relational modeling tool. It is much more than just a specialized XML editor. It provides a comprehensive set of O/R functions, including:

- Work with Cayenne mapping projects.
- Reverse-engineering RDBMS schema into Cayenne DataMaps.
- Generation of the database schema from the mapping information stored in DataMaps.
- Java class generation from the mapping information stored in DataMaps.
- Management of the project deployment structure and database connection information.
- Validation of created mappings.
- Import from some other O/R model formats (EOF).

Among other things CayenneModeler allows new users to learn the concepts used in Cayenne framework, its terminology, and the overall structure.

The following chapters of this Guide discuss how to use various functions of CayenneModeler.

### Sections

1. Running CayenneModeler
2. CayenneModeler and Eclipse
3. General Navigation
4. Cayenne User Directory