3. New Issues

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:

  1. In the model code we now have to take care of reference properties that require

    1. maintaining referential integrity;

    2. 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;

    3. conversion between internal object references and external ID references in the serialization functions toString() and toJSON(), as well as in the constructor function.

  2. In the user interface ("view") code we now have to take care of

    1. showing information about associated objects in the Retrieve/List use case;

    2. 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.