kills Geschrieben 28. Januar 2005 Geschrieben 28. Januar 2005 Hallo zusammen, ich hab ein paar Fragen zu XSLT, da ich mir das ma anschauen möchte. 1) Kann ich z.b. mit dem im IE internen XSLT Parser ein XML ins CSV Format umformen und das ergebnis direkt in einer Datei speichern, ohne den IE zu öffnen? Wenn nicht, mit welchem kostenlosen parser kann ich dies tun? 2) Hat jemand zum Thema nützliche Links/Beispiele? 3) Gibts da ne Online doku zu den funktionen etc. die man dazu verwenden kann? 4) Was ist der Unterschied zwischen XSL und XSLT Ich hab im Google noch nicht geschaut, da ich leider noch keine Zeit dazu hatte und auch heute nicht mehr haben werde. Danke im Vorraus und viele Grüße, Markus
tobias-digital Geschrieben 28. Januar 2005 Geschrieben 28. Januar 2005 1) Kann ich z.b. mit dem im IE internen XSLT Parser ein XML ins CSV Format umformen und das ergebnis direkt in einer Datei speichern, ohne den IE zu öffnen? Wenn nicht, mit welchem kostenlosen parser kann ich dies tun? Kann ich dir nicht sicher beantworten, denke aber, dass das eher nicht geht, da man mit XSLT XML-Dateien nur in eine andere XML-Form bringen kann. CSV besitzt bekannterweise keine XML-Form. 4) Was ist der Unterschied zwischen XSL und XSLT Naja, XSL = Extensible Stylesheet Language XSLT = Extensible Stylesheet Language Transformations XSL ist dazu da, Layouts für XML-Dokumente zu schaffen. Mit XSLT wandelt man einen vorhandenen XML-Baum in eine andere XML-Baumstruktur um. Quelle: http://de.wikipedia.org/wiki/XSL und http://de.wikipedia.org/wiki/XSLT Gruß, Tobias
kills Geschrieben 28. Januar 2005 Autor Geschrieben 28. Januar 2005 also ich hab nun doch mal kurz bei google gestöbert und hab folgendes gefunden: http://www.w3schools.com/xsl/el_output.asp damit müsste sich das meiner Meinung nach bewerkstelligen lassen. Ich versuchs ma.
etreu Geschrieben 28. Januar 2005 Geschrieben 28. Januar 2005 Wieso sollte denn der Output XML sein müssen? Das Prinzip ist es auch recht einfach. 1. Mit VBA kannst du das machen. Ist aber schon verdammt mühsam. 1.-4. steht vieles hier: http://de.wikipedia.org/wiki/XSLT 3. Mir fällt nur das w3c ein. Ich habe dazu ein paar Bücher durchgearbeitet. Am besten fand ich dazu "XML in a Nutshell". Für die Grundlagen kannst mal unter selfxml nachschauen oder unter w3schools .
kills Geschrieben 31. Januar 2005 Autor Geschrieben 31. Januar 2005 Hallo zusammen, ich habe mitlerweile folgende ansätze: XSL: <?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="text" encoding="UTF-8"/> <xsl:template match="/startreport"> <xsl:apply-templates/> </xsl:template> <xsl:template match="section"> <xsl:apply-templates/> </xsl:template> <xsl:template match="multidata"> <xsl:apply-templates/> </xsl:template> <xsl:template match="data"> <xsl:value-of select="name"/> <xsl:text>;</xsl:text> <xsl:value-of select="value"/> <xsl:text>; </xsl:text> </xsl:template> </xsl:stylesheet> XML: <?xml version="1.0" encoding="ISO-8859-1"?> <?xml-stylesheet type="text/xsl" href="../xslt/logInvoicing.xslt"?> <startreport> <section> <multidata> <data> <name>name1212121</name> <value>wert1</value> </data> <data> <name>name2</name> <value>wert2</value> </data> </multidata> <multidata> <data> <name>name1</name> <value>wert1</value> </data> <data> <name>name2</name> <value>wert2</value> </data> </multidata> </section> </startreport> das ganze mit XALAN geparst ergibt: name1212121;wert1; name2;wert2; name1;wert1; name2;wert2; Woher kommt die einrückung im result-file? Woher kommen die Leerzeilen? Ziel ist es keine einrückungen zu haben, aber das ganze soll schon mit zeilenumbruch passieren, aber nur mit einem! Danke im vorraus, Gruß Markus
etreu Geschrieben 31. Januar 2005 Geschrieben 31. Januar 2005 Probier mal xsl:strip-space aus. Die Tabs vor den Daten kommen mit ziemlicher Sicherheit von deinen Einrückungen, entweder im Stylesheet oder in der XML-Datei.
kills Geschrieben 31. Januar 2005 Autor Geschrieben 31. Januar 2005 Probier mal xsl:strip-space aus. Die Tabs vor den Daten kommen mit ziemlicher Sicherheit von deinen Einrückungen, entweder im Stylesheet oder in der XML-Datei. Hi Enrico, also anscheinend kommen die whitespaces aus der XML datei. Aber warum berücksichtigt mein XSL diese Leerzeichen? Diese sind doch vor den Tags... Gruß, Markus
etreu Geschrieben 31. Januar 2005 Geschrieben 31. Januar 2005 Es gibt einige Attribute im xsl:stylesheet-Element die das glaube ich verhindern könnnen. Ich schlage nachher mal in meinem schlauen Buch nach.
etreu Geschrieben 31. Januar 2005 Geschrieben 31. Januar 2005 So da bin ich. Probier mal: <xsl:output method="text" encoding="UTF-8" indent="no" media-type="text/plain" /> Hast du schon herausgefunden, woher die Leerzeilen kommen?
kills Geschrieben 2. Februar 2005 Autor Geschrieben 2. Februar 2005 So da bin ich. Probier mal: <xsl:output method="text" encoding="UTF-8" indent="no" media-type="text/plain" /> ich versuchs ma danke Hast du schon herausgefunden, woher die Leerzeilen kommen? also anscheinend kommen die whitespaces aus der XML datei. Aber warum berücksichtigt mein XSL diese Leerzeichen? Diese sind doch vor den Tags... Danke und Gruß, Markus
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden