XML Events
aus Wikipedia, der freien Enzyklopädie
XML Events ist eine Spezifikation des W3C, um Ereignisse, die in einem XML-Dokument auftreten, zu handhaben. Diese Ereignisse werden typischerweise durch einen Benutzer ausgelöst, der mit dem Dokument, einer Webseite, mit Hilfe eines Internetbrowsers auf einem PC, Mobiltelefon oder Telefon, interagiert.
Inhaltsverzeichnis |
[Bearbeiten] Formale Definition
Technisch gesehen ist ein XML-Event die Repräsentation eines asynchronen Vorgangs (z.B. eines Mausklicks auf einen Button) dem ein beliebiges Datenelement in einem XML-Dokument zugeordnet wird. XML-Events bietet eine statische, syntaktische Bindung zum DOM Events-Interface, wodurch das Ereignis verarbeitet werden kann.
[Bearbeiten] Beweggründe
Der XML Events-Standard wurde definiert, um XML-basierten Sprachen eine Möglichkeit zu geben, einheitliche Observer und assoziierte Eventhandler in Document Object Model (DOM) Level 2 Event-Interfaces zu integrieren. Das Ergebnis ist eine erklärende, interoperabile Methode, Verhalten mit XML-basierten Dokumenten zu assoziieren, beispielsweise XHTML.
[Bearbeiten] Vorteile von XML Events
XML Events nutzt eine separation of concerns-Designvorlage, und seine Techonologie ist dank Handler sehr neutral. Somit wird den Webseitengestaltern Freiheit in Bezug auf die Code-Organisation eingeräumt und eine Trennung von Dokumentinhalt und Skript ist ebenfalls möglich.
Sowohl frühere HTML- als auch frühere Versionen von SVG verbinden Elemente mit einem Präsentationselement, dadurch, dass der Ereignisname in einen Attributnamen encodiert wird. Somit ist der Wert des Attibuts gleichzeitig die Aktion für das Ereignis des Elements. Zum Beispiel (mit dem onclick-Attribut):
<p>Bleib <a href="http://www.beispiel.com" onclick="window.alert('Hallo!'); return false;">hier</a>!</p>
Dieser Entwurf hat drei Nachteile:
- Die Events sind an die Sprache gebunden, so dass man eine Änderung der Sprache vornehmen muss, um einen neuen Ereignistyp hinzuzufügen
- Er zwingt Software-Entwickler, die Inhalte eines Dokuments mit den Spezifikationen des Scriptings und Eventhandling zu mischen, anstatt eine Trennung zu erlauben
- Man kann nur eine Scriptsprache pro Dokument verwenden.
[Bearbeiten] Beziehung zu anderen Standards
Anders als DOM Events, die normalerweise mit HTML-Dokumenten assoziiert werden, sind XML-Events dazu entworfen worden, vollkommen unabhängig von Devices zu sein. XML Events werden extensiv in XForms genutzt, sowie in Version 1.2 der SVG-Spezifikation, seit Juli 2006 immer noch Arbeitsentwurf.
[Bearbeiten] Beispiel von XML Events unter Benutzung von Listener in XForms
Nachfolgend ein Beispiel, wie XML-Events in der XForms-Spezifikation genutzt werden:
<html xmlns="http://www.w3.org/2002/xhtml" xmlns:ev="http://www.w3.org/2001/xml-events" xmlns:xf="http://www.w3.org/2002/xforms"> <head> ... <ev:listener event="DOMActivate" observer="meinButton" handler="#doit"/> </head>
In diesem Beispiel wird der Handler doit (zum Beispiel ein Javascript-Scriptelement) ausgeführt, wenn das DOMActivate-Ereignis bei dem Datenelement mit dem ID-Attribut meinButton eintritt.
[Bearbeiten] Siehe auch
- ECMAScript
- DOM Events
- XForms
- XHTML
[Bearbeiten] Weblinks
- W3C XML Events Spezification war eine W3C Empfehlung am 14. Oktober 2003
- W3C XML Events für HTML Authors-Tutorial
Empfehlungen (recommendations): Canonical XML | CDF | CGI | CSS | DOM | HTML | MathML | OWL | PLS | RDF | RDF-Schema | SISR | SMIL | SOAP | SRGS | SSML | SVG | SPARQL | Timed Text | VoiceXML | WSDL | XACML | XForms | XHTML | XML | XML Base | XML Events | XML Information Set | XML Schema | XML Signature | XPath | XPointer | XQuery | XSL Transformation | XSL-FO | XSL | XLink
Anmerkungen (notes): XHTML+SMIL | XAdES
Arbeitsentwürfe (working drafts): CCXML | CURIE | InkML | XFrames | XFDL | WICD | XHTML+MathML+SVG | XBL | HTML5