User interface markup language
This article needs additional citations for verification. (January 2024) |
A user interface markup language is a markup language that renders and describes graphical user interfaces and controls. Many of these markup languages are dialects of XML and are dependent upon a pre-existing scripting language engine, usually a JavaScript engine, for rendering of controls and extra scriptability.
The concept of the user interface markup languages is primarily based upon the desire to prevent the "re-invention of the wheel" in the design, development and function of a user interface; such re-invention comes in the form of coding a script for the entire user interface. The typical user interface markup language solidifies often re-used program or script code in the form of markup, making it easier to focus upon design of a user interface in an understandable dialect as opposed to focus on function.
User interface markup languages, like most markup and programming languages, rely upon sub-application
User interface markup languages
![]() | This section may contain embedded lists. by removing items or incorporating them into the text of the article. (August 2015) |
HTML
HTML which stands for HyperText Markup Language is a markup language used for building web pages to be displayed in a web browser.[1] It is often combined with CSS (for styling) and JavaScript (for interactivity). Most websites in the world are built using HTML as it is the standard language supported by web browsers.[2]
XFD
XFD, which stands for XML Form Definition is the user interface markup language behind
QML
QML is a cross-platform markup language for creating hardware-accelerated OpenGL-powered user interfaces for devices ranging from mobile to desktop. QML interfaces are manipulated using the JavaScript language. QML is part of the Qt software framework.
MXML
UIML
OASIS UIML is an XML-based standard user interface markup languages.[citation needed] It is an open standard where implementation is not restricted to a single vendor.
XUL
The primary interface language of
UsiXML
UsiXML (which stands for User Interface Extensible Markup Language) is an XML-compliant markup language that describes the UI for multiple contexts of use such as Character User Interfaces (CUIs), graphical user interfaces (GUIs), Auditory User Interfaces, and Multimodal User Interfaces.
In other words, interactive applications with different types of interaction techniques, modalities of use, and computing platforms can be described in a way that preserves the design independently from peculiar characteristics of physical computing platform.
WTKX
WTKX is an XML-based markup language used for building Apache Pivot applications. Though it is most commonly used for defining the structure of an application's user interface, it can be used to declaratively construct any type of Java object hierarchy.
XAL
eXtensible Application Language is the Markup language of Nexaweb's Enterprise Web 2.0 Suite. Developers can use this language to define applications that will run as a Java Client or an Ajax Client.
SVG
SVG can also be superimposed upon another XML-compatible user interface markup language, such as XUL and XForms, as the graphics-rich portion of a user interface.
TUIX
XAML
XAML is a markup system that underlies user interface components of Microsoft's .NET Framework 3.0 and above. Its scope is more ambitious than that of most user interface markup languages, since program logic and styles are also embedded in the XAML document. Functionally, it can be seen as a combination of XUL, SVG, CSS, and JavaScript into a single XML schema.
Some people are critical of this design, as many standards (such as those already listed) exist for doing these things. However, it is expected to be developed with a visual tool where developers do not even need to understand the underlying markups.
I3ML
OpenLaszlo (LZX)
OpenLaszlo is a runtime environment that comprises a runtime environment and an interface definition language (Laszlo XML - LZX). LZX is a declarative user interface language which defines the widgets, application layout and scripting elements (using JavaScript) to create your application. LZX is runtime agnostic with the currently supported runtime being within Macromedia/Adobe Flash. An experimental runtime called Laszlo "Legals" that will allow OpenLaszlo (LZX) applications run in multiple runtime environments, such as DHTML/AJAX.
HMVCUL
WasabiXML
WasabiXML is an XML markup language that is used to define the graphical interface in
The root element in WasabiXML is <WasabiXML>
(for Winamp skins, it is also <WinampAbstractionLayer>
). The <skininfo>
element shows the information for a skin. The graphical interface is held by the <container>
element and the basic viewable GUI element is <layout>
. Following is an example for a simple
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<WinampAbstractionLayer version="1.2">
<skininfo>
<version>1</version>
<name>mySkin</name>
<comment>Ooo Lala</comment>
<author>Some Person</author>
<email>[email protected]</email>
<homepage>http://www.example.org</homepage>
</skininfo>
<include file="xml/color-sys.xml"/> <!-- Include a file -->
<container id="normal">
<layout id="normal" desktopalpha="true">
<button
x="0" y="0"
id="button.normal"
image="mybutton.image"
hoverimage="mybutton.himage"
downimage="mybutton.dimage"
/>
</layout>
</container>
</WinampAbstractionLayer>
WasabiXML supports many GUI elements including:
<button>
<text>
<vis>
<eqvis>
<layer>
<animatedlayer>
<groupdef>
used in conjunction with<group>
<groupdef>
allows the developer to define a group of GUI objects which can be re-used anywhere in the skin. Wasabi also supports XUI's which are nothing but <groups>
powered by a MAKI script allowing developers to create GUI components (widgets) of their own adding to modularity.
WasabiXML has an XML namespace 'Wasabi::' which defines common GUI's without having the need to declare their image paths.
MARIA
FXML
FXML is a XML-based language for defining the user interface of JavaFX applications.
Other
Other markup languages incorporated into existing frameworks are:
Apple's Interface Builder .xib format
Some of these are compiled into binary forms.
In avionics, the ARINC 661 standard prescribes a binary format to define user interfaces in glass cockpits.
Borland VCL forms (.dfm and .lfm) are text files describing the windows of
See also
- User Interface Modeling
- Layout engine
- Widget toolkit
- List of user interface markup languages
- Comparison of user interface markup languages
- Interface description language
References
- ^ "HTML basics - Learn web development | MDN". developer.mozilla.org. 29 August 2023. Archived from the original on 23 January 2024. Retrieved 23 January 2024.
- ^ ""HTML" | Can I use... Support tables for HTML5, CSS3, etc". caniuse.com. Archived from the original on 23 January 2024. Retrieved 23 January 2024.
- ^ "Scalable Vector Graphics (SVG) 2". w3.org. Archived from the original on 27 January 2017. Retrieved 23 January 2024.