This article discusses a basic architecture for a user interface management system and the problem of updating a display in response to interactive commands. The basic architecture is then extended to include basic editing and browsing processes on arbitrary data structures. Editing templates are presented as a technique embodying the entire manipulation process for a particular data structure/data display combination. In conjuction with the user interface management system, Such templates are able to automatically provide a majority of the code required in an interactive applicaton.