XML zu XHTML mit XSLT, mehrer Tags

Zack

cookies vader
Hallo,
ich habe folgenden XML-Baum (nur Ausschnitt):
XML:
<musik>
	<album>
		<titel>Samain Night </titel>
		<titel>Ancient Pipes </titel>
		<interpret>Loreena McKennitt</interpret>
		<preis waehrung="Euro">19.95 </preis>
	</album>
</musik>
<musik>
	<album>
		<titel>Astronomy Domine</titel>
		<titel>Candy And A Currant Bun</titel>
		<interpret>Pink Floyd</interpret>
		<preis waehrung="Euro">6.95</preis>
	</album>
</musik>
und soll nur die titel mittels XSLT in XHTML ausgeben. Also habe ich folgendes XSLT-template:
XML:
<ol>
	<xsl:for-each select="musik/album">
		<li><xsl:value-of select="titel"/></li>
		<li><xsl:value-of select="titel"/></li>
	</xsl:for-each>
</ol>
Das Problem ist das immer nur das erste titel Tag beachtet wird. Die Ausgabe:
HTML:
<ol>
	<li>Samain Night </li>
	<li>Samain Night </li>
	<li>Astronomy Domine</li>
	<li>Astronomy Domine</li>
</ol>
Wie verweise ich auf den zweiten Tag?
 
Zuletzt bearbeitet von einem Moderator:
Hallo,

zunächst mal da ich dein ganzes XML Dokument nicht kenne: Den Ausschnitt wo du gezeigt hast, dort habe ich mal angenommen das <musik> das Wurzelelement ist. Mein XML Code sieht deswegen so aus:

XML:
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="musik.xsl"?>
<musik>
    <album>
        <titel>Samain Night </titel>
        <titel>Ancient Pipes </titel>
        <interpret>Loreena McKennitt</interpret>
        <preis waehrung="Euro">19.95 </preis>
    </album>
    <album>
        <titel>Astronomy Domine</titel>
        <titel>Candy And A Currant Bun</titel>
        <interpret>Pink Floyd</interpret>
        <preis waehrung="Euro">6.95</preis>
    </album>
</musik>

Das dazugehörige XSLT Stylesheet so:
Code:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format">
<xsl:template match="musik">
	<ol>
		<xsl:for-each select="album/titel">
			<li><xsl:value-of select="."/></li>
		</xsl:for-each>
	</ol>
</xsl:template>
</xsl:stylesheet>

Folgende Ausgabe bekomme ich:
Code:
Samain Night 
Ancient Pipes 
Astronomy Domine
Candy And A Currant Bun

Ich bin mir nicht sicher ob du dir das so vorgestellt hast weil ich ja die XML Datei einwenig abgeändert habe. Wenn du die volle Datei zeichen würdest könnte ich das Stylesheet vllt daran anpassen! :)
 
Zurück