Besseres Parsen von XML-Dokumenten in .NET

Parser, die sich darum kümmern, XML-Dokumente in Plattform-spezifische Objekte zu übersetzen, gibt es traditionellerweise in zwei Varianten: Parser, die eine Baumstruktur nutzen (Tree-based Parser), und solche, die Ereignis-gesteuert sind.

Das .NET Framework verbessert dieses Modell mit der Einführung von XML-Readern, die einen praktischeren „Pull“-Ansatz verfolgen, der nur die interessierenden Daten liefert, im Gegensatz zu dem eher unpraktischen „Push“-Ansatz bisheriger Parser.

Wir wollen zuerst einen Blick auf die grundlegende Struktur traditioneller Parser werfen und dann erläutern, warum der Ansatz von .NET einen Schritt vorwärts bedeutet.

Tree-based Parser

Ein Tree-based Parser liest den gesamten Inhalt eines XML-Dokuments und erstellt im Speicher ein Objekt, das dieses Dokument repräsentiert. Üblicherweise wird das Objekt auf einer Win32-Plattform eine Instanz einer COM-Komponente sein und auf Nicht-Windows-Plattformen eine Java-Klasse. Der Prototyp für ein solches Objekt richtet sich nach den DOM (Document Object Model) Standards Level 1 und 2 des W3C.

Ereignis-gesteuerte Parser

Ein Ereignis-gesteuerter Parser geht nach einem vollständig anderen Prinzip vor und verfolgt andere Zwecke. Ereignis-gesteuerte Parser denken nicht einmal daran, im Speicher ein Abbild des Quelldokuments zu erstellen. Sie parsen das Dokument einfach der Reihe nach und melden den Client-Anwendungen jeden Tag, auf den sie dabei stoßen. Was dann passiert, liegt allein in der Zuständigkeit der Client-Anwendung. Ereignis-gesteuerte Parser speichern keine Informationen zwischen und belegen damit beneidenswert wenig Speicher. Der De-facto-Standard für Ereignis-gesteuerte Parser ist SAX (Simple API for XML).

Page: 1 2 3

ZDNet.de Redaktion

Recent Posts

Studie: Ein Drittel aller E-Mails an Unternehmen sind unerwünscht

Der Cybersecurity Report von Hornetsecurity stuft 2,3 Prozent der Inhalte gar als bösartig ein. Die…

3 Tagen ago

HubPhish: Phishing-Kampagne zielt auf europäische Unternehmen

Die Hintermänner haben es auf Zugangsdaten zu Microsoft Azure abgesehen. Die Kampagne ist bis mindestens…

4 Tagen ago

1. Januar 2025: Umstieg auf E-Rechnung im B2B-Geschäftsverkehr

Cloud-Plattform für elektronische Beschaffungsprozesse mit automatisierter Abwicklung elektronischer Rechnungen.

4 Tagen ago

Google schließt schwerwiegende Sicherheitslücken in Chrome 131

Mindestens eine Schwachstelle erlaubt eine Remotecodeausführung. Dem Entdecker zahlt Google eine besonders hohe Belohnung von…

4 Tagen ago

Erreichbarkeit im Weihnachtsurlaub weiterhin hoch

Nur rund die Hälfte schaltet während der Feiertage komplett vom Job ab. Die anderen sind…

5 Tagen ago

Hacker missbrauchen Google Calendar zum Angriff auf Postfächer

Security-Experten von Check Point sind einer neuen Angriffsart auf die Spur gekommen, die E-Mail-Schutzmaßnahmen umgehen…

6 Tagen ago