„Streaming Transformations for XML“ – Versionsunterschied
[ungesichtete Version] | [gesichtete Version] |
Keine Bearbeitungszusammenfassung |
YMS (Diskussion | Beiträge) K Rückgängig (daneben Formatkleinigkeit) - keine Namensgleichheit -> keine BKL |
||
Zeile 1: | Zeile 1: | ||
{{Dieser Artikel| beschäfitgt sich mit der XML-Transformationssprache STX, nicht mit der XML-API [[Streaming API for XML|StAX]].}} |
|||
'''Streaming Transformations for XML''', kurz '''STX''', ist eine Programmiersprache zur Transformation von sehr großen XML-Dateien. |
'''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 Performanz von [[SAX]], insbesondere dem niedrigen Speicherbedarf von SAX-Transformationen. |
STX verbindet das Abstraktionslevel von [[XSLT]] mit der Performanz von [[SAX]], insbesondere dem niedrigen Speicherbedarf von SAX-Transformationen. |
||
== Konzept == |
== Konzept == |
||
Zeile 13: | Zeile 9: | ||
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 erlaubter Prädikate ist ebenfalls deutlich kleiner. 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. |
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 erlaubter Prädikate ist ebenfalls deutlich kleiner. 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 == |
== Implementationen == |
||
Zeile 20: | Zeile 15: | ||
* [http://www.gingerall.org/stx.html XML::STX] - Implementierung in [[Perl (Programmiersprache)|Perl]]. |
* [http://www.gingerall.org/stx.html XML::STX] - Implementierung in [[Perl (Programmiersprache)|Perl]]. |
||
== |
== Weblinks == |
||
* [http://stx.sourceforge.net/ STX home page] - in Englisch |
* [http://stx.sourceforge.net/ STX home page] - in Englisch |
||
* [http://www.xml.com/pub/a/2003/02/26/stx.html Eine Einführung in STX] - in Englisch |
* [http://www.xml.com/pub/a/2003/02/26/stx.html Eine Einführung in STX] - in Englisch |
Version vom 20. August 2008, 02:51 Uhr
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 Performanz 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 erlaubter Prädikate ist ebenfalls deutlich kleiner. 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
Weblinks
- STX home page - in Englisch
- Eine Einführung in STX - in Englisch