Hallo Community,
ich habe folgendes Problem.
Ich bin gerade dabei, eine Darstellung von XML Daten unter Berücksichtigung von CSS zu erstellen. Konkret bedeutet das, dass ich eine *.dtd und eine *.xml gegeben hatte und dafür die entsprechenden *.xsl und *.css Datei erstellt habe.
Nun stehe ich vor einem (bis jetzt nicht lösbarem) Problem:
----------------------------------------------------------------
<?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="/">
<html>
<head>
<title>bugZilla Fehleranalyse</title>
<link rel="stylesheet" href="basic.css" type="text/css" media="screen, projection"/>
</head>
<body>
<div id="container">
<!-- Container header-->
<!-- Anfang header-->
<div id="header">
<h1>.:. bugZilla fehleranalyse .:.</h1>
</div>
<div id="conlinks">Content Links</div>
<div id="conrechts">Content Rechts</div>
<div id="conmain">Content Main</div>
</div>
</body>
</html>
</xsl:template>
-----------------------------------------------------------------
Das hier ist die XSL-Datei, die erstellt wurde. Jetzt wollte ich, eine Ausgabe der einzelnen XML-Daten innerhalb der dafür vorgesehen div-Container hervorrufen.
Aus Tutorials etc. heraus dachte ich eigentlich, dass eine Programmierung wie folgt aussehen könnte:
<div id="conlinks"> Die XML-Daten sind: <xsl:template match="xmldaten"> <xsl:value-of select="." /> </xsl:template> </div>
Als Ausgabe erwartete ich dann eigentlich:
" Die XML-Daten sind: "->xmldaten" "
Als Fehlermeldung gab er mir dann "Das Schlüsselwort xsl:template kann hier nicht verwendet werden."
Ich probierte dann weiter alle mir ersichtlichen Möglichkeiten aus, bekam aber entweder weitere Fehler oder keinen Fehler aber auch keine Ausgabe.
Was mir aber Kopfschmerzen bereitet hat ist, dass wenn ich nur "<xsl:apply-templates />" egal an welcher Stelle des XSL-Dokumentes eingebe er mir die kompletten XML-Daten als Ausgabe gibt. Logischerweise ohne formatierung und hintereinander aufgelistet, aber er gibt mir eine Ausgabe. Ich kann die Daten auch unstrukturiert in jeden der Container ausgeben lassen (also conlinks, conrechts und conmain) aber ich bekomme keine einzelne XML-Datenausgabe hin. Mein eigentliches Ziel war, den verschiedenen Container unterschiedliche XML-Daten zuzuweisen, um sie optisch schön und geordnet wiederzugeben.
Ich bin eigtl mit meinem Latein am Ende. Evtl besteht das Problem darin, dass man CSS nicht mit XML / XSL in dieser Form verbinden kann, doch frage ich mich dann, warum er mir die Daten durch <xsl:apply templates> wiedergibt, aber nicht durch <xsl:value-of select...>.
Über Hilfe wäre ich überglücklich, damit ich das Projekt zur Zufriedenheit meiner Arbeitgeber zu Ende bringen kann.
Ich danke im Vorraus und bin zuversichtlich über eine (hoffentlich) simple und schnelle Lösung!
Mit freundlichen Grüßen,
Andrej G.