Frage eines XML-Anfängers

JanHH

Mitglied
Hallo Forumsgemeinde!

Ich wage mit Hilfe zweier Bücher gerade meine ersten Schritte in XML und XSL. Ich habe ein XML- und ein XSL-Dokument erstellt und möchte, dass beim Aufruf des XML-Dokumentes im Internet Explorer der Inhalt des Dokumentes formatiert angezeigt wird. Doch irgendwie wird der eigentliche XML-Inhalt nicht angezeigt.

Mein XML-File sieht wie folgt aus:

Code:
<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xml" href="zweitesxml.xsl"?>
<?xml-stylesheet type="text/xsl" href="zweitesxml.xsl"?>
<Kunde>
		<Nachname>Klum</Nachname>
		<Vorname>Heidi</Vorname>	
</Kunde>

mein XLS-Seite ist dieses:

Code:
<?xml version="1.0" encoding="ISO-8859-1" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3c.org/1999/XSL/Transform">
<xsl:output method="html" />
<xsl:template match="/">
	<html>
	<body>
	<font size="5">
	<xsl:text>Kunden :</xsl:text>
	<br />
		<xsl:value-of select="Nachname"/>
	<br />
		<xsl:value-of select="Vorname"/>
	</font>

	</body>
	</html>
</xsl:template>
</xsl:stylesheet>

Es wird im IE nur der Text "Kunden" angezeigt, nicht aber untereinander die Namen "Klum" und "Heidi" wie es eigentlich gewollt ist.
Was mache ich falsch

Danke für Eure Hilfe!

Viele Grüße
- Jan
 
Es ist immer besser, für jedes Element eigene templates bereitzustellen.
In Deinem Fall also statt <xsl:value-of select="Nachname"/> schreib <xsl:apply-templates/>
oder expliziet <xsl:apply-templates select="Nachname"/> und
<xsl:apply-templates select="Vorname"/>

Dann die beiden Templates für die Knoten Nachname und Vorname:
Code:
<xsl:template match="Nachname">
    <xsl:value-of select="."/>
</xsl:template>

<xsl:template match="Vorname">
    <xsl:value-of select="."/>
</xsl:template>
 
Zurück