UIML (User Interface Markup Language) is an XML-based markup language used to define user interfaces on computers. The primary purpose of UIML is to streamline the process of developing user interfaces, enabling programmers to describe their interfaces in declarative terms (i.e., as text) and abstract them. For instance, when describing a message window, a programmer using this language could write:
<partclass="DialogMessage"name="HelloWorld"/>
In theory, a programmer could use a description to create user interfaces for various platforms.[1] Though, in practice, these platforms present challenges for comprehensive translation.
Currently, UIML is undergoing standardization by OASIS, with the latest iteration being UIML 4.0, which was released in 2008.[2][3] A parallel effort with similar objectives to UIML is UsiXML.[4]
UIML.Net – A free UIML renderer written in C#.[5] It has been developed at the Expertise Centre for Digital Media (Hasselt University, Belgium) and can render a UIML document using different widget sets and different platforms. The software is hosted on GitHub.
References
^Abrams, M.; Phanouriou, C.; Batongbacal, A. L.; Williams, S. M.; Shuster, J. E. (17 May 1999). "UIML: an appliance-independent XML user interface language". Computer Networks. 31 (11โ16): 1695โ1708. doi:10.1016/S1389-1286(99)00044-4.
^Helms, James; et al. (2009). "Human-Centered Engineering Of Interactive Systems With The User Interface Markup Language". In Seffah, A.; Vanderdonckt, J.; Desmarais, M. C. (eds.). Human-Centered Software Engineering. Human-Computer Interaction Series. London: Springer. pp. 139โ171. doi:10.1007/978-1-84800-907-3_7.
^Luyten, K.; Coninx, K. (2005). Jacob, R.J.; Limbourg, Q.; Vanderdonckt, J. (eds.). UIML.Net: an Open UIML Renderer for the .Net Framework. Computer-Aided Design of User Interfaces IV. Dordrecht: Springer. doi:10.1007/1-4020-3304-4_21.