02.06.2013 Aufrufe

Download - IT-Designers GmbH

Download - IT-Designers GmbH

Download - IT-Designers GmbH

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

4.6.3 Deferred Parsing<br />

S TEINBEIS-TRANSFERZENTRUM<br />

- 4. XML Parser -<br />

Deferred Parsing bezeichnet das verzögerte (aufgeschobene) Parsen des XML<br />

Dokuments. Dabei wird vom XML Dokument ein Baum aufgebaut, jedoch wird nur<br />

der jeweils benötigte Teil geparst. Es ist praktisch identisch mit der Vorgehensweise<br />

bei SAXDOMIX. Das Ziel dieser Ansätze ist eine universellere Baumschnittstelle zu<br />

schaffen, die ein einfaches Bearbeiten auch größerer XML Dokumente ermöglicht.<br />

Beim Xerces Parser wird es bei der nächsten Version möglich sein DOM in einem<br />

"deferred" Modus zu betreiben. Dabei wird der Baum nicht vollständig aufgebaut,<br />

sondern die entsprechenden Teile erst bei Bedarf geparst. Jedoch ist dies noch in<br />

der Entwicklung und wenig dokumentiert.<br />

Weitere Informationen zu Xerces sind zu finden unter der Webadresse von Apache:<br />

http://xml.apache.org/xerces2-j/.<br />

4.6.4 Pull Parsing<br />

Vom Ziel her ist das sogenannte Pull Parsing vergleichbar mit dem Deferred Parsing:<br />

es soll nur das geparst werden, was wirklich notwendig ist. Der Begriff Pull Parsing<br />

rührt daher, dass der Parser "gezogen" (pull) werden muss, um etwas zu tun. Bei<br />

SAX startet man den Parser, der dann mit einem Event sagt, was er geparst hat.<br />

Man könnte auch sagen, man "push"t den Parser, der die komplette Kontrolle erhält<br />

und sich bei der Applikation über ein Event meldet. Im Gegensatz dazu sagt man<br />

dem Pull Parser, was man als nächstes gern haben möchte. Der Zwischenbereich<br />

kann dann vom Parser übersprungen werden. Während man mit einem SAX Parser<br />

zwar den Rest eines Dokumentes ungeparst lassen kann, wenn man sein Ergebnis<br />

gefunden hat, kann man mit einem Pull Parser auch Teilbäume zwischendrin<br />

überspringen, wenn man weiß, dass darin das gesuchte Ergebnis garantiert nicht zu<br />

finden ist.<br />

Beim Pull Parser XPP gibt es die Möglichkeit einen Baum des XML Dokumentes<br />

aufzubauen. Dabei wird ein spezielle Schnittstelle des XPP verwendet, die nicht zu<br />

DOM kompatibel ist. Anstatt der Verwendung von newNode() bei der<br />

XmlPullParserFactory wird newPullNode() verwendet. Dadurch wird der<br />

Aufbau des Baumes verzögert und erfolgt erst bei Bedarf.<br />

Weitere Informationen zu XPP und dem Pull-Parsing sind zu finden unter der<br />

Webadresse: http://www.extreme.indiana.edu/xgws/xsoap/xpp/.<br />

S OFTWARETECHNIK Einführung in XML © Prof. J. Goll<br />

- 44 -

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!