Einzelnen Beitrag anzeigen

Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#6

Re: Stylesheet für XML Datei

  Alt 13. Apr 2006, 15:29
Aha. Ich habe es jetzt mal selber versucht an Hand diser XML Datei:
XML-Code:
<?xml-stylesheet href="appdata/LogFile.xsl" type="text/xsl"?>
<log>
  <Start TS="2006-04-13">LogFile</Start>
  <Info TS="2006-04-13 14:59:13:546">Anzahl kopierter Dateien: 15</Info>
  <Info TS="2006-04-13 14:59:13:546">zu verarbeitende Spooldateien: 15</Info>
  <Info TS="2006-04-13 14:59:13:562">aktuelle Spooldatei: D:\Projekte Datawerk\PMD\Cold\bin\work\01.txt</Info>
  <Task TS="2006-04-13 14:59:13:593">Erstelle Importdokument D:\Projekte Datawerk\PMD\Cold\bin\work\import\01_000.txt</Task>
  <Task TS="2006-04-13 14:59:13:625">Erstelle Importdokument D:\Projekte Datawerk\PMD\Cold\bin\work\import\01_001.txt</Task>
  <Task TS="2006-04-13 14:59:13:640">Erstelle Importdokument D:\Projekte Datawerk\PMD\Cold\bin\work\import\01_002.txt</Task>
  <Info TS="2006-04-13 14:59:13:671">Spooldatei 01.txt gelöscht</Info>
  <Info TS="2006-04-13 14:59:13:687">aktuelle Spooldatei: D:\Projekte Datawerk\PMD\Cold\bin\work\02.txt</Info>
  <Task TS="2006-04-13 14:59:13:703">Erstelle Importdokument D:\Projekte Datawerk\PMD\Cold\bin\work\import\02_000.txt</Task>
  <Task TS="2006-04-13 14:59:13:734">Erstelle Importdokument D:\Projekte Datawerk\PMD\Cold\bin\work\import\02_001.txt</Task>
  <Task TS="2006-04-13 14:59:13:750">Erstelle Importdokument D:\Projekte Datawerk\PMD\Cold\bin\work\import\02_002.txt</Task>
  <Info TS="2006-04-13 14:59:13:781">Spooldatei 02.txt gelöscht</Info>
  <Info TS="2006-04-13 14:59:13:796">aktuelle Spooldatei: D:\Projekte Datawerk\PMD\Cold\bin\work\03.txt</Info>
  <Task TS="2006-04-13 14:59:13:828">Erstelle Importdokument D:\Projekte Datawerk\PMD\Cold\bin\work\import\03_000.txt</Task>
  <Task TS="2006-04-13 14:59:13:843">Erstelle Importdokument D:\Projekte Datawerk\PMD\Cold\bin\work\import\03_001.txt</Task>
  <Task TS="2006-04-13 14:59:13:875">Erstelle Importdokument D:\Projekte Datawerk\PMD\Cold\bin\work\import\03_002.txt</Task>
  <Info TS="2006-04-13 14:59:13:890">Spooldatei 03.txt gelöscht</Info>
  <Info TS="2006-04-13 14:59:14:234">aktuelle Spooldatei: D:\Projekte Datawerk\PMD\Cold\bin\work\08.txt</Info>
  <Task TS="2006-04-13 14:59:14:265">Erstelle Importdokument D:\Projekte Datawerk\PMD\Cold\bin\work\import\08_000.txt</Task>
  <Task TS="2006-04-13 14:59:14:281">Erstelle Importdokument D:\Projekte Datawerk\PMD\Cold\bin\work\import\08_001.txt</Task>
  <Task TS="2006-04-13 14:59:14:312">Erstelle Importdokument D:\Projekte Datawerk\PMD\Cold\bin\work\import\08_002.txt</Task>
  <Info TS="2006-04-13 14:59:14:328">Spooldatei 08.txt gelöscht</Info>
  <Info TS="2006-04-13 14:59:14:343">aktuelle Spooldatei: D:\Projekte Datawerk\PMD\Cold\bin\work\09.txt</Info>
  <Task TS="2006-04-13 14:59:14:390">Erstelle Importdokument D:\Projekte Datawerk\PMD\Cold\bin\work\import\09_000.txt</Task>
  <Task TS="2006-04-13 14:59:14:421">Erstelle Importdokument D:\Projekte Datawerk\PMD\Cold\bin\work\import\09_001.txt</Task>
  <Task TS="2006-04-13 14:59:14:453">Erstelle Importdokument D:\Projekte Datawerk\PMD\Cold\bin\work\import\09_002.txt</Task>
  <Info TS="2006-04-13 14:59:14:468">Spooldatei 09.txt gelöscht</Info>
  <Info TS="2006-04-13 14:59:14:484">aktuelle Spooldatei: D:\Projekte Datawerk\PMD\Cold\bin\work\10.txt</Info>
  <Task TS="2006-04-13 14:59:14:515">Erstelle Importdokument D:\Projekte Datawerk\PMD\Cold\bin\work\import\10_000.txt</Task>
  <Task TS="2006-04-13 14:59:14:546">Erstelle Importdokument D:\Projekte Datawerk\PMD\Cold\bin\work\import\10_001.txt</Task>
  <Task TS="2006-04-13 14:59:14:562">Erstelle Importdokument D:\Projekte Datawerk\PMD\Cold\bin\work\import\10_002.txt</Task>
  <Info TS="2006-04-13 14:59:14:593">Spooldatei 10.txt gelöscht</Info>
  <Ende TS="2006-04-13 14:59:17:250">LogDatei wurde geschlossen.</Ende>
</log>
Code:
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">

<xsl:template match="log">
  <html>
  <head>
     <title>LogFile</title>
     <link rel="stylesheet" type="text/css" href="appdata/stylesheet.css"/>
  </head>
  <body>
    <div>
     <h1>LogFile</h1>
     <hr/>
       <xsl:apply-templates />
       


      <hr/>
    </div>
  </body>
  </html>
</xsl:template>

<xsl:template match="Info">
      <xsl:name>


      <xsl:apply-templates/>
</xsl:template>

<!-- <xsl:template match="ziel">
   <tr><td><xsl:value-of select="@kennung"/></td><td><xsl:apply-templates/></td></tr>
</xsl:template> -->

</xsl:stylesheet>
aber da sagt er mir schon gleich am Anfang:
Zitat:
Das Endtag 'xsl:template' stimmt nicht mit dem Starttag 'xsl:name' überein. Fehler beim Bearbeiten der Ressource 'file:///D...

</xsl:template>
--^
Es soll nachher eine Tabelle geben mit den Spalten:
Kategorie, Timestamp, Text
Wobei Kategorie der Name des Elemetes ist, Timestamp das Attribut und Text der Inhalt des Elemetes. Es wäre dann noch schön, wenn man die Spalten entsprechend Färben könnte: Kategorie Info schwarz, Kategorie task blau und Kategorie Error rot oder so.

So:
Code:
<xsl:template match="log">
  <html>
  <head>
     <title>LogFile</title>
     <link rel="stylesheet" type="text/css" href="appdata/stylesheet.css"/>
  </head>
  <body>
     <h1>LogFile</h1>
     <hr/>
       <table>
         <tr><th>Kategorie</th><th>Zeitstempel</th><th>Text</th></tr>
         <tr>
         <xsl:apply-templates />
         </tr>
       </table>
       


      <hr/>
  </body>
  </html>
</xsl:template>

<xsl:template match="Info">
      <td></td><td><xsl:value-of select="@TS"/></td><td></td>
      <xsl:apply-templates />
</xsl:template>

<xsl:template match="Task">
      <td></td><td><xsl:value-of select="@TS"/></td><td></td>
      <xsl:apply-templates />
</xsl:template>

<xsl:template match="Error">
      <td></td><td><xsl:value-of select="@TS"/></td><td></td>
      <xsl:apply-templates />
</xsl:template>
Gibt er mir immer nur den Wert der Eloemete aus, von der Tabelle ist aber nichts zu sehen.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat