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

Black Friday: Vorsicht vor schädlichen QR-Codes

Bösartige QR-Codes, die per E-Mail versendet werden, eignen sich sehr gut, um Spam-Filter zu umgehen.

2 Tagen ago

Black Friday: Zahl der ominösen Shopping-Websites steigt

Unsichere Websites und Phishing-Mails in Verbindung mit Black Friday können kauffreudigen Konsumenten zum Verhängnis werden.

2 Tagen ago

SmokeBuster bekämpft SmokeLoader

Malware SmokeLoader wird weiterhin von Bedrohungsakteuren genutzt, um Payloads über neue C2-Infrastrukturen zu verbreiten.

3 Tagen ago

Taugen Kryptowährungen als Unterstützer der Energiewende?

Bankhaus Metzler und Telekom-Tochter MMS testen, inwieweit Bitcoin-Miner das deutsche Stromnetz stabilisieren könnten.

3 Tagen ago

Supercomputer-Ranking: El Capitan überholt Frontier und Aurora

Mit 1,7 Exaflops ist El Capitan nun der dritte Exascale-Supercomputer weltweit. Deutschland stellt erneut den…

3 Tagen ago

Ionos führt neue AMD-Prozessoren ein

Der deutsche Hyperscaler erweitert sein Server-Portfolio um vier Angebote mit den neuen AMD EPYC 4004…

3 Tagen ago