How to use Packages Extension to extend the model you have differnet possibilities: 1) extend an existing object by adding a new attribute: Insert the attribte in the according core.object (private). Create getter and setter for the attribute. In the addording mapper (XXX) adjust the strInsert and strUpdate String, also insert an according line in method execInsertUpdate() of the Mapper. There are 2 possibilities to add a line. 1.) Adding a String, boolean, integer, etc. use the form: stmt.setString(paramIndex[0]++, bmObject.getDateString()); 2.) Adding a ForeignKey use the form: this.insertIntKey(paramIndex, bmObject.getInReference(), stmt); 2.) Insert a new object ( e.g. when adding one or more new tables to the berlin model) Create a new object extending AbsSaveObject (or even better, AbsBMObject or AbsBMRelation) and a new Mapper extending AbsMapper Adjust the object according to your needs. IMPORTANT: in each public setXXX Method you need include a setChanged() call in case persistent variable of the the object has been changed and the setting was successful. in each public addXXX Method you have to include a save(AbsSaveObject obj) call in case the added object is an AbsSaveObject and the adding was successful (-> this is to save the added object to the "application" if the object it is added in is already saved.) BerlinModelUnitOfWork: Insert an according "else if" -case in BerlinModelUnitOfWork.save() and an according save(MY_CLASS myClass) method in BerlinModelUnitOfWork.save. The method should save the contents of your object in an appropriate order, that is it should save "lower level objects" first, then save the object itself by using the 2 calls store.save(refDetail); refDetail.setApp(this); and then save objects of the same level (AbsBMRelations). !!! Only save objects of higher level if they may be added by a public setXXX or addXXX method. Store: - insert the class into the appropritate order in getOrder() (don't forget to change all other values !!!) - insert object and Mapper into the orderedObjectList and orderedMapperList Mapper: - Create the parameter Strings[], representing the databases attributes (tableName, keyAttrs, strParameters, strCreators) - adjust the method execInsertUpdate, which inserts the non Key attributes (see 1.) for mor information) Create a TestCase KeyManager