Home Ajax XUL JavaScript CSS HTML 5 FAQ-Forum

User Interface Markup Languages


The goal of this page is to help you to know all widely used (for graphical user interface) markup languages, and to choose the best one for your needs.

The comparison table

Year
Development Runtime
Processing
Language
Requirements
BXML
Backbase
2003
Text editor / Eclipse / Visual Studio BPC AJAX
Interpreted
JavaScript
XML, CSS, XHTML, XPath
GladeXML
GNOME
1998
Glade IDE GTK+
Compiled
C, C++, C#
XML
MXML
Macromedia
2004
Flex Builder Flash Player / Apollo
Compiled
ActionScript
CSS
OpenLaszlo
Laszlo Systems
2003
Text editor Flash Player
Compiled
ECMAScript
CSS, XPath
UIML
OASIS
1997
Various  
 
XAML
Microsoft
2006
Microsoft Expression Interactive Designer / Editor / Visual Studio WinFX / Silverlight
Compiled
.NET languages / JavaScript
XPath, .Net
XUL
Mozilla
1998
Text editor XULRunner
Interpreted
ECMAScript, C++
CSS, DTD, RDF, XPath, XPCom

BXML

According to the creator: BXML is short for "Backbase eXtensible Mark-up Language". BXML is a declarative User Interface language, based on XML standards. BXML allows you to develop AJAX applications in a declarative way.
This is a commercial product. BXML tags are very similar to HTML tags.

GladeXML

GladeXML is the XML format used by the Glade Interface Designer. It creates forms that can then be used in conjunction with the libglade library using GTK+. Glade provide a graphical interface development environment in the model of Visual Studio, C++ Builder and so ones...

MXML

MXML is an XML markup language introduced by the Macromedia in 2004. Apart the design of user interface, it can also be used in conjunction with ActionScript to implement complex business logic.

OpenLaszlo

OpenLaszlo is an open source platform for the development of web applications with a graphical user interface . It is released under the OSI-certified Common Public License.
The OpenLaszlo platform consists of the LZX programming language and the OpenLaszlo Server.

UIML

According to the website, the goal of UIML is to create an open standard user interface description language in XML that can be freely implemented by anyone. The motivation is to facilitate better tools for creation of user interfaces that work on any platform available today, but which also will allow today's legacy user interfaces to evolve to new forms for use on platforms that are created years from now.

XAML

XAML (Extensible Application Markup Language), pronounced Zammel, is the user interface markup language for the Windows Presentation Foundation, by Microsoft.
It is interpreted on-the-fly by a Vista display subsystem which replaces the GDI in previous versions of Windows. XAML elements map to Common Language Runtime objects. Attributes map to properties or events on those objects. XAML was designed to support the classes and methods in the .NET Framework that deal with user interaction, especially screen displays. Silverlight is a cross-platform and cross-browser plugin to display interfaces of Web applications (as Flash).

XForms

The XForms standard has been defined by W3C to combine XML and forms on the web. The standard is intended to be more general, and allows input of data from within desktop applications. It replaces in XHTML the form system used for now in HTML. It is made of three parts:

  1. The XForms User Interface provides controls that are targeted toward replacement of HTML's form controls.
    These controls are usable inside XML documents, and thus inside format derived from XML.
  2. XForms also defines XML instance data, a structured XML format for data collected through XForms controls.
  3. A third part, XForms Submit Protocol, defines how data are sent and received.

XUL

XUL (XML User Interface Language), pronounced zool, is an user interface markup language developed to support Mozilla applications like Mozilla Firefox and Mozilla Thunderbird. XUL reuses many existing standards and technologies, including CSS, JavaScript, DTD, RDF and XPCom. The main benefit of XUL is that it provides a simple and portable definition of common widgets.

Related article