Die XSLT-Dateien, die der Server liefert, binden Javascript- und CSS-Dateien mit Ausnahme der mehrfach benutzten Datei common.js
(Quelltext) direkt ein, statt auf sie zu verweisen.
Die Quell-Dateien durchlaufen dazu zwei Transformationen. Die erste Transformation styleincl_step_1.xslt
(Text) ersetzt Verweise auf Javascript- oder CSS-Dateien durch XInclude-Elemente.
Aus den CSS- und Javascript-Dateien entfernen einfache Perl-Skripte Kommentare und Leerzeichen. Die zweite Transformation styleincl_step_2.xslt
(Text) sieht an Stelle der XInclude-Elemente den Inhalt der eingebundenen Dateien (ohne Kommentare und mit wenigen Leerzeichen). Sie entfernt Kommentare und unnötige Leerzeichen aus dem XSLT-Dokument und kann auch Platzhalter in den eingebundenen CSS-Dateien ersetzen.
CSS-Dateien können Verweise auf Bilddateien in der Form url(
enthalten. Der relative Pfad RELPATH
)RELPATH
bezieht sich auf die CSS-Datei. Wenn die CSS-Datei mittels XInclude in eine XSLT-Datei eingebunden wird, bezieht sich der Pfad auf die URL des Dokuments, auf das die XSLT-Transformation angewendet wird. Wenn aus CSS-Dateien Kommentare und Leerzeichen entfernt werden, dann wird auch vor jedem relativen Bild-Pfad der Platzhalter ${imageprefix}
eingesetzt. Die erste Transformation styleincl_step_1.xslt
(Text) kennzeichnet die Elemente, die ein XInclude-Element mit Verweis auf eine CSS-Datei enthalten (s. transformation_attributes.rng
). Die zweite Transformation kann die Platzhalter in geeigneter Weise behandeln. Hier genügt es, die Platzhalter durch ein festes Pfad-Präfix zu ersetzen.
Sowohl die Quell-Dateien als auch die XSLT-Dokumente, die der Server liefert, enthalten keinen Text in natürlicher Sprache. Die Quell-Dateien enthalten Platzhalter (s. localization.rng
), die Server-Dokumente XSLT-Elemente, die im Browser der Surferin den richtigen Text einsetzen.
Die Transformation styleincl_step_1.xslt
(Text) ersetzt die Platzhalter durch XSLT-Elemente.
Die Quell-Dateien benutzen lange „sprechende” Schlüssel für die Texte, die Server-Dokumente dagegen kurze Schlüssel. Die Transformation localization_idlist.xslt
(Text) erstellt aus der (deutschsprachigen) Lokalisierungsdatei local.xml.de
eine Liste der Schlüssel, das Perl-Programm shortids.pl
(Quelltext) ordnet den langen Schlüsseln kurze Schlüssel zu (Format der Ausgabe s. hash.rng
), und styleincl_step_1.xslt
(Text) nutzt dessen Ausgabe.
Die Transformation localization_shortids.xslt
(Text) erzeugt aus Quelldatei local.xml.de
die Datei local/local.xml.de
im Server-Verzeichnis. Auch diese Transformation nutzt die Ausgabe des Programm shortids.pl
(Quelltext), um die langen Schlüssel durch kurze Schlüssel zu ersetzen.