XML-события
Эта статья нуждается в дополнительных цитатах для проверки . ( ноябрь 2008 г. ) |
В информатике и веб-разработке XML Events является W3C. стандартом [1] для обработки событий , происходящих в XML- документе. Эти события обычно вызваны тем, что пользователи взаимодействуют с веб-страницей с помощью устройства, например веб-браузера на персональном компьютере или мобильного телефона .
Формальное определение
[ редактировать ]Событие XML — это представление некоторого асинхронного события (например, щелчка кнопки мыши ), которое связывается с элементом данных в документе XML . XML Events обеспечивает статическую синтаксическую привязку к интерфейсу DOM Events , позволяя обрабатывать событие.
Мотивация
[ редактировать ]Стандарт XML Events предназначен для предоставления языкам на основе XML возможности единообразной интеграции прослушивателей событий и связанных обработчиков событий с интерфейсами событий уровня 2 объектной модели документа (DOM). Результатом является предоставление декларативного, совместимого способа связывания поведения с документами на основе XML, такими как XHTML .
Преимущества XML-событий
[ редактировать ]XML Events использует разделения ответственности шаблон проектирования и технологически нейтральен по отношению к обработчикам . Это дает авторам свободу в организации своего кода и позволяет отделить содержимое документа от сценариев .
Устаревшие версии HTML и ранние версии SVG привязывают события к элементам представления, кодируя имя события в имени атрибута , так что значение атрибута является действием для этого события в этом элементе. Например (с JavaScript атрибутом onclick ):
Stay <a href="http://www.example.org" onclick="window.alert('Hello!'); return false;">here</a>!
У этой конструкции есть три недостатка:
- он жестко связывает события с языком , поэтому добавление новых типов событий требует внесения изменений в язык.
- это заставляет авторов смешивать содержимое документа со спецификациями сценариев и обработки событий, а не позволяет им разделять их.
- он ограничивает авторов одним языком сценариев для каждого документа.
Связь с другими стандартами
[ редактировать ]В отличие от событий DOM , которые обычно связаны с документами HTML, события XML разработаны так, чтобы быть независимыми от конкретных устройств. События XML широко используются в XForms и в версии 1.2 спецификации SVG по состоянию на июль 2006 г. [update], который все еще является рабочим проектом.
Пример событий XML с использованием прослушивателя в XForms
[ редактировать ]Ниже приведен пример использования событий XML в спецификации XForms:
<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>
В этом примере, когда DOMActivate
событие происходит в элементе данных с атрибутом id myButton
, обработчик doit
(например, элемент JavaScript).
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ «События XML: синтаксис событий для XML» . Консорциум Всемирной паутины. 14 октября 2003 г. Проверено 19 ноября 2008 г.