ThomasM: XSLT

Beitrag lesen

Hallo Nikitaras,

aber ihr könnt mir auch gerne noch die vor- und nachteile des auslagerns erörtern. oder gründe nennen, warum ich vllt sogar lieber mit for-each, wie im folgenden dargestellt, durch die movies iterieren sollte bzw. warum das vllt sogar angebrachter wäre.

Bei solchen kleinen Übungen liegt die Nutzung von xsl:for-each nahe. Komplexere Strukturen sollten jedoch mit mehreren Templates verarbeitet werden.

Ich verwende xsl:for-each vorwiegend bei flachen Strukturen, wenn z. B. eine Auflistung der Form liste(eintrag+) vorliegt und quasi 1:1 in ol/ul > li verarbeitet werden soll. Ansonsten lassen sich mit XSLT 2.0 Abzählvorgänge praktikabel ohne aufwändigere Nutzung von xsl:call-template umsetzen:

<xsl:for-each select="1 to 5">
  <img src="stern.gif" alt="" />
</xsl:for-each>

Meistens ist ein Mix der verfügbaren Techniken sinnvoll, sofern der Code modular und verständlich genug bleibt. Als Beispiel sei eine etwas komplexere EPUB-Transformation genannt. Dort kommt xsl:for-each auch mal beim Ausgeben von einfachen HTML-Tabellen zum Einsatz. Dafür weitere Templates einzusetzen, hätte kaum einen Mehrwert.

Grüße,
Thomas