www.wikidata.de-de.nina.az
Ein XML Prozessor ist eine Software zum Einlesen und Verarbeiten von XML Dokumenten Haufig wird auch der Begriff XML Parser synonym verwendet obwohl dieser eher ein Modul im Software Baustein XML Prozessor ist welches das Einlesen durchfuhrt Inhaltsverzeichnis 1 Allgemeines 2 XML Parser 3 Verarbeitungskomponente 4 Ausgabekomponente 5 Implementierungen 6 LiteraturAllgemeines BearbeitenEin XML Prozessor besitzt im Wesentlichen drei Komponenten den Parser er bildet das Frontend zu den zu verarbeitenden Dokumenten die Verarbeitungskomponente sie implementiert die eigentliche Geschaftslogik im Sinne einer Modelltransformation den Ausgabeprozessor er sorgt fur die Persistierung der Zieldokumente im geeigneten FormatDabei ist eigentlich nur Parser und Ausgabeprozessor XML spezifisch Die Verarbeitungskomponente kann eigentlich beliebige Modelle verarbeiten weist aber durchaus auch XML spezifische Merkmale auf zum Beispiel indem sie den Zugriff auf das sogenannte Post Schema Validation Info Set PSVI erlaubt indem XML Konstrukte in der Verarbeitungssprache konzeptualisiert sind node element entity XML Parser BearbeitenXML Parser in den Prozessoren konnen anhand zweier Kriterien unterschieden werden validierend oder nichtvalidierend Art der Schnittstelle fur den Zugriff auf das Dokument als Baum ahnlich wie DOM oder sequentiell zum Beispiel SAX Im Grunde konnen auch Parser eingesetzt werden die andere Formate einlesen oder gar Datenbanken abfragen Das ist hilfreich fur Migrationen von Altdaten nach XML Nichtvalidierende Parser kontrollieren lediglich ob das Dokument wohlgeformt ist sprich ob es den Spezifikationen des W3C entspricht Validierende Prozessoren hingegen prufen zusatzlich die Konformitat gegenuber einer DTD oder einer Schemasprache wie zum Beispiel XML Schema oder RELAX NG Verarbeitungskomponente BearbeitenDie Verarbeitungskomponente implementiert in der Regel eine eigene auf das Verarbeitungsparadigma optimierte Programmiersprache zum Beispiel DSSSL XSLT Dabei ist zu unterscheiden sequentielle Verarbeitung Man kann Regeln fur das Betreten Verlassen eines Knotens angeben In diesen Regeln wird die spezifische Verarbeitung formuliert Der Inhalt des Dokumentes steht nur so weit zur Verfugung wie es bislang eingelesen beziehungsweise verarbeitet ist baumorientierte Verarbeitung Die Verarbeitungskomponente traversiert automatisch den beziehungsweise die Dokumentbaume und konstruiert den Baum fur das Ausgabedokument Die Traversierung kann dabei auf dem Quellbaum zum Beispiel bei XSLT erfolgen oder im Zielbaum zum Beispiel bei MetaMorphosis Man spricht daher von sourcedriven beziehungsweise targetdriven Prozessoren Zielgetriebene Prozessoren sind nicht ganz so einfach zu durchdringen bieten jedoch wesentlich mehr Flexibilitat Besonders vorteilhaft in dem Ansatz ist es allerdings die Verarbeitung Transformation weitgehend unabhangig von der konkreten Syntax des Ausgabeformates zu formulieren Die Spezifika des gewunschten Ausgabeformates zum Beispiel Zeilenaufteilung Einruckungen und so weiter konnen im Ausgabeprozessor behandelt werden Damit wird es zuweilen moglich mit einer Transformation mehrere Ausgabeformate zu bedienen Dem Wesen nach handelt es sich bei XML Prozessoren also um ein ahnliches wenn auch schon vor dem MDA Hype definiertes Vorgehen wie bei der MDD bei der ebenfalls eine formal beschriebene Modelltransformation stattfindet und das Einlesen beziehungsweise Serialisieren des Modells in eigenen Prozessoren stattfindet Daher ist durchaus eine Sprachverwandtschaft zwischen XML Prozessoren und Modelltransformatoren zu erkennen Die Rolle der Metamodelle wird dabei von der DTD beziehungsweise dem XML Schema wahrgenommen Die Modellpersistierung erfolgt in XML Ausgabekomponente BearbeitenDie Ausgabekomponente serialisiert den von der Verarbeitungskomponente bereitgestellten Dokumentenbaum nach XML oder in ein anderes gewunschtes Textformat zum Beispiel TeX XML Spezifika wie Handhabung von Sonderzeichen Leerzeichenbehandlung und so weiter kann der Ausgabeprozessor ubernehmen Bei leistungsfahigen XML Prozessoren ist diese Ausgabekomponente flexibel konfigurierbar beziehungsweise programmierbar Implementierungen BearbeitenXSLT MetaMorphosis JADELiteratur BearbeitenMeike Klettke Holger Meyer XML amp Datenbanken Konzepte Sprachen und Systeme 2003 ISBN 3 89864 148 1 Abgerufen von https de wikipedia org w index php title XML Prozessor amp oldid 194770270