# XML zu XSL konvertieren, wie vorgehen?



## TheDirtyClown (6. Mai 2015)

Guten Morgen,

ich habe eine XML aus einem Datenbankeintrag generiert, und nun wollte ich es am Ende in eine PDF konvertieren. Darüber habe ich mich ein wenig schlau gemacht und habe rausgefunden, dass ich die XML-Datei nun in ein XSL und dann mit Hilfe von FOP in eine PDF generieren kann. 

Nun wollte ich fragen, ob ihr es genauso machen würdet, oder ob es noch einen einfacheren Weg gibt, den man anwenden könnte?

Liebe Grüße,

TheDirtyClown


----------



## Harry Kane (7. Mai 2015)

Du kannst die Informationen aus der Datenbank auch direkt in eine Java-Objektstruktur packen und dann mit itext direkt dein PDF erzeugen.


----------



## Dompteur (7. Mai 2015)

Wenn du mit FOP arbeitest, dann wandelst du das XML nicht in eine XSLT Datei um. Du erstellst vielmehr zu einem XML-Schema eine XSLT Datei. Die XML Datei enthält deine Daten und die XSLT Datei die Formatierungsinformationen.

Deine XSLT Datei erstellst du also nur einmal und kannst damit immer wieder Dokument mit gleich strukturierten XML Dateien erstellen.

Der Ablauf sieht also so aus (Quelle: XML.com)

```
XML      ->   XSLT     ->   XSL-FO   ->    XSL-FO  printable 
document      engine        document       formatter document
               ^
               |
           XSLT stylesheet
```


----------



## TheDirtyClown (18. Mai 2015)

Danke Dompteur. Dein Beitrag hat mir geholfen!  Ich hatte es wohl falsch verstanden. 

Kann man das XSLT irgendwie kontrollieren und ansehen? Also ich erstelle ja einen Stylesheet. Beim CSS kann ich ja einfach mit Hilfe der PHP oder HTML-Datei einfach "kontrollieren", indem ich mir immer wieder die veränderte Datei ansehe. Kann ich das auch mit der XML-Datei machen, wenn ich die beispielsweise im Browser öffne? 

Ich bin nämlich gerade am Rumprobieren mit XSLT und mir wird einfach nur eine weiße Seite angezeigt, daher gehe ich davon aus, dass schon mal die Verlinkung funktioniert. Jedoch wenn ich, keine Ahnung, "background-color" als Style hinzufüge kommt keine Veränderung.

Ich danke schon Mal


----------

