Compared to the validation and enumeration apps discussed in Chapter 5 and Chapter 7, we have to deal with a number of new technical issues:
In the model code we now have to take care of reference properties that require
maintaining referential integrity;
choosing and implementing one of the two possible deletion
policies discussed in Section 2 for managing the corresponding object
destruction dependency in the destroy method of the
property's range class;
conversion between internal object references and external
ID references in the serialization functions
toString() and toJSON(), as well as in
the constructor function.
In the user interface ("view") code we now have to take care of
showing information about associated objects in the Retrieve/List use case;
allowing to select an object from a list of all existing instances of the association's target class and add it to, or remove an object from, a list of associated objects, in the Create and Update use cases.