Proper Use of Domains

Getting the granularity of domain definitions right is important - too few separate definitions might make it difficult to change the datatypes of some attributes without impacting others; too many definitions make it difficult to follow which attributes are related to which others. Remember that the granularity also determines at what level validations on attributes can be implemented in the Cúram web client.

A design in which every attribute has a different associated domain is probably wrong. At the very least, attributes which are foreign keys should share their domain definitions with the original key.

In general, an analysis of the types of data your application uses early in the design stage is probably the best approach to coming up with a sensible domain hierarchy. You should also decide at this point which domains will require special client-side validations to be constructed.