Hallo,
kurz vorweg: Ich fange gerade an, mich in XLS einzuarbeiten. Deshalb: Falls ich grundsätzlich mit meiner Lösung auf dem Holzweg bin: Sagt es mir!
Folgende Aufgabe:
Ich habe eine XML-Datei mit Knoten, die Text beinhalten. Der <text> beinhaltet 2 beliebig oft auftretene Unterknoten namens <zeile> und <liste>. Die Listen können beliebig tief eingerückt sein, was ich durch ein Attribut namens "ebene" darstelle.
Beispiel:
<text>
<zeile>Dies ist eine normale Zeile</zeile>
<liste ebene="1">Dies ist eine Listenzeile</liste>
<liste ebene="1">Dies ist eine zweite Listenzeile</liste>
<liste ebene="2">Dies ist eine eingerückte Listenzeile</liste>
<zeile>Dies ist eine noch eine normale Zeile</zeile>
</text
Wie gehe ich jetzt am Sinnvollsten vor, um daraus eine HTML-Ausgabe zu generieren?
Meine Überlegung war, dass ich dem HTML-Dokument eine CSS-Datei zuweise und in dieser Klassen für "ebene1" und "ebene2" definiere, wobei "ebene2" einfach etwas eingerück dargestellt wird:
.ebene1 {...}
.ebene2 {...}
Wie kann ich nun das class-Attribut dynamisch generieren? Ich bekomme es einfach nicht hin.
Ich habe es sinngemäß in etwa wie folgt versucht:
<xsl:variable name="meine_variable">
ebene<xsl:value-of select="liste/@ebene" />
</xsl:variable>
<div class="$meine_variable">
- <xsl:value-of select="liste" />
</div>
Aber das klappt irgendwie nicht.
Wer kann mir helfen oder sogar eine bessere Lösung vorschlagen?
Gruß, Freddy