UIML or User Interface Markup Language allows you to create web pages that can be transferred to any type of interface device like personal computers with large displays and keyboards and even to smartphones with small displays and no keyboard. The greatest advantage of User Interface Markup Language is that the content can be created without an understanding or knowledge of which current and future devices this content will be send to.
The content developer will use this language which is also commonly called tags for describing interface elements like text messages, input boxes, buttons and menus. The programmer then creates applications using the UIML page for generating pages appropriate to every type of device like a personal computer, voice input device, smartphone etc. So the UIML is basically a markup language which offers and described GUI or graphical user interface and controls. It was designed to respond to the need to create a uniform language that can built multi-platform applications.
The UIML is therefore an application of XML of Extensible Markup Language. It can be held as a XML description which described data structure like the names of fields of any user interface. It was originally developed by researchers in Blacksburg, Virginia in 1997 after which it was enhanced by many organizations later like the Virginia Tech. researchers were frustrated with poor usability features of software user interfaces and faced much difficulty in creating quality user interfaces with the existing languages. Thus grew a desire for a language which was specifically designed for under interface keeping in mind the needs of user interface designer. This is how UIML was born as a declarative language to describe how the interface would look like.