Comparison of XML user interface languages
Comparison table of the most widely used graphical user interface markup languages, based on XML, to choose the best one for your needs.
The comparison table
Interface | Year | Development | Runtime | Processing | Language | Requirements |
---|---|---|---|---|---|---|
FXML Oracle |
2011 | NetBeans | JavaFX | Interpreted | Java | JVM |
GladeXML Gnome |
1998 | Glade IDE | GTK+ | Compiled | C, C++, C# | LibXML |
MXML Macromedia |
2004 | Flex Builder | Flash Player / Apollo | Compiled | ActionScript | CSS |
UIML OASIS |
1997 | Various | Java | JIT | Java | JVM |
XAML Microsoft |
2006 | Expression Blend / Visual Studio | WinRT / Silverlight | Compiled | .NET languages / JavaScript | .NET |
XUL Mozilla |
1998 | Eclipse | XULRunner | Interpreted | ECMAScript, C++ | CSS, RDF, XPCom, JavaScript |
FXML
UI language based on XML for the JavaFX platform. Allow to design pretty user interface similar to that of smartphones. Is interpreted.
See for example the Photo Viewer on the right.
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 provides a graphical interface development environment like Visual Studio, C++ Builder and so ones...MXML
MXML is an XML markup language introduced by Macromedia in 2004. Besides designing user interfaces, it can also be used with ActionScript to implement complex business logic.
- MXML in PHP. Optional package.
OpenLaszlo
OpenLaszlo was 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. It is discontinued.
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 make 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 older ones too.
- jUiml. A Java implementation.
XAML
XAML (Extensible Application Markup Language), pronounced Zammel,
is the user interface markup language from Microsoft for the Windows Presentation Foundation,
but which is much deeply used on WinRT on Windows 8 and UWP on Windows 10.
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.
- What is XAML? By Microsoft.
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:
- 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. - XForms also defines XML instance data, a structured XML format for data collected through XForms controls.
- A third part, XForms Submit Protocol, defines how data are sent and received.
- XForms Recommendation by W3C.
- FAQ about XForms.
But to create its own interpretation software, based on an XML parser, this format has little interest because it is not widely implemented and seems destined to be replaced by HTML 5 with JavaScript frameworks.
xWidglets
A former commercial offer which became open source under the Apache License, to another interface language based on XML. For its use, a development workshop is provided along with specialized browser that displays the interfaces.
Based on Java.
XUL
XUL (XML User Interface Language), to be pronounced zool, was 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.
It is possible to install the runtime on any
machine and to make a XUL application working locally.
The advantages are the compatibility with the standards: Javascript, CSS, RDF. Webmasters are in a know field. And integration of HTML code into XUL what makes it possible to complete it
with HTML tags, in particular forms.
The disadvantages are that it is extremely difficult to program due to RDF, XPCom and the lack of technical information.
- The XUL page.
- What future for XUL? XUL ou HTML 5?