Usually the possibilities for end users to customize GUIs to their requirements are limited. We present a GUI specification and customization system, the Auckland Interface Model (AIM), that represents GUIs as documents that can be loaded, saved and changed by the end user during runtime. GUI layout and GUI content can be customized independently, and GUIs can be decomposed using transclusion. ...