30.12.2013 Aufrufe

Skript - Praktische Informatik / Datenbanken - Universität Kassel

Skript - Praktische Informatik / Datenbanken - Universität Kassel

Skript - Praktische Informatik / Datenbanken - Universität Kassel

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

212<br />

Einführung in XML<br />

start document<br />

start element: doc<br />

start element: para<br />

characters: Hello, world!<br />

end element: para<br />

end element: doc<br />

end document<br />

Zur Implementierung der Ereignismethoden ist jeweils ein sog. Handler<br />

zu implementieren. Ein Handler ist eine Menge von Callbacks, die der<br />

SAX-Parser bei dem Eintritt von bestimmten Ereignissen aufruft.<br />

Der SAX-2.0-Standard definiert vier verschiedene Handler-Interfaces:<br />

ContentHandler, ErrorHandler (Fehlerbehandlung), DTDHandler<br />

(Bearbeitung von DTDs) und EntitiyResolver (Auflösung von externen<br />

Entities). Wir beschränken uns hier auf die beiden wichtigeren Handler:<br />

ContentHandler und ErrorHandler.<br />

In der Regel entwickelt man eine Klasse, die eine Methode aus diesen<br />

Handler-Interfaces implementiert nach dem Muster:<br />

class MyContentHandler implements ContentHandler {...}<br />

Man registriert dann diese Handler-Implementierung bei dem SAX-Parser<br />

mit den Methoden setContentHandler(), setErrorHandler() usw.<br />

und erreicht damit, daß die implementierten Methoden beim Eintritt von<br />

bestimmten Ereignissen vom SAXParser aufgerufen werden.<br />

Das Verwenden eines SAX-Parsers geschieht in der Regel nach dem<br />

folgenden Muster:<br />

// Implementieren der Handler-Klassen (Content, Error etc.)<br />

class MyContentHandler implements ContentHandler {...}<br />

...<br />

// Erzeugen des SAX-Parsers<br />

XMLReader xr = new SAXParser();<br />

// Erzeugen des ContentHandlers<br />

MyContentHandler conHandler = new MyContentHandler();<br />

// Erzeugen des ErrorHandlers<br />

MyErrorHandler errHandler = new MyErrorHandler();

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!