In the prior recipes, we have restricted what the user sees by hiding tables and columns from client tools. This can remove clutter from the model and hide information that the user never needs to see (for example, the
SecurityProfile table). However, in situations where the model contains distinctive subject areas, there may be a desire to expose only tables in those subject areas as particular views. This is achieved through perspectives.
A perspective allows a virtual model to be created over the existing model, so that the user has a choice of views for the model. As a view, the perspective inherits all security from the underlying model. Only the tables and columns that are shown in the view can be controlled. Further, data security cannot be applied directly against a perspective and visibility of the perspective cannot be defined by role. That is, the perspective cannot implement its own data security profile.