Hi Thomas,
danke für Deine Hilfe.
Ja ich kann mich erinnern, dass Du mal copy-of empfohlen hast, statt value-of. Ich glaub, durch die ganze Probiererei ist mir das wieder entfallen.
Ich füge jetzt mal die lauffähige xsl ein. Immerhin werden mir die html-Tags jetzt in der transformierten xml, sprich in der html angezeigt. Wie aber wende ich darauf die templates an?
Und was bedeutet das child::node()? Denn soweit geht das ja auch ohne.
Ach ja, manche Formatierschritte, die mit CSS gemacht werden sollten sind nur dämliche Beispiele, weil das Problem eigentlich bei einer fo-Transformation besteht, die ist nur zu komplex, für das kleine Problem.
Also, hier der nächste Anlauf und vielen Dank schonmal und nochmal :-) :
<?xml version = '1.0' encoding = 'utf-8' standalone = 'no'?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" >
<xsl:template match="/">
<html>
<head>
<title>Foobar</title>
</head>
<body>
<xsl:for-each select="/root/toc/top">
<!-- hier ist eigentlich noch ein xsl:sort -->
<xsl:value-of select="ueberschrift" /><br />
</xsl:for-each>
<hr noshade="noshade" />
<xsl:for-each select="/root/toc/top">
<!-- hier ist eigentlich noch ein xsl:sort -->
<!-- Das mache ich hier so, damit die Reihenfolge der Daten mit dem TOC
korreliert-->
<xsl:variable name="id" select="@id" />
<p>
<!-- <xsl:value-of select="/root/data/top[@id=$id]" /> -->
<xsl:copy-of select="/root/data/top[@id=$id]" />
<!-- offensichtlich wird das match-div-template garnicht erreicht, welches unten definiert ist,
muss ich hier apply-templates einbauen und wenn ja, wie? -->
</p>
</xsl:for-each>
</body>
</html>
</xsl:template>
<xsl:template match="div">
<span style="border:1px solid red"><xsl:value-of select="."/></span>
</xsl:template>
</xsl:stylesheet>