Ich möchte gerne aus XML Daten einen XHTML Report erstellen.
Die XML-Attribute sollen den Kopf des Reports stellen; und alles soll in einem Rahmen sein.
Ich habs halbwegs hinbekommen, doch treten dabei leider unerwünschte Absätze auf. (Zur Verdeutlichung am besten das XHTML Dokument aus dem unten angegebenen XML Dokument und dem zugehörigen Stylesheet erzeugen lassen)
Wie krieg ich diesen Absatz zwischen Lieferant und EntladeBediener weg ?
Hier mein XML Dokument :
<?xml version="1.0"?>
<Protokoll>
<Lieferant Name="xxx" Strecke="000" Kosten="yyy"/>
<Charge ChargeNr="111" EntladeBediener="aaa" Dauer="8 Stunden" WarentraegerNr="78">
<Artikel_n>
<Artikel id="999" ArtikelNrTxt="00000" Geprueft="j"/>
</Artikel_n>
</Charge>
</Protokoll>
Hier das zugehörige XSL-Stylesheet :
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2005/02/xpath-functions" xmlns:xdt="http://www.w3.org/2005/02/xpath-datatypes">
<xsl:template match="/">
<html>
<body>
xsl:apply-templates/
</body>
</html>
<style type="text/css">
#leftright {
border-width:3px;
border-left-style:solid;
border-right-style:solid;
border-color:black;
padding:1.5em;
}
}
#ltop {
border-width:3px;
border-top-style:solid;
border-color:black;
padding:1.5em;
}
</style>
</xsl:template>
<xsl:template match="Lieferant">
<div id="leftright" style=" border-top-style:solid;" align="left">
<table class="table" border="0" cellspacing="10" cellpadding="0">
<h2><u>Protokoll</u></h2>
<tr align="left">
<th width="200">Lieferant </th>
<td width="200"><xsl:value-of select="@Name"/> </td>
</tr>
<!--> Kann man Charge Knoten anders hier einfügen ??? <!-->
<tr>
<xsl:apply-templates select="Charge"/>
</tr>
</table>
</div>
</xsl:template>
xsl:template match="Charge"
<div id="leftright" style=" border-bottom-style:solid" align="left">
<table border="0" cellspacing="0" cellpadding="3">
<tr align="left">
<th width="200">EntladeBediener</th>
<td width="200"><xsl:value-of select="@EntladeBediener"/></td>
</tr>
<tr align="left">
<th width="200">Artikel-Nr</th>
<td width="200"><xsl:value-of select="Artikel_n/Artikel/@ArtikelNrTxt"/></td>
</tr>
<tr align="left">
<th width="200">Dauer</th>
<td width="200"><xsl:value-of select="@Dauer"/></td>
</tr>
<tr align="left">
<th width="200">Chargen-Nr.</th>
<td width="200"><xsl:value-of select="@ChargeNr"/></td>
</tr>
<tr align="left">
<th width="200">Warentraeger-Nr</th>
<td width="200"><xsl:value-of select="@WarentraegerNr"/></td>
</tr>
</table>
</div>
</xsl:template>
</xsl:stylesheet>