Andreas: Suche bestimmte XSL-Transformation

Hallo,

Ich soll per Java eine XML-Datei mit einer XSLT transformieren. Ich glaube, dass ich das im Java-Code auch hinbekomme, nur habe ich praktisch keine Ahnung von XSLT.

Da ich aber trotzdem mit dem Programmieren anfangen will, brauche ich eine XSLT zum Testen meines Programms.

Meine Idee: Gibt es eine XSLT-Datei, die im Prinzip nichts macht, die also die Eigenschaften einer XML-Datei unverändert lässt, sodass die Eingabe-XML gleich der Ausgabe-XML ist? Dann hätte ich eine brauchbare XSLT, die für alle XML-Dateien funktioniert, die halt nix macht. Mit ihr könnte ich dann anfangen mein Programm zu schreiben (der Typ, der für die XSLT verantwortlich ist kommt nicht in die Pötte und ich will trotzdem loslegen).

Falls es da einen "Dreizeiler" gibt, der sowas macht, würde ich mich über einen Hinweis freuen.

Andreas

  1. Hi!

    Meine Idee: Gibt es eine XSLT-Datei, die im Prinzip nichts macht, die also die Eigenschaften einer XML-Datei unverändert lässt, sodass die Eingabe-XML gleich der Ausgabe-XML ist? Dann hätte ich eine brauchbare XSLT, die für alle XML-Dateien funktioniert, die halt nix macht. Mit ihr könnte ich dann anfangen mein Programm zu schreiben (der Typ, der für die XSLT verantwortlich ist kommt nicht in die Pötte und ich will trotzdem loslegen).

    Folgendes XSLT-Stylesheet macht nicht recht viel mehr, als den Inhalt all deiner XML-Elemente auszugeben, sodass es generell auf jedes wohlgeformte XML-Dokument losgelassen werden kann:

      
    <?xml version="1.0" encoding="utf-8"?>  
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">  
      
        <xsl:template match="/">  
            <xsl:apply-templates/>  
        </xsl:template>  
      
    </xsl:stylesheet>  
    
    

    Grüße,
    Fabian St.

    1. Schon wieder Du? Du hast mir doch gestern schon so geholfen. Tausend Dank! Langsam hast Du ja was bei mir gut.

      Grüße aus Wien
      Andreas

      1. Ich habe es jetzt testen können. Mein Programm funktioniert. Leider Deine XSLT nicht. Sie entfernt offenbar alle spitzen Klammern der Elemente.

        1. Hi!

          Ich habe es jetzt testen können. Mein Programm funktioniert. Leider Deine XSLT nicht. Sie entfernt offenbar alle spitzen Klammern der Elemente.

          Warum soll die nicht funktionieren? Sie macht genau das, was ich in meinem Ausgangsposting geschrieben habe: Nach der Transformation bleibt der ganze Text zwischen den Elementen übrig.
          Beipiel:

            
          <?xml version="1.0" encoding="UTF-8" standalone="no"?>  
          <?xml-stylesheet type="text/xsl" href="test.xsl"?>  
          <mitarbeiter>  
              <vorname>Fabian</vorname>  
              <nachname>Steiner</nachname>  
              <alter>16</alter>  
              <wohnort>  
                  <strasse>XXXXX</strasse>  
                  <plz>XXXXX</plz>  
                  <ort>Übersee</ort>  
               </wohnort>  
          </mitarbeiter>  
          
          

          Dies würde dann folgende Ausgabe erzeugen:

          fabi@jupiter ~/work/xml-sachen [ 23:08:27 ] $ xsltproc mitarbeiter.xml test.xsl

          <?xml version="1.0"?>

          Fabian
              Steiner
              16

          Gassner Feld 14
                  XXXXX
                  XXXXX
          fabi@jupiter ~/work/xml-sachen [ 23:08:27 ] $

          Und genau das war doch die Aufgabenstellung, oder? Ein XSLT-Stylesheet, das sich möglichst auf alle XML-Dokumente anwenden lässt.

          Grüße,
          Fabian St.

          1. Dann hatten wir uns falsch verstanden. Ist aber auch egal. Ich habe ja jetzt eine Datei, die ich für alles zum Testen verwenden kann.

            Ich hatte am Anfang an eine Datei gedacht, die auch die spitzen Klammern beibehält. Ist aber wie gesagt egal. Ich hatte ja jetzt zum Testen eine funktionierende Datei. Dank Dir nochmal!

            Andreas

            1. Hallo,

              Dann hatten wir uns falsch verstanden. Ist aber auch egal. Ich habe ja jetzt eine Datei, die ich für alles zum Testen verwenden kann.

              Ich hatte am Anfang an eine Datei gedacht, die auch die spitzen Klammern beibehält. Ist aber wie gesagt egal. Ich hatte ja jetzt zum Testen eine funktionierende Datei. Dank Dir nochmal!

              <?xml version="1.0"?>
              <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
               <xsl:output method="xml" indent="yes" />
               <xsl:template match="/">
                <xsl:copy-of select="* | @* | text()" />
               </xsl:template>
              </xsl:stylesheet>

              Grüße
              Thomas

              --
              Surftip: kennen Sie schon Pipolino's Clowntheater?
              http://www.clowntheater-pipolino.net/