Hallo,
seit kurzer Zeit befasse ich mich mit XML. Ich mache XSL Transformationen mit Java und habe dafür eine XML Datei und ein XSL Stylesheet. Beide Dateien habe ich aus Testzwecken aus einem Buch herausgeschrieben (ja von einem Buch Quellcode herausgeschrieben
). Die Transformation klappt auch, nur das was rauskommt, eine HTML Datei ist nicht ganz korrekt.
Es wird eine Tabelle erstellt in der die Planeten mit Daten drinstehen. Bloß die Einheiten, die in der XML Datei als Attribute definiert sind, fehlen. z.B. in der Tabellenspalte Tag sollte hinter dem Wer noch "Tage" stehen!
Ich habe mal noch ein Bild angefügt sodass man sich da besser ansehen kann!
Meine XML Datei:
XSL Datei:
seit kurzer Zeit befasse ich mich mit XML. Ich mache XSL Transformationen mit Java und habe dafür eine XML Datei und ein XSL Stylesheet. Beide Dateien habe ich aus Testzwecken aus einem Buch herausgeschrieben (ja von einem Buch Quellcode herausgeschrieben

Es wird eine Tabelle erstellt in der die Planeten mit Daten drinstehen. Bloß die Einheiten, die in der XML Datei als Attribute definiert sind, fehlen. z.B. in der Tabellenspalte Tag sollte hinter dem Wer noch "Tage" stehen!
Ich habe mal noch ein Bild angefügt sodass man sich da besser ansehen kann!
Meine XML Datei:
Code:
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xml" href="Planets2XHTML.xsl"?>
<PLANETS>
<PLANET>
<NAME>Merkur</NAME>
<MASS UNITS="(Erde = 1)">0,0553</MASS>
<DAY UNITS="Tage">58,65</DAY>
<RADIUS UNITS="Kilometer">2440</RADIUS>
<DENSITY UNITS="(Erde = 1)">0,983</DENSITY>
<DISTANCE UNITS="Millionen Km">69,8</DISTANCE>
</PLANET>
<PLANET>
<NAME>Venus</NAME>
<MASS UNITS="(Erde = 1)">0,815</MASS>
<DAY UNITS="Tage">116,75</DAY>
<RADIUS UNITS="Kilometer">5980</RADIUS>
<DENSITY UNITS="(Erde = 1)">0,943</DENSITY>
<DISTANCE UNITS="Millionen Km">107,5</DISTANCE>
</PLANET>
<PLANET>
<NAME>Erde</NAME>
<MASS UNITS="(Erde = 1)">1</MASS>
<DAY UNITS="Tage">1</DAY>
<RADIUS UNITS="Kilometer">3391</RADIUS>
<DENSITY UNITS="(Erde = 1)">1</DENSITY>
<DISTANCE UNITS="Millionen Km">206,6</DISTANCE>
</PLANET>
</PLANETS>
XSL Datei:
Code:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output indent="yes" method="xml"/>
<xsl:template match="/PLANETS">
<HTML>
<HEAD>
<TITLE>
Die Planetentabelle
</TITLE>
</HEAD>
<BODY>
<H1>
Die Planetentabelle
</H1>
<TABLE BORDER="2">
<TR>
<TD>Name</TD>
<TD>Masse</TD>
<TD>Radius</TD>
<TD>Tag</TD>
</TR>
<xsl:apply-templates/>
</TABLE>
</BODY>
</HTML>
</xsl:template>
<xsl:template match="PLANET">
<TR>
<TD><xsl:value-of select="NAME"/></TD>
<TD><xsl:value-of select="MASS"/></TD>
<TD><xsl:value-of select="RADIUS"/></TD>
<TD><xsl:value-of select="DAY"/></TD>
</TR>
</xsl:template>
<xsl:template match="MASS">
<xsl:value-of select="."/>
<xsl:text> </xsl:text>
<xsl:value-of select="@UNITS"/>
</xsl:template>
<xsl:template match="RADIUS">
<xsl:value-of select="."/>
<xsl:text> </xsl:text>
<xsl:value-of select="@UNITS"/>
</xsl:template>
<xsl:template match="DAY">
<xsl:value-of select="."/>
<xsl:text> </xsl:text>
<xsl:value-of select="@UNITS"/>
</xsl:template>
</xsl:stylesheet>