Zum Inhalt springen

Streaming API for XML

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 22. Februar 2006 um 23:55 Uhr durch Jpp (Diskussion | Beiträge) (Ursprünge: Link präzisiert). Sie kann sich erheblich von der aktuellen Version unterscheiden.
Falsche Eingabe!
Bitte ersetze {{QS|Begründung --~~~~}} durch {{subst:QS|Begründung --~~~~}}
b|{{subst:!}}2={{{1}}}}} auf den Seiten der Qualitätssicherung eingetragen. Bitte hilf mit, ihn zu verbessern, und beteilige dich bitte an der [[Wikipedia:Qualitätssicherung/{{subst:LOCALDAY}}. {{subst:LOCALMONTHNAME}} {{subst:LOCALYEAR}}{{subst:#ifeq:a|b|{{subst:!}}2={{{1}}}}}#Streaming API for XML|Diskussion]]!

Folgendes muss noch verbessert werden:

Übersetzungsprojekt, bei dem der Autor anscheinend die Lust verloren hat. -- srb  18:54, 22. Feb 2006 (CET)


Streaming API for XML (StAX) ist ein Application Programming Interface (API), um XML-Dateien aus Java zu verarbeiten.

Traditionellerwweise sind XML-APIs:

  • baumbasiert – das gesamte Dokument wird als Baumstruktur in den Speicher gelesen und kann von dort direkt zugegriffen werden.
  • ereignisbasiert – die Anwendung bekommt ein Ereignis, wenn neue Entities im Dokument entdeckt werden.

Beide Varianten haben Vorteile: die erste (z. B.: DOM) erlaubt wahlfreien Zugriff auf das Dokument, die zweite (z. B.: SAX) benötigt weniger Speicher und ist daher üblicherweise viel schneller.

Diese zwei Verfahren sind das genaue Gegenteil voneinander. Eine baumbasierte API erlaubt unbegrenzten, direkten Zugriff und Änderung, während eine ereignisbasierte API ein einmaliger Durchlauf durch das Quelldokument ist.

StAX wurde als ein Mittelweg zwischen diesen beiden Gegensätzen entworfen. In der StAX-Metapher ist der programmatische Einstieg ein Cursor, der eine Stelle im Dokument repräsentiert. Die Anwendung bewegt den Cursor vorwärts, sie holt also die benötigte Information genau dann vom Parser, wenn sie benötigt wird. Dies unterscheidet sich von einer ereignisbasierten API, wie SAX, die die Daten aktiv in die Anwendung schickt und somit die Anwendung zur Verwaltung von Zustandsinformationen zwischen Ereignissen zwingt, um darin die aktuelle Position im Dokument festzuhalten.

Ursprünge

StAX hat seine Wurzeln in einer ganzen Reihe von ereignisgetriebenen Programmierschnittstellen, in erster Linie „XMLPULL“, deren Autoren (Stefan Haustein und Aleksandr Slominski) unter anderem mit BEA, Oracle, Sun Microsystems, Breeze Factor und James Clark zusammen arbeiteten.

Siehe auch