Mit VIO.Matrix können nicht nur klassische HTML-Webseiten erzeugt werden - auch Text- und Binärausgabeformate wie CSV, PDF, JPEG, DOC oder WML sind möglich. Ein geradezu klassischer Anwendungsfall ist die dynamische Generierung einer CSV-Datei, um diese bspw. in MS Excel weiter zu bearbeiten. Anwendungsfälle sind bspw.:
Gegenüber anderen Formaten besitzt CSV zwei hervorstechende Vorteile:
Gerade im Vergleich zu universellen Datenaustauschformaten wie XML gibt es aber auch Nachteile, von denen der schwerwiegenste gleichzeitig ein Vorteil von CSV ist: CSV ist trivial, d.h. komplexe Zusammenhänge und Abhängigkeiten lassen sich damit nicht abbilden.
Nichtsdestotrotz der Trivialität des CSV-Formates sind viele Entwickler nicht in der Lage valide, d.h. gültige CSV-Dateien, zu erzeugen. Blicken wir daher kurz auf die Formatdefinition:
Ein Beispiel soll folgende Tabelle im CSV-Format abbilden (beachten Sie die Sonderfälle):
Name | Vorname | Lieblingsessen | Bemerkung |
---|---|---|---|
Muster | Max | Nudeln mit Soße | wenn möglich "ohne Fleisch" |
Schell | Ruth | Schnitzel und Pommes | Das Schnitzel; Wiener muss: gebraten paniert werden, damit es schmeckt. |
Kodierung in CSV (mit Semikolon als Trennzeichen):
Die Erzeugung von CSV-Inhalten aus VIO.Matrix ist recht einfach: Für die CSV-Ausgabe wird ein Layout (bspw. mit dem Namen "csv") definiert. Dieses Layout enthält nun anstatt eines HTML-Seitengerüstes das CSV-Gerüst:
Wie zu sehen ist, enthält das Hauptlayout alle Datenfeldbezeichner mit einem Trennzeichen getrennt (hier "Elementname" und "RSS_Veröffentlichung am"). Nach einem Zeilenumbruch werden alle Elemente des gerade ausgewählten Ordners ausgegeben. In der Wiederholungszeile ist die Ausgabe der einzelnen Datenfelder angegeben:
Damit der Browser sofort erkennt, dass es sich hier nicht um eine HTML-Datei sondern ein CSV-File handelt, muss der Content-Type des HTTP-Response-Headers entsprechend modifiziert werden. In VIO.Matrix erledigt dies die standardmäßig enthaltene Pipeline "CSV":
Wird die betreffende Webseite gerade statisch erzeugt, sorgt VIO.Matrix damit auch automatisch dafür, dass die betreffende Datei die Dateiendung ".csv" erhält. Der MS Internet Explorer 6 und 7 sowie der Firefox öffnen - nach einer entsprechenden Rückfrage - auch gleich die mit dem Datenformat CSV verknüpfte Anwendung; in den meisten Fällen also MS Excel.