UIML is short for User Interface Markup Language. As the name already says it is a Markup Language like HTML. It is used to describe User Interfaces for applications (especially web applications). It is based on XML and has been developed at Virginia Tech University in December 1997.
The main advantage of UIML is that the UI is described independently form the program itself. This makes multi platform, multi toolkit applications easier to handle.
UIML documents are layered. There is a presentation layer, which describes the visible, static interface. The dialog management layer describes the event handling and connects the presentation layer with the application. Finally the application layer, which is the application. The UIML document is rendered to the programming language used.