1. Einführung

1.1 Begriff

SAX steht für "Simple API for XML". API wiederum heißt "Application Programming Interface" und repräsentiert eine Sammlung von Schnittstellen und Klassen, wie sie zumeist bei objektbasierten Programmiersprachen Verwendung finden. Frei übersetzt heißt SAX also "Einfache Anwendungsprogrammierschnittstelle für XML".

1.2 Funktion

SAX stellt eine Schnittstelle für viele verschiede XML Parser (z.B. Xerces (Java), MSXML (COM), Ælfred (Java)) dar. Diese Schnittstelle ist aber auch für andere Parser für Programmiersprachen wie C, C++, Perl und Delphi verfügbar.
Da SAX ursprünglich für Java konzeptiert wurde und heute auch auf dieser Ebene weiterentwickelt wird, wird hier nur auf die Java-Schnittstellen eingegangen.

1.3 Parser

Parser sind wichtige Hilfsmittel, um einer Anwendung XML-Daten verständlich zu machen. Parser lesen die XML-Dokumente, erkennen die Struktur und geben gefundene Informationen an die Anwendung weiter, die dann diese Daten interpretieren kann.
Parser können weiterhin erkennen, ob ein Dokument wohlgeformt ist und die meisten können Dokumente auch auf ihre Gültigkeit prüfen.

1.4 Verarbeitungsmodell

Das besondere Merkmal von SAX ist, dass es ein ereignisorientiertes Push-Modell verwendet. Das heißt, schon während des Parsens werden gefundene Informationen an die Anwendung weitergegeben.
Diesem Modell gegenüber steht das baumbasierte Pull-Modell, bei dem alle Informationen in Form eines Baumes im Speicher abgelegt werden und dieser dann der Anwendung zur Verfügung gestellt wird. Eine Schnittstelle, die dieses Modell nutzt, ist zum Beispiel DOM ("Document Objekt Model").

top | SAX | Inhalt | created 2004 by Sascha Dienelt