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

Microsoft nennt weitere Details zu kostenpflichtigen Patches für Windows 10

Erstmals liegen Preise für Verbraucher vor. Sie zahlen weniger als Geschäftskunden. Dafür beschränkt Microsoft den…

4 Stunden ago

Microsoft verschiebt erneut Copilot Recall

Die Entwickler arbeiten noch an weiteren „Verfeinerungen“. Windows Insider erhalten nun wohl eine erste Vorschau…

22 Stunden ago

GenKI im Job: Mitarbeitende schaffen Tatsachen

Laut Bitkom-Umfrage werden in jedem dritten Unternehmen in Deutschland private KI-Zugänge genutzt. Tendenz steigend.

1 Tag ago

97 Prozent der Großunternehmen melden Cyber-Vorfälle

2023 erlitten neun von zehn Unternehmen in der DACH-Region Umsatzverluste und Kurseinbrüche in Folge von…

1 Tag ago

„Pacific Rim“-Report: riesiges, gegnerisches Angriffs-Ökosystem

Der Report „Pacific Rim“ von Sophos beschreibt Katz-und-Maus-Spiel aus Angriffs- und Verteidigungsoperationen mit staatlich unterstützten…

1 Tag ago

DeepL setzt erstmals auf NVIDIA DGX SuperPOD mit DGX GB200-Systemen

NVIDIA DGX SuperPOD soll voraussichtlich Mitte 2025 in Betrieb genommen und für Forschungsberechnungen genutzt werden.

1 Tag ago