Polskie t�umaczenie Rekomendacji "XML Events"

Autor: Mariusz �ebrowski.
Lokalizacja: http://www.antyspam.pl/w3c/REC-xml-events-20031014/

Dokument ten jest t�umaczeniem rekomendacji W3C XML Events. Przek�ad ten nie jest przek�adem normatywnym i mo�e zawiera� b��dy wynikaj�ce z t�umaczenia. Status normatywny posiada jedynie wersja angielskoj�zyczna na stronie W3C http://www.w3.org/TR/2003/REC-xml-events-20031014/.
Dokument jest chroniony prawem autorskim. Copyright © 2004 W3C® (MIT, ERCIM, Keio).

W3C

Zdarzenia XML

Zdarzenia Sk�adni dla XML

Rekomendacja W3C 14 pa�dziernika 2003

Obecna wersja:
http://www.w3.org/TR/2003/REC-xml-events-20031014
Najnowsza wersja:
http://www.w3.org/TR/xml-events
Poprzednia wersja:
http://www.w3.org/TR/2003/PR-xml-events-20030804
Diff-marked version:
xml-events-diff.html
Edytorzy:
Shane McCarron, Applied Testing and Technology, Inc.
Steven Pemberton, CWI /W3C ®
T. V. Raman, IBM Corporation

Prosimy odnie�� si� do erraty dla tego dokumentu, kt�ry mo�e zawiera� normatywne poprawki.

Ten dokument jest tak�e dost�pny w formatach nienormatywnych: wersja PostScript, wersja PDF, archiwum ZIP, oraz archiwum Gzip'd TAR.

Wersja angielska tej specyfikacji jest jedyn� wersj� normatywn�. Nienormatywne t�umaczenia r�wnie� mog� by� dost�pne.


Streszczenie

Modu� zdarze� XML okre�lony w tej specyfikacji zapewnia j�zyki XML ze zdolno�ci� do jednostajnej integracji zdarze� s�uchaczy i powi�zanych posiadaczy zdarze� ze specyfikacj� DOM. Interfejs zdarze� poziomu 2 [DOM2EVENTS]. Wynikiem jest zapewnienie interoperacyjnego sposobu ��czenia zachowa� z adjustacj� poziomu dokumentu.

Status Tego Dokumentu

Ta cz�� opisuje status tego dokumentu w czasie jego publikacji. Inne dokumenty mog� zast�pi� ten dokument. Lista obecnych publikacji W3C i ostatni przegl�d tego raportu technicznego mo�na znale�� w indeksie raport�w technicznych W3C pod adresem http://www.w3.org/TR/.

Ten dokument jest Rekomendacj� W3C. Zosta� om�wiony przez Cz�onk�w W3C i inne zainteresowane strony, zosta� zatwierdzony przez Dyrektora jako rekomendacja W3C. Jest to stabilny dokument i mo�e by� u�ywany jako wzorzec lub cytowany jako odno�nik normatywny z innego dokumentu. Rola Rola W3C podczas tworzenia rekomendacji polega na zwr�ceniu uwagi na specyfikacj� oraz promocj� jego rozwoju. Zwi�ksza to funkcjonalno�� i interoperacyjno�� sieci internetowej. Zestaw test�w dla Zdarze� XML zosta� rozwini�ty jako cz�� powszechnego Zestawu Test�w XForms 1.0 , razem z raportem implementacji.

Ten dokument zosta� stworzony przez Grup� Robocz� W3C HTML Working Group ( tylko Cz�onkowie) jako cz�� Dzia�alno�ci HTML. Cele Grupy Roboczej HTML s� om�wione w karcie Grupy Roboczej HTML . Ujawnienia patentowe do tej specyfikacji mo�na znale�� na stronie o ujawnieniach patentowych Grupy Roboczej .

Prosimy o zg�aszanie b��d�w tej specyfikacji w [email protected] (archiwum). Nie nale�y wysy�a� maili w celu dyskusji na ten adres. Powszechne dyskusje mog� odbywa� si� pod adresem [email protected] ( archiwum).

Spis tre�ci

1.Wst�p

Jest to cz�� informacyjna.

Zdarzenie jest odzwierciedleniem pewnego asynchronicznego zdarzenia (takim jak klikni�cie myszk� na wy�wietlany element, lub b��d arytmetyczny we warto�ci atrybutu elementu, lub jeden z niewyobra�alnie wielu innych mo�liwo�ci), kt�re ��czy si� z elementem (wycelowane na niego) w dokumencie XML.

W modelu DOM zdarze� [DOM2EVENTS], og�lnym zachowaniem jest kiedy zdarzenie ma miejsce, jest przes�any poprzez przekazanie w d� drzewa dokumentu w fazie zwanej schwytanie (capture phase) do elementu, w kt�rym zdarzenie mia�o miejsce (zwane jegocelem), gdzie po�niej mo�e by� przekazane z powrotem do trzech razy w fazie zwanej bulgotanie (bubbling). Og�lnie zdarzenie mo�e odpowiada� do jakiegokolwiek elementu we wstawce do programu ( observer) w niemal ka�dej fazie przez powodowanie czynno�ci, i/lub zatrzymanie zdarzenia, i/lub anulowanie domy�lnej czynno�ci dla zdarzenia. Poni�szy diagram ilustruje to:

Event propagation flow diagram
Przebieg zdarzenia w DOM2: zdarzenie wycelowane na element (marked 'target') w trzech fazach do do�u drzewa od korzeni do celu w trzech fazach zwanych 'capture' (chwytanie). Je�eli typ zdarzenia zezwala na to, zdarzenie wtedy wraca do g�ry drzewa poprzez ten sam szlak w fazie zwanej bulgotanie (bubbling). Jakikolwiek w�ze� na szlaku, ��cznie z w�ze� korzenia i cel, mo�e by� 'observer': tj. handler mo�e by� do��czony do niego, aktywowany kiedy fazy zdarzenia przechodz� ka�d� z nich. Handler mo�e jedynie oczekiwa� na jedn� faz�. Aby oczekiwa� na obie nale�y za��czy� dwa.

Czynno�� jest pewnego rodzaju reakcj� na zdarzenie; handler jest pewnego rodzaju specyfikacj� dla takich czynno�ci, np. u�ywanie skrytp�w lub innej metody. S�uchacz jest takim atrybutem handler dla zdarzenia maj�cego na celu pewien element w dokumencie.

HTML [HTML4] ��czy zdarzenia do elementu poprzez kodowanie nazwy zdarzenia w nazwie atrybutu, takiego jak warto�� atrybutu, kt�ra jest czynno�ci� dla zdarzenia w tamtym elemencie. Ta metoda posiada dwie g��wne zalety: po pierwsze ��czy na sta�e zdarzenia w j�zyk tak, by doda� nowe zdarzenie, nale�y zmieni� j�zyk, a po drugie zmusza do zmieszania zawarto�ci dokumentu ze specyfikacjami skrypt�w i obs�ugo zdarze�, raczej ni� zezwala na wyodr�bnienie ich. SVG [SVG] u�ywa podobnej metody.

Proces definiowania nowej wersji HTML zidentyfikowa� zapotrzebowanie na metod� specyfikacji rozszerzalnego zdarzenia. Wymagania projektowe by�y nast�puj�ce:

DOM wskazuje model zdarzenia zapewniaj�ce nast�puj�ce cechy:

Element listener i jego atrybuty zdefiniowane w tej specyfikacji s� metod� ��czenia zdarzenia poziomu 2 DOM z elementem zdarzenia handler. Zamykaj� one r�ne aspekty interfejsu zdarzenia poziomu 2 DOM, zapewniaj�c specyfikacj� poziomu adjustacji czynno�ci, kt�re maj� by� wykonana podczas r�nych faz rozprzestrzeniania si� zdarzenia.

Ten dokument ani nie wyr�nia szczeg�lnych zdarze�, ani nie narzuca �adnych szczeg�lnych metod wyszczeg�lnianych czynno�ci. Te definicje s� pozostawione jakiemukolwiek j�zykowi znacznik�w korzystaj�c z wy�ej opisanych u�atwie�.

2.Wymagania zgodno�ci

Ta cz�� jest normatywna.

S�owa kluczowe "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "RECOMMENDED", "MAY", oraz "OPTIONAL" b�d� zinterpretowane w tym dokumencie tak, jak opisano w [RFC2119].

2.1.Zgodno�� dokumentu

Zdarzenia XML nie s� samodzielnym typem dokumentu. Zamierzona jest integracja z innymi j�zykami Host takimi jak XHTML. Dokument zgodny z zdarzeniami XML jest dokumentem wymagaj�cym jedynie u�atwie� opisanych jako niezb�dne w tej specyfikacji i u�atwie� opisanych jako niezb�dne w jego j�zyku host. Taki dokument musi spe�nia� wszystkie nast�puj�ce kryteria:

  1. Dokument musi by� zgodny z ograniczeniami wyra�onymi w Appendix�B - Implementacja Schematu, lub Appendix�A - Implementacja DTD, po��czona z ograniczeniami wyra�onymi w implementacji jego j�zyka host.

  2. Dokument musi zawiera� deklaracj� xmlns dla przestrzeni nazw zdarze� XML[XMLNAMES]. Przestrze� nazw dla zdarze� XML jest zdefiniowana jako http://www.w3.org/2001/xml-events. Przyk�adowy znacznik pocz�tkowy elementu korzenia mo�e wygl�da� nast�puj�co:

    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"
     xmlns:ev="http://www.w3.org/2001/xml-events" >
    

2.2.Zgodno�� j�zyka host

Kiedy Zdarzenia XML s� zawarte w j�zyku host, wszystkie z urz�dze� wymaganych w tej specyfikacji nie mog� by� zawarte w j�zyku host. W dodatku elementy i atrybuty odre�lone w tej specyfikacji musz� by� zawarte w modelu zawarto�ci j�zyka host.

2.3. Zgodno�� Agenta U�ytkownika

Zgodny u�ytkownik musi wspiera� wszystkie cechy wymagane w tej specyfikacji.

3. Modu� Zdarze� XML

Tak specyfikacja jest normatywna.

Ta specyfikacja okre�la modu� zwany Zdarzenia XML. Modu� zdarze� XML u�ywa identyfikatora przestrzeni nazw XML [XMLNAMES] http://www.w3.org/2001/xml-events.

Przyk�ady w tym dokumencie, kt�re u�ywaj� prefiksu przestrzeni nazw "ev" zak�adaj� wszystkie deklaracj� xmlns xmlns:ev="http://www.w3.org/2001/xml-events" gdziekolwiek w danym dokumencie. Wszystkie przyk�ady s� informacyjne.

Reszta tej cz�ci opisuje elementy i atrybuty w tym module, semantyk� i zapewnia streszczenie definicji modu�u jako wymagan� w [ XHTMLMOD].

Modu� Zdarze� XML wspomaga nast�puj�cy element i atrybuty:

Element Atrybuty Minimalny Model Zawarto�ci
listener event ( NMTOKEN),
observer ( IDREF),
target (IDREF ),
handler ( URI),
phase ("capture" | "default"*),
propagate ("stop" | "continue"*),
defaultAction ("cancel" | "perform"*),
id ( ID)
PUSTY

Implementacje: DTD, Schemat XML

3.1. Element listener

Element listener wspomaga podzbi�r interfejsu EventListener DOM. Jest u�ywany do deklaracji event listener i zarejestrowania ich ze szczeg�lnymi w�z�ami w DOM, oraz posiada nast�puj�ce atrybuty:

event
Wymagany atrybut event wyszczeg�lnia typ event, dla kt�rego kt�ry listener jest rejestrowany. Jak okre�lono przez [DOM2EVENTS], warto�� atrybutu powinna by� Nazw� XML [XML].
observer
Opcjonalny atrybut observer okre�la id elementu, z kt�rym dany event listener ma by� zarejestrowany. Je�eli ten atrybut nie wyst�puje, observer jest elementem, na kt�rym jest atrybut event (patrz dalej pod " Do��czanie Atrybut�w Bezpo�rednio do Elementu Observer"), lub przodek celu tamtego elementu (patrz dalej pod " Do��czanie Atrybut�w Bezpo�rednio do Elementu Observer").
Opcjonalny atrybuttarget okre�la id elementu docelowego zdarzenia (tj. w�ze�, kt�ry spowodowa� zdarzenie). Je�eli ten atrybut wyst�puje, tylko zdarzenia pasuj�ce do obu atrybut�w event oraz target b�d� przetworzone przez powi�zany program obs�ugi handler. Niew�tpliwie ze wzgl�du na spos�b, w jaki zdarzenia rozprzestrzeniaj� si�, docelowy element powinien by� w�z�em potomkowym elementu observer, lub te� sam powinien by� elementem observer.

U�ywanie tego atrybutu wymaga staranno�ci; n przyk�ad je�li okre�lasz

<
     listener event="click" observer="para1"
     target="link1" handler="#clicker"/>

gdzie 'para1' jest pewnym przodkiem nast�puj�cego w�z�a

<a id="link1" href="doc.html">
     The <em>draft</em> document</a>

i u�ytkownik klika s�owo "draft", element <em> a nie <a> b�dzie celem, tak wi�c handler nie b�dzie aktywowany; aby z�apa� wszystkie klikni�cia myszk�, element <a> i jego potomkowie u�ywaj� observer="link1", i �adnego atrybutu target.

handler
Opcjonalny atrybut handler okre�la odno�nik URI �r�d�a, kt�ry definiuje czynno��, kt�ra powinna by� wykonana, je�eli zdarzenie osi�ga observer. (Ta specyfikacja nie nakazuje, jak� form� tego elementu powinien przyj��: patrz dalej w tej cz�ci" Event Handlers"). Je�li ten atrybut nie wyst�puje, handler jest elementem, na kt�rym jest atrybut event (patrz dalej pod " Do��czanie Atrybut�w Bezpo�rednio do Elementu Handler ").
phase
Opcjonalny atrybut phase okre�la kiedy (podczas kt�rego zdarzenia DOM 2 propagation phase) listener b�dzie aktywowany przez ��dane zdarzenie.
capture
Listener jest aktywowany podczas fazy chwytania.
default
Listener jest aktywowany podczas fazy bulgotania lub celowania.

Zachowanie warto�ci domy�lnej to phase="default".

Zauwa�, �e nie wszystkie zdarzenia b�belkuj�, przypadek phase="default", w kt�rym mo�na tylko obs�ugiwa� zdarzenie poprzez zmian� celu zdarzenia w observer.

propagate
Opcjonalny atrybut propagate okre�la, czy po przetwarzaniu wszystkich listener w aktualnym w�le, zdarzenie mo�e kontunuowa� na swoim podprogramie korekcyjnym (zar�wno w fazie chwytania, jak i bulgotania).
stop
zatrzymanie rozprzestrzeniania zdarzenia
continue
rozprzestrzenianie zdarzenia jest kontynuowane (chyba, �e zostanie zatrzymane innymi �rodkami takimi jak, skrypty, lub przez inny listener).

Zachowanie warto�ci domy�lnej to propagate="continue".

defaultAction
Opcjonalny atrybut defaultAction okre�la, czy po przetworzeniu wszystkich listener dla zdarzenia, czy domy�lna czynno�� dla zdarzenia (je�li jest) powinna by� wykonana, czy nie. Na przyk�ad, w XHTML domy�ln� czynno�ci� dla klikni�cia mysz� na element <a> lun jeden z jego potomk�w jest transwersja linku.
cancel
je�li mo�na skasowa� typ zdarzenia, czynno�� domy�lna jest kasowana
perform
domy�lna czynno�� jest wykonywana (chyba, �e zostanie zatrzymane innymi �rodkami takimi jak, skrypty, lub przez inny listener)

Warto�ci� domy�ln� jestdefaultAction="perform" .

Zauwa�, �e nie wszystkie zdarzenia mo�na kasowa�, w tym przypadku ten atrybut jest ignorowany.

id
Opcjonalny atrybut id jest jednoznacznym identyfikatorem dokumentu. Warto�� tego identyfikatora jest cz�sto u�ywana do manipulowania elementem przez interfejs DOM.

Zauwa�, �e observer = "< element-id>" i event = "<event-type>" s� podobne do atrybutu begin = "<element-id>.<event-type>" w SMIL EventTiming [SMIL20].

3.1.1.Przyk�ady u�ycia listener

  1. Ten przyk�ad za��cza handler w element na "#doit", kt�ry zostanie aktywowany, kiedy zdarzenie zwane activate wyst�pi na elemencie z id="button1", lub jakimkolwiek z jego potomk�w. Aktywacja b�dzie mia�� miejsce podczas b�belkowania, lub je�li zdarzenie mia�o miejsce w samym elemencie observer, kiedy zdarzenie osi�ga element (faza e target).

    <
                listener event="activate" observer="button1" handler="#doit"/>
    
  2. Za��cza do handler na #overflow-handler, kt�ry zostanie aktywowany, kiedy zdarzenie overflow wydarzy si� na elemencie z id="expr1" i przejdzie do elementu id="prog1".

    <
                listener event="overflow" observer="prog1" target="expr1"
                handler="#overflow-handler"/>
    
  3. Za��cza do handler na #popup, kt�ry zostanie aktywowany kiedykolwiek zdarzenie activate wyst�pi na elemencie z id="embargo", lub jakimkolwiek z jego potomk�w. Poniewa� b�dzie aktywowany podczas fazy chwytania, a rozprzestrzenianie jest zatrzymane, b�dzie mia�o efekt (bez wzgl�du na to, co robi handler) zabobiegania jakichkolwiek element�w potomk�w w elemencie embargo , nie widz�c zdarze� activate .

    <
                listener event="activate" observer="embargo" handler="#popup"
            phase="capture" propagate="stop"/>
                
  4. Za��cza to handler z innego dokumentu.

    <
                listener event="activate" observer="image1"
        handler="/handlers/events.xml#activate"/>
    

3.2. Za��czanie Atrybut�w Bezpo�rednio do Elementu Observer

Wszystkie atrybuty z elementu listener z wyj�tkiem id mog� by� u�yte jako atrybuty globalne, jak zdefiniowano w Przestrzeniach nazw w XML [XMLNAMES], do za��czania atrybut�w do innych element�w.

Zauwa�, �e znaczy to, �e element <listener> jest dok�adnie m�wi�c zb�dny, poniewa� nast�puj�cy element

<
            anyelement ev:event="click" ev:observer="button1" ev:handler="#clicker"/>

mia�by ten sam efekt, co

<
            ev:listener event="click" observer="button1" handler="#clicker"/>

Niemniej jednak, dla u�yteczno�ci element <listener> zosta� zachowany.

Je�eli atrybut observer jest omini�ty (ale nie atrybut handler), wtedy element, do kt�rego inne elementy s� za��czone jest elementem observer.

3.2.1. Przyk�ady U�ywania Atrybut�w Za��czanych do Elementu Observer

  1. Ten pierwszy przyk�ad za��czy handler zidentyfikowany przez "#popper" do elementu <a> i skasuje domy�ln� czynno�� dla zdarzenia.

    <a href="doc.html" ev:event="activate" ev:handler="#popper"
                ev:defaultAction="cancel">The document</a>
    
  2. Za��czy to handler do #handle-overflow dla zdarzenia overflow do bie��cego elementu.

    <div ev:event="overflow"
                 ev:handler="#handle-overflow"> ... </div>
    

3.3.Za��czanie Atrybut�w Bezpo�rednio do Elementu Handler

Je�li podczas za��czania globalnych atrybut�w do elementu, atrybut handler jest omini�ty, wtedy element, do kt�rego inne atrybuty s� za��czone to element handler.

Zauwa�, �e ze wzgl�du na to, �e atrybuty observer i target s� IDREF, w tym przypadku elementy handler i observer/target nie mog� by� w tym samym dokumencie (kiedy w innych przypadkach, poniewa� atrybut handler to URI, element handler mo�e by� w innym dokumencie). Je�eli atrybut observer jest r�wnie� pomini�ty, wtedy przodek elementu handler jest elementem observer.

3.3.1. Przyk�ady U�ywania Atrybut�w Za��czanych do Elementu Handler

  1. W tym przypadku element to handler dla zdarzenia submit na elemencie z id="form1".

    <script type="application/x-javascript"
                        ev:event="submit" ev:observer="form1">
       return docheck(event);
    </script>
       
  2. W tym przypadku element <action> to handler dla zdarzenia q-submit, a observer to element questionnaire .

    <
       questionnaire submissionURL="/q/tally">
        <action ev:event="q-submit">
          ...
        </action>
          ...
     </questionnaire>
    
  3. Element <script> to handler dla zdarzenia click; element <img> to observer.

    <img src="button.gif" alt="OK">
        <
       script ev:event="activate" type="application/x-javascript">
            doactivate(event);
       </script>
    </img>
    
  4. Element <onevent> to handler dla zdarzenia enterforward. Element <card> to observer.

    <card>
        <onevent ev:event="enterforward">
       <go href="/url"/>
        </onevent>
        <p>
          Hello!
        </p>
    </card>
    
  5. Element <catch> to handler dla zdarzenia nomatch. Observer to element <field>.

    <form id="launch_missiles">
       <field name="password">
        <prompt>What is the code word?</prompt>
        <grammar>
       <rule id="root" scope="public">rutabaga</rule>
        </grammar>
        <help>
       It is the name of an obscure vegetable.</help>
        <catch ev:event="nomatch">
       <prompt>Security violation!</prompt>
          <submit next="apprehend_felon" namelist="user_id"/>
       </catch>
      </field>
      <block>
        <goto next="#get_city"/>
      </block>
    </form>
       
  6. Ten przyk�ad pokazuje trzy handlery dla r�nych zdarze�. Observer dla wszystkich trzech to element <secret>.

    <secret ref="/login/password">
       <caption>Please enter your password</caption>
        <info ev:event="help">
       Mail [email protected] in case of problems
        </info>
        <info ev:event="hint">
       A pet's name
        </info>
        <info ev:event="alert">
       This field is required
        </info>
    </secret>
    

3.4. Streszczenie Warto�ci Domy�lnych Atrybutu Observer i Handler

Nast�puj�ca tabelka podsumowuje, kt�re elementy odgrywaj� role observer lub handler, je�li odpowiedni atrybut jest pomini�ty.

Skutek pomini�tego atrybutu observer i handler
Handler obecny Handler pomini�ty
Observer obecny (Jak zdeklarowano) Element to handler
Observer pomini�ty Element to observer Element to handler
Przodek to observer

3.5. Event Handler

Ta specyfikacja nie wymaga aplikacji XML u�ywaj�cej Zdarzenia XML do u�ywania �adnej szczeg�lnej metody specyfikacji handler�w. Jednak przyk�ady, szczeg�lnie te w sekcji o za��czania atrybut�w bezpo�rednio do handlera, maj� na celu podanie przyk�ad�w jak mog� by� okre�lane.

Mo�na jednak dostrzec, �e dwie metody mog� cz�sto wyst�powa� razem: skrypty (takie jak element skryptu XMTML i deklaracyjne znakowanie u�ywaj�ce element�w XML (takich jak element <onevent> ). Specyfikacja zapewni znakowanie do wspierania tych metod.

3.6. Podstawowy Profil Zdarze� XML

Podstawowy Profil Zdarze� XML pozwala na u�ywanie Modu�u Zdarze� XML w celu u�atwienia przetwarzania na ma�ych urz�dzeniach.

Podstawowy Profil zezwala na nast�puj�ce ograniczenia przy u�yciu elementu listener i jego atrybut�w, i na u�ywanie atrybut�w z elementu listener jako atrybut�w globalnych.

  1. Zewn�trzne Event Handlers

    Zdolno�� przetworzenia zewn�trznych event handlers nie jest wymagana. Kiedy jest u�ywany atrybut 'handler' na elemencie listener, lub kiedy jest u�ywany globalny atrybut 'handler', to handler wyszczeg�lniony w warto�ci tego atrybutu powinien znajdowa� si� w obr�bie bie��cego dokumentu.

    Na przyk��d nast�puj�ce s� dozwolone:

    <
       listener event="click" target="#button1" handler="#clicker"/>
    

    kiedy nast�puj�cy nie musi by� przetwarzany:

    <
       listener event="click" target="#button1" handler="doc2.html#clicker"/>
    
  2. Porz�dkowanie ��cze� Zdarze�

    ��czenie event handler z observer mo�e by� wymagane, aby by�o leksykalnie przed ko�cem elementu observer. Innymi s�owy, ��czenie <listener> z observer mo�e nie wyst�pi� po znaczniku zamykaj�cym element observer, a przenoszenie atrybut�w event handler do po��czenia z observer mo�e r�wnie� nie nast�pi� po znaczniku zamykaj�cym element observer.

4. Typy Nazewnictwa Zdarze�

Jest to cz�� informacyjna.

Ta specyfikacja nie okre�la normatywnie jak projektanci j�zyk�w powinni nazywa� zdarzenia (tj. warto�ci u�ywane w atrybucie event).

Jednak przysz�e wersje Zdarze� DOM prawdopodobnie pozwol� na nazwy zdarze� przestrzeni nazw, wi�c zaleca si� projektantom j�zyk�w, aby nie u�ywali znaku dwukropka ":" w nazwach zdarze�.

Liczba typ�w zdarze� jest okre�lona w DOM2 [DOM2EVENTS], do kt�rej nale�y odnosi� si� przy ich nazwach i semantyce.

A.Implementacja DTD

Ten za��cznik jest normatywny.

Implementacja DTD Zdarze� XML odpowiada wymaganiom okre�lonym w [XHTMLMOD]. W konsekwencji zapewnia to submodu� Nazw Okre�laj�cych, oraz plik modu�u dla modu�u Zdarze� XML okre�lonych w tej Proponowanej Rekomendacji.

A.1.Modu� Nazw Okre�laj�cych

Zauwa�, �e ten modu� okrela parametr elementu rekordu %xml-events-attrs.qname;. Ten element rekordu powinien by� u�ywany w li�cie element�w atrybut�w w ka�dym j�zyku host, kt�ry zezwala na u�ycie atrybut�w event na elementach w ich w�asnej przestrzeni nazw. W tym przypadku program obs�ugi J�zyka Host powinien ustawi� parametr elementu rekordu %XML-EVENTS.prefixed; do INCLUDE i parametr elementu rekordu %XML-EVENTS.prefix; do warto�ci, kt�ra jest prefiksem dla atrybut�w Zdarze� XML.

<!-- ....................................................................... -->
   <!-- XML Events Qname Module  ............................................ -->
   <!-- file: xml-events-qname-1.mod
   This is XML Events - the Events Module for XML,
   a definition of access to the DOM events model.
   Copyright 2000-2003 W3C (MIT, ERCIM, Keio), All Rights Reserved.
   This DTD module is identified by the PUBLIC and SYSTEM identifiers:
   PUBLIC "-//W3C//ENTITIES XML Events Qnames 1.0//EN"
   SYSTEM "http://www.w3.org/MarkUp/DTD/xml-events-qname-1.mod"
   Revisions:
     (none)
     ....................................................................... -->
   <!-- XML Events Qname (Qualified Name) Module
   This module is contained in two parts, labeled Section 'A' and 'B':
   Section A declares parameter entities to support namespace-
   qualified names, namespace declarations, and name prefixing
   for XML Events and extensions.
   Section B declares parameter entities used to provide
   namespace-qualified names for all XML Events element types:
   %listener.qname;   the xmlns-qualified name for <listener>
         ...
   XML Events extensions would create a module similar to this one.
   Included in the XML distribution is a template module
     ('template-qname-1.mod')
   suitable for this purpose.
-->

<!--



   Section A: XML Events XML Namespace Framework :::::::::::::::::::: -->

<!--
   1. Declare a %XML-EVENTS.prefixed; conditional section keyword, used
   to activate namespace prefixing. The default value should
   inherit '%NS.prefixed;' from the DTD driver, so that unless
   overridden, the default behavior follows the overall DTD
   prefixing scheme.
-->
<!ENTITY %
   NS.prefixed "IGNORE" >
<!ENTITY % XML-EVENTS.prefixed "%NS.prefixed;" >
   <!-- 2. Declare a parameter entity (eg., %XML-EVENTS.xmlns;) containing
   the URI reference used to identify the XML Events namespace
-->
<!ENTITY
   % XML-EVENTS.xmlns  "http://www.w3.org/2001/xml-events" >

<!--



   3. Declare parameter entities (eg., %XML.prefix;) containing
   the default namespace prefix string(s) to use when prefixing
   is enabled. This may be overridden in the DTD driver or the
   internal subset of an document instance. If no default prefix
   is desired, this may be declared as an empty string.
   NOTE: As specified in [XMLNAMES], the namespace prefix serves
   as a proxy for the URI reference, and is not in itself significant.
-->
<!ENTITY
   % XML-EVENTS.prefix  "" >

<!--
   4. Declare parameter entities (eg., %XML-EVENTS.pfx;) containing the
   colonized prefix(es) (eg., '%XML-EVENTS.prefix;:') used when
   prefixing is active, an empty string when it is not.
-->
<![%XML-EVENTS.prefixed;[
<!ENTITY
   % XML-EVENTS.pfx  "%XML-EVENTS.prefix;:" >
]]>
<!ENTITY
   % XML-EVENTS.pfx  "" >

<!--
   declare qualified name extensions here ............ -->
<!ENTITY 
   % xml-events-qname-extra.mod "" >
%xml-events-qname-extra.mod;

<!--
   5. The parameter entity %XML-EVENTS.xmlns.extra.attrib; may be
   redeclared to contain any non-XML Events namespace declaration
   attributes for namespaces embedded in XML. The default
   is an empty string.  XLink should be included here if used
   in the DTD.
-->
<!ENTITY % XML-EVENTS.xmlns.extra.attrib "" >


<!--
   Section B: Nazwy Okre�laj�ce  ::::::::::::::::::::::::::::: -->

<!--
   6. This section declares parameter entities used to provide
   namespace-qualified names for all XML Events element types.
-->

<!ENTITY 
   % xml-events.listener.qname  "%XML-EVENTS.pfx;listener" >


<!--
   The following defines a PE for use in the attribute sets of elements in
   other namespaces that want to incorporate the XML Event attributes. Note
   that in this case the XML-EVENTS.pfx should always be defined. -->

<!ENTITY %
   xml-events.attrs.qname
   "%XML-EVENTS.pfx;event            NMTOKEN      #IMPLIED
   %XML-EVENTS.pfx;observer         IDREF        #IMPLIED
    %XML-EVENTS.pfx;target           IDREF        #IMPLIED
   %XML-EVENTS.pfx;handler          %URI.datatype;        #IMPLIED
    %XML-EVENTS.pfx;phase
   (capture|default) #IMPLIED
    %XML-EVENTS.pfx;propagate        (stop|continue) #IMPLIED
   %XML-EVENTS.pfx;defaultAction    (cancel|perform) #IMPLIED"
    >

<!-- end of xml-events-qname-1.mod -->
   

A.2. Modu� Zdarze� XML

<
   !-- ...................................................................... -->
<
   !-- XML Events Module .................................................... -->
<
   !-- file: xml-events-1.mod

     This is XML Events - the Events Module for XML.
   a redefinition of access to the DOM events model.

     Copyright 2000-2003 W3C (MIT, ERCIM, Keio),
   All Rights Reserved.

     This DTD module is identified by the PUBLIC and SYSTEM identifiers:
   PUBLIC "-//W3C//ENTITIES XML Events 1.0//EN"
       SYSTEM "http://www.w3.org/MarkUp/DTD/xml-events-1.mod"
   Revisions:
     (none)
     ....................................................................... -->


<
   !-- XML Events defines the listener element and its attributes -->

<!ENTITY 
   % xml-events.listener.content "EMPTY" >

<!ELEMENT %xml-events.listener.qname;
    %xml-events.listener.content;>
<!ATTLIST %xml-events.listener.qname;
    id               ID
   #IMPLIED
    event            NMTOKEN      #REQUIRED
    observer         IDREF        #IMPLIED
    target
   IDREF        #IMPLIED
    handler          %anyURI.datatype;        #IMPLIED
    phase            (capture|default)
   #IMPLIED
    propagate        (stop|continue) #IMPLIED
    defaultAction    (cancel|perform) #IMPLIED
>

<
   !-- end of xml-events-1.mod -->

B. Implementacja Schematu

This appendix is normative.

Implementacja Schematu Zdarze� XML odpowiada wymaganiom okre�lonym w [XHTMLSCHEMAMOD]. Jest podzielona na modu� atrybut�w i modu� elementu dla Modu�u Zdarze� XML okre�lone w tej Proponowanej Rekomendacji.

B.1. Modu� Atrybut�w

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema
     targetNamespace="http://www.w3.org/2001/xml-events" 
    xmlns:ev="http://www.w3.org/2001/xml-events"
     xmlns:xs="http://www.w3.org/2001/XMLSchema" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://www.w3.org/2001/XMLSchema
     http://www.w3.org/2001/XMLSchema.xsd" 
    elementFormDefault="unqualified" 
    blockDefault="#all"
     finalDefault="#all" 
    attributeFormDefault="unqualified">

  <xs:annotation>
     <xs:documentation>
      This is the XML Schema for XML Events global attributes
     URI: http://www.w3.org/MarkUp/SCHEMA/xml-events-attribs-1.xsd
     $Id: xml-events-attribs-1.xsd,v 1.5 2003/08/02 09:36:54 mimasa Exp $
    </xs:documentation>
     <xs:documentation source="xml-events-copyright-1.xsd"/>
  </xs:annotation>

  <xs:annotation>
     <xs:documentation>
      XML Event Attributes
     These "global" event attributes are defined in "Attaching
     Attributes Directly to the Observer Element" of the XML
     Events specification.
    </xs:documentation>
  </xs:annotation>
     <xs:attribute name="event" type="xs:NMTOKEN"/>
  <xs:attribute name="observer" type="xs:IDREF"/>
     <xs:attribute name="target" type="xs:IDREF"/>
  <xs:attribute name="handler" type="xs:anyURI"/>
     <xs:attribute name="phase" default="default">
    <xs:simpleType>
     <xs:restriction base="xs:NMTOKEN">
        <xs:enumeration value="capture"/>
     <xs:enumeration value="default"/>
      </xs:restriction>
    </xs:simpleType>
     </xs:attribute>
  <xs:attribute name="propagate" default="continue">
    <xs:simpleType>
     <xs:restriction base="xs:NMTOKEN">
        <xs:enumeration value="stop"/>
     <xs:enumeration value="continue"/>
      </xs:restriction>
    </xs:simpleType>
     </xs:attribute>
  <xs:attribute name="defaultAction" default="perform">
     <xs:simpleType>
      <xs:restriction base="xs:NMTOKEN">
     <xs:enumeration value="cancel"/>
        <xs:enumeration value="perform"/>
     </xs:restriction>
    </xs:simpleType>
  </xs:attribute>
     <xs:attributeGroup name="XmlEvents.attlist">
    <xs:attribute ref="ev:event"/>
     <xs:attribute ref="ev:observer"/>
    <xs:attribute ref="ev:target"/>
     <xs:attribute ref="ev:handler"/>
    <xs:attribute ref="ev:phase"/>
     <xs:attribute ref="ev:propagate"/>
    <xs:attribute ref="ev:defaultAction"/>
     </xs:attributeGroup>

</xs:schema>

B.2. Modu� Zdarze� XML

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema
     targetNamespace="http://www.w3.org/2001/xml-events" 
    xmlns="http://www.w3.org/2001/xml-events"
     xmlns:xs="http://www.w3.org/2001/XMLSchema" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://www.w3.org/2001/XMLSchema
     http://www.w3.org/2001/XMLSchema.xsd" 
    elementFormDefault="unqualified"
     blockDefault="#all" 
    finalDefault="#all" 
    attributeFormDefault="unqualified">
     <xs:annotation>
    <xs:documentation>
      This is the XML Schema for XML Events
     URI: http://www.w3.org/MarkUp/SCHEMA/xml-events-1.xsd
     $Id: xml-events-1.xsd,v 1.6 2003/08/02 09:36:54 mimasa Exp $
    </xs:documentation>
     <xs:documentation source="xml-events-copyright-1.xsd"/>
  </xs:annotation>
     <xs:annotation>
    <xs:documentation>
      XML Events element listener
     This module defines the listener element for XML Events.
     This element can be used to define event listeners. This
     module relies upon the XmlEvents.attlist attribute group
     defined in xml-events-attribs-1.xsd.
    </xs:documentation>
  </xs:annotation>
     <xs:attributeGroup name="listener.attlist">
    <xs:attribute name="event" use="required"
     type="xs:NMTOKEN"/>
    <xs:attribute name="observer" type="xs:IDREF"/>
     <xs:attribute name="target" type="xs:IDREF"/>
    <xs:attribute name="handler"
     type="xs:anyURI"/>
    <xs:attribute name="phase" default="default">
     <xs:simpleType>
        <xs:restriction base="xs:NMTOKEN">
     <xs:enumeration value="capture"/>
          <xs:enumeration value="default"/>
     </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
     <xs:attribute name="propagate" default="continue">
      <xs:simpleType>
     <xs:restriction base="xs:NMTOKEN">
          <xs:enumeration value="stop"/>
      <xs:enumeration value="continue"/>
        </xs:restriction>
      </xs:simpleType>
      </xs:attribute>
    <xs:attribute name="defaultAction" default="perform">
      <xs:simpleType>
        <xs:restriction base="xs:NMTOKEN">
      <xs:enumeration value="cancel"/>
          <xs:enumeration value="perform"/>
      </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
      <xs:attribute name="id" type="xs:ID"/>
  </xs:attributeGroup>
      <xs:complexType name="listener.type">
    <xs:attributeGroup ref="listener.attlist"/>
      </xs:complexType>

  <xs:element name="
      listener" type="listener.type"/>

</xs:schema>

C.Odno�niki

Ten za��cznik jest normatywny.

C.1.Odno�niki Normatywne

[ DOM2EVENTS]
" Document Object Model (DOM) Poziom 2 Specyfikacja Zdarze�", Rekomendacja W3C, T. Pixley, ed., 13 listopada 2000.
Dost�pny na: http://www.w3.org/TR/2000/REC-DOM-Level-2-Events-20001113
Najnowsza wersja jest dost�pna na: http://www.w3.org/TR/DOM-Level-2-Events
[ XML]
" Extensible Markup Language (XML) 1.0 (Edycja druga) ", Rekomendacja W3C, T. Bray et al., eds. , 6 pa�dziernika 2000.
Dost�pny na: http://www.w3.org/TR/2000/REC-xml-20001006
Najnowsza wersja jest dost�pna na: http://www.w3.org/TR/REC-xml
[ SCHEMA]
" Schemat XML Cz�� 2: Typy danych", Rekomendacja W3C, P. V. Biron et al., eds., 2 maja 2001.
Dost�pny na: http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/
Najnowsza wersja jest dost�pna na: http://www.w3.org/TR/xmlschema-2/
[RFC2119]
" S�owa kluczowe do u�ycia w RFC do wskazania poziom�w wymaga� ", RFC 2119, S. Bradner, March 1997.
Dost�pny na: http://www.rfc-editor.org/rfc/rfc2119.txt
[XMLNAMES]
" Przestrzenie nazw w XML", Rekomendacja W3C, T. Bray et al., eds., 14 stycznia 1999.
dost�pny na: http://www.w3.org/TR/1999/REC-xml-names-19990114
Najnowsza wersja jest dost�pna na: http://www.w3.org/TR/REC-xml-names

C.2.Inne odno�niki

[ HTML4]
" Specyfikacja HTML 4.01", Rekomendacja W3C, D. Raggett et al., eds. , 24 grudnia 1999.
Dost�pna na: http://www.w3.org/TR/1999/REC-html401-19991224
Najnowsza wersja jest dost�pna na: http://www.w3.org/TR/html4
[SMIL20]
" Synchroniczny J�zyk Integracji Multimedi�w (SMIL 2.0)", Rekomendacja W3C, J. Ayars et al., eds., 7 sierpnia 2001.
Dost�pny na: http://www.w3.org/TR/2001/REC-smil20-20010807/
najnowsza wersja jest dost�pna na: http://www.w3.org/TR/smil20
[ SVG]
" Scalable Vector Graphics (SVG) Specyfikacja 1.0", Rekomendacja W3C, J. Ferraiolo, ed., 4 wrze�nia 2001.
Dost�pny na: http://www.w3.org/TR/2001/REC-SVG-20010904/
najnowsza wersja jest dost�pna na: http://www.w3.org/TR/SVG/
[ XHTML]
" XHTML™ 1.0: Rozszerzalny Hipertekstowy J�zyk Znacznik�w (Druga Edycja)". S. Pemberton et al., 26 stycznia 2000, poprawione i uzupe�nione 1 sierpnia 2002.
Dost�pny na: http://www.w3.org/TR/2002/REC-xhtml1-20020801
Najnowsza wersja jest dost�pna na: http://www.w3.org/TR/xhtml1
[ XHTMLMOD]
" Modularyzacja XHTML™", Rekomendacja W3C, M. Altheim et al., eds., 10 kwietnia 2001.
Dost�pny na: http://www.w3.org/TR/2001/REC-xhtml-modularization-20010410
Najnowsza wersja jest dost�pna na: http://www.w3.org/TR/xhtml-modularization
[ XHTMLSCHEMAMOD]
" Modularyzacja XHTML™ w Schemacie XML ", Projekt Roboczy W3C, D. Austin et al., eds., 3 pa�dziernika 2003, prace trwaj�.
Dost�pne na: http://www.w3.org/TR/2003/WD-xhtml-m12n-schema-20031003
Najnowsza wersja jest dost�pna na: http://www.w3.org/TR/xhtml-m12n-schema

D.Podzi�kowania

Jest to sekcja informacyjna.

Ten dokument zosta� oryginalnie zredagowany przez Teda Wugofskiego (Openwave).

Specjalne podzi�kowania dla: Mark Baker (Sun Microsystems), Wayne Carr (Intel Corporation), Warner ten Kate (Philips Electronics), Patrick Schmitz i Peter Stark (Ericsson) za ich znaczny wk�ad w rozw�j tej specyfikacji.

W czasie publikacji, uczestnikami Grupy Roboczej W3C HTML byli: