Hallo,
ich bin gerade dabei mich das erste mal mit xml und xsl zu beschäftigen. Leider bin ich im Augenblick ein bisschen ratlos und ich denke, dass ich die Logik falsch interpretiere.
ich habe folgende Dateien:
und die xsl:
Ich glaube es ist ersichtlich was ich erreichen möchte. Leider ist es jetzt so, dass er die oberen Absatz Text alle aneinander klatscht und die unteren Unterkapitel gar nicht darstellt.
Falls es noch andere Mäkel gibt, wie die Header Informationen oÄ bin ich für jeden Tipp dankbar!
mfg
Werner02
ich bin gerade dabei mich das erste mal mit xml und xsl zu beschäftigen. Leider bin ich im Augenblick ein bisschen ratlos und ich denke, dass ich die Logik falsch interpretiere.
ich habe folgende Dateien:
Code:
<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?> <?xml-stylesheet type="text/xsl" href="./meine.xsl"?> <Handbuch> <Kapitel NR="1" Ueberschrift="Kapitel1"> <Textkoerper> <inhalt> absatz1 </inhalt> </Textkoerper> <Textkoerper> <inhalt> absatz2 </inhalt> </Textkoerper> <Textkoerper> <inhalt> absatz3 </inhalt> </Textkoerper> <Textkoerper> <inhalt> absatz4 </inhalt> </Textkoerper> <Textkoerper> <inhalt> absatz5 </inhalt> </Textkoerper> </Kapitel> <Kapitel NR="2" Ueberschrift="Kapitel2"> </Kapitel> <Kapitel NR="3" Ueberschrift="Kapitel3"> <Kapitel NR="3.1" Ueberschrift="Kapitel 3.1"> </Kapitel> <Kapitel NR="3.2" Ueberschrift="Kapitel 3.2"> </Kapitel> <Kapitel NR="3.3" Ueberschrift="Kapitel 3.3"> </Kapitel> <Kapitel NR="3.4" Ueberschrift="Kapitel 3.4"> </Kapitel> <Kapitel NR="3.5" Ueberschrift="Kapitel 3.5"> </Kapitel> </Kapitel> </Handbuch>
Code:
<?xml version="1.0" encoding="ISO-8859-1"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="/"> <h1>Das ist der erste Versuch für das Template</h1> <xsl:apply-templates/> </xsl:template> <xsl:template match="Handbuch"> <xsl:for-each select="Kapitel"> <h2> <xsl:value-of select="@NR"/>. <xsl:value-of select="@Ueberschrift"/> </h2> <xsl:apply-templates/> </xsl:for-each> </xsl:template> <xsl:template match="Kapitel"> <xsl:for-each select="Textkoerper"> <p> <xsl:value-of select="inhalt"/> </p> </xsl:for-each> </xsl:template> </xsl:stylesheet>
Falls es noch andere Mäkel gibt, wie die Header Informationen oÄ bin ich für jeden Tipp dankbar!
mfg
Werner02
Comment