XML-Ereignisse - XML Events
In der Informatik und Webentwicklung ist XML Events ein W3C- Standard für die Behandlung von Ereignissen , die in einem XML- Dokument auftreten. Diese Ereignisse werden normalerweise durch Benutzer verursacht, die mit der Webseite über ein Gerät wie einen Webbrowser auf einem PC oder Mobiltelefon interagieren .
Formale Definition
Ein XML-Ereignis ist die Darstellung eines asynchronen Ereignisses (z. B. eines Mausklicks ), das einem Datenelement in einem XML- Dokument zugeordnet wird. XML Events bietet eine statische, syntaktische Bindung an die DOM Events- Schnittstelle, sodass das Ereignis behandelt werden kann.
Motivation
Der XML - Events - Standard definiert XML-basierten Sprachen mit der Fähigkeit zu versehen gleichmäßig zu integrieren Ereignis - Listener und zugehörige Event - Handler mit Document Object Model (DOM) Level 2 - Event - Schnittstellen. Das Ergebnis ist eine deklarative, interoperable Möglichkeit, Verhaltensweisen mit XML-basierten Dokumenten wie XHTML zu verknüpfen .
Vorteile von XML-Ereignissen
XML Events verwendet ein Designmuster für die Trennung von Bedenken und ist in Bezug auf Handler technologieneutral . Es gibt Autoren die Freiheit, ihren Code zu organisieren, und ermöglicht die Trennung von Dokumentinhalten und Skripten .
Ältere HTML- und frühere SVG- Versionen binden Ereignisse an Präsentationselemente, indem sie den Ereignisnamen in einen Attributnamen codieren , sodass der Wert des Attributs die Aktion für dieses Ereignis in diesem Element ist. Zum Beispiel (mit dem onclick- Attribut von JavaScript ):
Stay <a href="http://www.example.org" onclick="window.alert('Hello!'); return false;">here</a>!
Dieser Entwurf hat drei Nachteile:
- Die Ereignisse werden fest mit der Sprache verbunden , sodass für das Hinzufügen neuer Ereignistypen Änderungen an der Sprache erforderlich sind
- Es zwingt die Autoren, den Inhalt des Dokuments mit den Spezifikationen des Skripts und der Ereignisbehandlung zu mischen, anstatt sie zu trennen.
- Es beschränkt die Autoren auf eine einzige Skriptsprache pro Dokument.
Beziehung zu anderen Standards
Im Gegensatz zu DOM-Ereignissen , die normalerweise mit HTML-Dokumenten verknüpft sind, sind XML-Ereignisse so konzipiert, dass sie von bestimmten Geräten unabhängig sind. XML-Ereignisse werden in XForms und in Version 1.2 der SVG- Spezifikation ab Juli 2006, die noch in Arbeit ist, häufig verwendet.
Beispiel für XML-Ereignisse mit einem Listener in XForms
Das folgende Beispiel zeigt, wie XML-Ereignisse in der XForms-Spezifikation verwendet werden:
<html
xmlns="http://www.w3.org/1999/xhtml"
xmlns:ev="http://www.w3.org/2001/xml-events"
xmlns:xf="http://www.w3.org/2002/xforms">
<head>
<ev:listener event="DOMActivate" observer="myButton"
handler="#doit"/>
</head>
<xf:trigger xml:id="myButton"><xf:label>Do it!</xf:label></xf:trigger>
<script xml:id="doit" type="application/ecmascript">
alert("test");
</script>
</html>
In diesem Beispiel wird der Handler (z. B. ein JavaScript-Element) ausgeführt , wenn das DOMActivate Ereignis für das Datenelement mit dem ID-Attribut von auftritt .
myButtondoit