Konrad Rudolph: [APP] XSL-Transformator gesucht!

Hallo,

kennt vielleicht jemand von euch einen XSL-Transformator, der als Input lediglich eine XML-Datei nimmt und daraus eine XML-Ausgabe erzeugt, basierend auf dem im XML-Input definierten XSL?

Mir geht es besonders darum, daß man das XSL nicht extra anzugeben braucht und daß die Angabe xsl:output im XSLT interpretiert wird!

Wenn die letzten beiden Bedingungen nicht wären, würde ich einfach VS.NET nehmen oder mir gar die Transform-Ausgabe des MSIE kopieren.

PS: das ganze kann auch zur Not eine Programmierlösung sein (solange es kein Java ist), mit VB(.NET), C# und PHP habe ich es jedoch noch nicht hinbekommen (da greifen die Restriktionen). Perl vielleicht?

Gruß,
KonRad -

--
"Was Gott zusammengeführt hat ..." :: polithink.org -
the politicultural e-zine :: http://www.polithink.org
  1. Hallo,

    kennt vielleicht jemand von euch einen XSL-Transformator, der als Input lediglich eine XML-Datei nimmt und daraus eine XML-Ausgabe erzeugt, basierend auf dem im XML-Input definierten XSL?

    Mit Instant Saxon [http://saxon.sourceforge.net/] ist das einfach machbar, sofern eine Java VM vorhanden ist:

    saxon -a -o ausgabe.xyz eingabe.xml
    oder
    saxon -a eingabe.xml > ausgabe.xyz

    Der Parameter -a bewirkt das Gewuenschte. saxon7.jar kennt diesen Parameter ebenfalls.

    MfG, Thomas

    --
    SVG - Learning By Coding
    http://svglbc.datenverdrahten.de/
    1. Mit Instant Saxon [http://saxon.sourceforge.net/] ist das einfach machbar, sofern eine Java VM vorhanden ist:

      warg! Java.

      Na, egal, einem geschenken Gaul schaut man nicht ins Maul. Ich bedanke mich recht herzlich und schaue mir das mal an!

      Gruß,
      KonRad -

      --
      "Was Gott zusammengeführt hat ..." :: polithink.org -
      the politicultural e-zine :: http://www.polithink.org
      1. Hallo,

        Mit Instant Saxon [http://saxon.sourceforge.net/] ist das einfach machbar, sofern eine Java VM vorhanden ist:

        warg! Java.

        Instant Saxon ist eine performante EXE-Konsolenanwendung -- mit dem Java-Unterbau kommt man nicht in Beruehrung.

        Mein Favorit ist das Schweizer Messer fuer XML, aka "XMLStarlet" [http://xmlstar.sourceforge.net], welches XSLT in dieser Weise unterstuetzt:

        xml tr bla.xsl blub.xml > ausgabe.xyz

        Es gibt aber (offenbar) leider keine Option, die "-a" von Saxon entspricht ...

        MfG, Thomas

        --
        SVG - Learning By Coding
        http://svglbc.datenverdrahten.de/
        1. Hallo,

          Mit Instant Saxon [http://saxon.sourceforge.net/] ist das einfach machbar, sofern eine Java VM vorhanden ist:

          warg! Java.

          Instant Saxon ist eine performante EXE-Konsolenanwendung -- mit dem Java-Unterbau kommt man nicht in Beruehrung.

          Ich habe bei Java immer ein wenig Angst, weil die VM mit meinem System auf Kriegsfuß zu stehen scheint: es läuft nicht nur unperformant, sondern zieht das ganze System mit und hat mich schon mehrmals zum Hardreset gezwungen.

          Na, hier läuft es jedenfalls 1a.
          Jetzt schaue ich nur noch, wie man einige Störfaktoren wegbekommt -- namentlich die Indentation auf 4 statt 3 setzen, bei <a>-Tags das störende _shape="rect"_ wegbekommen etc.

          Mein Favorit ist das Schweizer Messer fuer XML, aka "XMLStarlet" [http://xmlstar.sourceforge.net], welches XSLT in dieser Weise unterstuetzt:

          xml tr bla.xsl blub.xml > ausgabe.xyz

          Es gibt aber (offenbar) leider keine Option, die "-a" von Saxon entspricht ...

          schaue ich mir trotzdem mal an, manchmal muß man eben Kompromisse eingehen -- obwohl ich denke, Instant Saxon ist schon klasse, da kann man zur Not ein wenig mit einem handgeschrieben Parser oder RegExps nachbearbeiten.

          Gruß,
          KonRad -

          --
          "Was Gott zusammengeführt hat ..." :: polithink.org -
          the politicultural e-zine :: http://www.polithink.org
  2. Hi,

    kennt vielleicht jemand von euch einen XSL-Transformator, der als Input lediglich eine XML-Datei nimmt und daraus eine XML-Ausgabe erzeugt, basierend auf dem im XML-Input definierten XSL?

    Für Windows gibt es auch noch msxsl, da kann man per Parameter (-pi) einstellen, daß das Stylesheet aus der Processing Instruction geholt wird.

    Kostenlos bei microsoft zu bekommen.
    Setzt aber installiertes msxml (gleiche Quelle, gleicher Preis) voraus - ist zwar mit dem IE normalerweise auf dem System, aber in einer nicht allzu aktuellen Version.
    (einfach bei Microsoft nach msxml bzw. msxsl suchen)

    Das ist das Teil, das ich benutze - geht wesentlich schneller, weil nicht erst die umfangreiche VM gestartet werden muß...

    cu,
    Andreas

    --
    MudGuard? Siehe http://www.mud-guard.de/
    1. Für Windows gibt es auch noch msxsl, da kann man per Parameter (-pi) einstellen, daß das Stylesheet aus der Processing Instruction geholt wird.

      hmm, danke für den Tip -- gleich runtergeladen.
      Nur leider sagt der Setup nicht wirklich, was er macht, mit dem Ergebnis, daß die exe irgendwie im Nirvana verschwindet -- zumindest findet sie die Suche nicht.
      Na, ich schau noch mal.

      Gruß,
      KonRad -

      --
      "Was Gott zusammengeführt hat ..." :: polithink.org -
      the politicultural e-zine :: http://www.polithink.org
      1. Hi,

        Für Windows gibt es auch noch msxsl, da kann man per Parameter (-pi) einstellen, daß das Stylesheet aus der Processing Instruction geholt wird.

        hmm, danke für den Tip -- gleich runtergeladen.
        Nur leider sagt der Setup nicht wirklich, was er macht, mit dem Ergebnis, daß die exe irgendwie im Nirvana verschwindet -- zumindest findet sie die Suche nicht.

        Du solltest jetzt eine msxsl.exe haben.
        Soweit ich mich erinnere, ist das doch höchstens ein zu entpackendes zip-File gewesen (fürs msxsl - das msxml ist ein msi gewesen IIRC).

        Die msxsl.exe kannst Du an beliebige Stelle verschieben - am Besten in ein Verzeichnis, das sich im PATH befindet...

        cu,
        Andreas

        --
        MudGuard? Siehe http://www.mud-guard.de/
        1. Du solltest jetzt eine msxsl.exe haben.
          Soweit ich mich erinnere, ist das doch höchstens ein zu entpackendes zip-File gewesen (fürs msxsl - das msxml ist ein msi gewesen IIRC).

          LOL, ich hatte aus Versehen nicht msxsl runtergeladen, sondern das msxml-Package (das ich schon hatte) ... autsch!

          Gruß,
          KonRad -

          --
          "Was Gott zusammengeführt hat ..." :: polithink.org -
          the politicultural e-zine :: http://www.polithink.org
          1. Hi,

            Du solltest jetzt eine msxsl.exe haben.
            Soweit ich mich erinnere, ist das doch höchstens ein zu entpackendes zip-File gewesen (fürs msxsl - das msxml ist ein msi gewesen IIRC).

            LOL, ich hatte aus Versehen nicht msxsl runtergeladen, sondern das msxml-Package (das ich schon hatte) ... autsch!

            Das macht nichts, denn das ist sowieso notwendig - in einer einigermaßen aktuellen Version. Und jetzt hast Du die neueste...

            cu,
            Andreas

            --
            MudGuard? Siehe http://www.mud-guard.de/
      2. Hallo,

        hmm, danke für den Tip -- gleich runtergeladen.
        Nur leider sagt der Setup nicht wirklich, was er macht, mit dem Ergebnis, daß die exe irgendwie im Nirvana verschwindet -- zumindest findet sie die Suche nicht.

        Suche unter http://www.microsoft.com/downloads/search.aspx?displaylang=en nach msxsl.exe und es erscheint ein weiter fuehrender Link.

        MfG, Thomas

        --
        SVG - Learning By Coding
        http://svglbc.datenverdrahten.de/