Streaming Transformations for XML

Programmiersprache
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 1. April 2013 um 03:00 Uhr durch KLBot2 (Diskussion | Beiträge) (Bot: 2 Interwiki-Link(s) nach Wikidata (d:Q476244) migriert). Sie kann sich erheblich von der aktuellen Version unterscheiden.

Streaming Transformations for XML, kurz STX, ist eine Programmiersprache zur Transformation von sehr großen XML-Dateien.

STX verbindet das Abstraktionslevel von XSLT mit der Performance von SAX, insbesondere dem niedrigen Speicherbedarf von SAX-Transformationen.

Konzept

Die Syntax von STX stimmt weitgehend mit der Syntax von XSLT bzw. XSLT 2 überein. Der wichtigste Unterschied zu XSLT ist, dass anstelle von XPath die eigene Abfragesprache STXPath benutzt wird.

STXPath ist speziell für die effiziente Verarbeitung sehr großer Dateien ausgelegt, und daher weniger ausdrucksstark als XPath. Die XPath-Achsen, die auf Geschwister- und Kindknoten zugreifen, sind in STXPath unbekannt. Die Menge zugelassener Prädikate ist ebenfalls deutlich kleiner als in XPath. Um trotzdem komplexe Transformationen mit STX ausdrücken zu können, ist es erlaubt, den Inhalt von Variablen zu ändern (im Gegensatz zu XSLT) und über diese Variablen den aktuellen Zustand der Transformation auszudrücken.

Implementationen