Ich habe eine sehr einfache XML Struktur die ich mit XSLT transformieren möchte. Mir ist nicht klar, wie ich nur den ersten Block lesen kann, um einen "Eeader" zu generieren.
Formuliere zwei entsprechende Templates unter Verwendung der bedingten XPath-Syntax. Hier mal der Einstieg:
<xsl:template match="/">
<html>
<head>
<title>Tabellentest</title>
</head>
<body>
<h1>Testtabelle</h1>
<table border="1">
<xsl:apply-templates />
</table>
</body>
</html>
</xsl:template>
Und hier die entsprechenden Templates:
Template für den ersten Datensatz, das einen Tabellenkopf erzeugt:
<xsl:template match="row[@no='1']">
<thead>
<xsl:for-each select="child::*">
<th><xsl:value-of select="name()" /></th>
</xsl:for-each>
</thead>
</xsl:template>
Template für alle weiteren, das den Tabellenkörper erzeugt:
<xsl:template match="row[@no>'1']">
<tbody>
<tr>
<xsl:for-each select="child::*">
<td><xsl:value-of select="." /></td>
</xsl:for-each>
</tr>
</tbody>
</xsl:template>
Ich kenne die Tag-Names unterhalb des row-Tags nicht.
Dafür gibt es in XPath eine Funktion: name(), wie sie verwendet wird, kannst du an meinem kleinen Beispiel sehen.
Siechfred
--
Ein Selbständiger ist jemand, der bereit ist, 16 Stunden am Tag zu arbeiten, nur um nicht 8 Stunden für einen Anderen arbeiten zu müssen.
Ein Selbständiger ist jemand, der bereit ist, 16 Stunden am Tag zu arbeiten, nur um nicht 8 Stunden für einen Anderen arbeiten zu müssen.