The model-view-controller pattern is used to keep a data model and its views consistent. Usually there is a one-to-one correspondence between the data in the model and its representation in the views, which is sometimes too inflexible. We propose to add so-called data mappings between the model and its views. Data mappings are components that can be plugged together hierarchically. They can perform any transformations on the data as well on notifications, thus allowing a more flexible collaboration between a model and its views. GUI builders can be extended so that a user can add data mappings to a graphical user interface interactively, i.e. without programming. 1 Motivation Applications with graphical user interfaces (GUIs) usually rely on the model-viewcontroller pattern (MVC pattern) [1] that was first used in the Smalltalk system around 1980. The idea of this pattern is to decompose an applications into three parts: The model, which stores the data of the application (e.g. a text,...