XBL

XBL (XML Binding Language) ist eine XML-Auszeichnungssprache mit der spezielle neue Elemente für XUL-Widgets ('Bindings') definiert werden. Mit XBL können Entwickler neuen Content für XUL-Widgets oder zusätzliche Event-Handler für XUL-Widgets sowie  zusätzliche Schnittstellen-Eigenschaften und Methoden erstellen. XBL ermöglicht den Entwicklern die verwendeten XUL-Tags zu erweitern und eigene XUL-Tags zu erstellen. Es können also Widgets erstellt werden wie Scrollbars, Pop-Up Menüs  oder Werkzeugleisten und Suchformulare. Die XBL-Bindings werden dabei in einer speziellen Datei definiert. XBL ist proprietär und nur von der Gecko Rendering Engine ausführbar. XBL 2.0 soll allerdings vom W3C standardisiert werden.                                                     
Siehe auch:    XUL   XPCOM-XPConnect   XPInstall   W3C   JavaScript   Widget   

  XUL

XML User Interface Language (XUL, sprich (engl.) "zool") ist eine XML-basierte User Interface-Sprache des Mozilla Projektes. Mit XUL können Rich-Cross-Internet-Applications erstellt werden. Diese Rich-Cross-Internet-Applications können  online oder offline verwendet werden und sind leicht parametrisierbar im Hinblick auf das Layout, Text oder Grafiken. XUL ist verwandt zu DHTML und kann deswegen von DHTML-Enwicklern leicht eingesetzt werden.  Die Mozilla Projekte Mozilla Firefox, Mozilla Thunderbird, Mozilla Seamonkey oder der Netscape 7.1, welcher auf Mozilla 1.4 basiert, wurden mit XUL entwickelt.

XUL-Toolkit, Gecko Rendering Engine, CSS 
Mit XUL werden insbesondere grafische Benutzeroberflächen (GUI) für das Internet erzeugt, wobei bei Mozilla die Gecko Rendering Engine zum Einsatz kommt. Um XUL auf bestimmten Betriebssystemen einzusetzen muss das gesamte Mozilla-XUL-Toolkit  auf die entsprechende Betriebssystem-Plattform portiert werden. Durch XUL wird eine Trennung von Layout und Design der GUI möglich, da die GUI mit CSS gestaltet wird. Dadurch werden auch alle Vorteile von CSS implementiert. 

Vorteile von XUL 
Mit Hilfe von XUL können Internet Anwendungen Plattform-übergreifend erstellt werden, durch den Einsatz von XML liegt ein offener Quellcode vor und das Layout kann für verschiedene Plattformen leichter vereinheitlicht werden.  XUL ist eine Widget-based Beschreibungssprache welche im Gegensatz zu DHTML, das zum Erstellen von Webseiten gedacht ist, zum entwickeln von Cross-Plattform Anwendungen (Betriebssystem-übergreifende Anwendungen)  geeignet ist. So ist XUL ausgerichtet auf typische Betriebssystem Elemente wie Fenster, Buttons oder Labels und nicht auf Hyperlinks, Seiten oder Überschriften-Kategorien. XUL basiert auf dem bekannten W3C Standard XML 1.0,  die XUL-Anwendungen ebenso auf W3C Standards wie HTML 4.0, DOM oder CSS, JavaScript 1.5 oder ECMA-Script (ECMA 262, Ecma International, European Computer Manufacturers Association).  Durch die Trennung von Layout und Design bei der GUI können Teams mit unterschiedlichen Fähigkeiten (Programmlogik oder User Interface Elemente) besser zusammenarbeiten.  Also können Programmlogikelemente wie XUL Content Elemente, XBL (XML Binding Language) oder JavaScript getrennt von Darstellungselementen (CSS und Bilder) und sprachspezifischen Text-Labels (DTDs und string bundles in .properties Dateien) behandelt  werden. Weiterhin können die Internet Anwendungen leicht für verschiedene User Gruppen erstellt werden, z. B. mehrere Sprachen oder Versionen. 

Unterstützende XUL Technologien
Technologien welche XUL unterstützen sind neben XBL auch Overlays, XPCOM, XPConnect und XPInstall.                               
Siehe auch:    Mozilla-Prism   CSS   DHTML   XML   Rich-Internet-Applications   DOM   JavaScript   HTML   W3C   Widget